AUTOM4TE(1)
β¨ AUTOM4TE β¨
okay bestie, welcome to autom4te, a manual page from the GNU Autoconf fam π«Ά. In the official docs it lives under the name AUTOM4TE(1) in the "User Commands" section β but here? It's just us two and a whole lotta M4. Let's go π
πΈ NAME πΈ
autom4te β generate files and scripts thanks to M4 β¨
π¦ SYNOPSIS π¦
autom4te [OPTION]... [FILES]
π DESCRIPTION π
So basically: it runs GNU M4 on the FILES, but it's smart about it and avoids useless runs π (no redundant re-runs here, we don't do that). What comes out depends on what you asked for β it outputs the traces if you're tracing, the frozen file if you're freezing, and otherwise the expansion of the FILES.
If some of the FILES are named FILE.m4f, those are considered to be M4 frozen files of all the previous files (which therefore are not loaded). If FILE.m4f isn't found, then FILE.m4 gets used instead, together with all the previous files. The way it just... handles that for you? Iconic.
Some files may be optional β meaning they'll only be processed if they're found in the include path, but then they must end in .m4? . And no, the question mark is not part of the actual file name, it's a lil wildcard vibe, iykyk π
π Operation modes π
-h,--helpβ print this help, then dip out (exit). βοΈ-V,--versionβ print the version number, then exit.-v,--verboseβ verbosely report processing. Tell me everything, bestie π£οΈ-d,--debugβ don't remove temporary files (so you can go snooping later π).-o,--output=FILEβ save output in FILE (defaults to-, i.e. stdout).-f,--forceβ don't rely on cached values. Fresh start energy π-W,--warnings=CATEGORYβ report the warnings falling in CATEGORY.-l,--language=LANGβ specify the set of M4 macros to use.-C,--cache=DIRECTORYβ preserve results for future runs in DIRECTORY. Save it for later πΎ--no-cacheβ disable the cache. Not today π«-m,--mode=OCTALβ change the non trace output file mode (0666).-M,--meltβ don't use M4 frozen files (melt them away π« ).
π§ Languages include π§
Autoconfβ create Autoconf configure scripts.Autotestβ create Autotest test suites.M4shβ create M4sh shell scripts.M4sugarβ create M4sugar output.
π Warning categories include π
crossβ cross compilation issues.gnuβ GNU coding standards (default in gnu and gnits modes).obsoleteβ obsolete features or constructions.overrideβ user redefinitions of Automake rules or variables.portabilityβ portability issues (default in gnu and gnits modes).syntaxβ dubious syntactic constructs (default).unsupportedβ unsupported or incomplete features (default).allβ all the warnings. all of them. every single one π«no-CATEGORYβ turn off warnings in CATEGORY.noneβ turn off all the warnings.errorβ treat warnings as errors. bestie they're not playing around π
Also: the environment variablesM4andWARNINGSare honored. Respect them, they're the moment π
π Library directories π
-B,--prepend-include=DIRβ prepend directory DIR to search path.-I,--include=DIRβ append directory DIR to search path.
π₯ Tracing π₯
-t,--trace=MACRO[:FORMAT]β report the MACRO invocations.-p,--preselect=MACROβ prepare to trace MACRO in a future run. Foreshadowing β¨
π Freezing π
-F,--freezeβ produce an M4 frozen state file for FILES. βοΈ
FORMAT defaults to $f:$l:$n:$%, and can use the following escapes β memorise these, they're lowkey the whole personality:
$$β literal$$fβ file where macro was called$lβ line where macro was called$dβ nesting depth of macro call$nβ name of the macro$NUMβ argument NUM, unquoted and with newlines$SEP@β all arguments, with newlines, quoted, and separated by SEP$SEP*β all arguments, with newlines, unquoted, and separated by SEP$SEP%β all arguments, without newlines, unquoted, and separated by SEP
SEP can be empty for the default (comma for @ and *, colon for %), a single character for that character, or {STRING} to use a string. Slay π
π AUTHOR π
Written by Akim Demaille. We stan π«Ά
π REPORTING BUGS π
Found a bug? Not on my watch. Report bugs to <bug-autoconf@gnu.org> π§
GNU Autoconf home page: <http://www.gnu.org/software/autoconf/>
General help using GNU software: <http://www.gnu.org/gethelp/>
π COPYRIGHT π
Copyright Β© 2009 Free Software Foundation, Inc.
License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/old-licenses/gpl-2.0.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. fr fr, read that part twice π€
π SEE ALSO π
autoconf(1), automake(1), autoreconf(1), autoupdate(1), autoheader(1), autoscan(1), config.guess(1), config.sub(1), ifnames(1), libtool(1) β the whole friend group π
The full documentation for autom4te is maintained as a Texinfo manual. If the info and autom4te programs are properly installed at your site, the command
info autom4te
should give you access to the complete manual. go read it bestie πβ¨
GNU Autoconf 2.64 Β· July 2009 β mwah, that's the version and the date, and that's a wrap on AUTOM4TE(1) π bye bestie, go freeze some files βοΈπ
π¦ where this page comes from
- debian bookworm: autoconf2.64 2.64+dfsg-1.1
- ubuntu jammy: autoconf2.64 2.64+dfsg-1
- ubuntu noble: autoconf2.64 2.64+dfsg-1.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms