AUTOM4TE(1)
β¨ autom4te β the manual page, bestie edition β¨
okay so real talk: this is the manual page for autom4te, living in the User Commands section of your friendly neighbourhood Unix manual. it's giving "secret engine that makes Autoconf go brrr" and honestly? iconic. let's get into it π
πΈ NAME πΈ
autom4te β generate files and scripts thanks to M4
π¦ SYNOPSIS π¦
autom4te [OPTION]... [FILES]
π DESCRIPTION π
So here's the vibe: autom4te runs GNU M4 on the FILES, but it's smart about it β it avoids useless runs. What it spits out depends on what you asked for:
- if you're tracing, it outputs the traces
- if you're freezing, it outputs the frozen file
- otherwise, it outputs the expansion of the FILES
periodt.
Now, if some of the FILES are named 'FILE.m4f', they get treated as M4 frozen files of all the previous files β which means those previous files are not loaded. Slay, efficiency. BUT: if 'FILE.m4f' is nowhere to be found, then 'FILE.m4' gets used instead, together with all the previous files. bestie always has a backup plan π«Ά
Some files may be optional, i.e., they'll only be processed if they're found in the include path β but they must end in '.m4?'. heads up: the question mark is not part of the actual file name, it's just the little "maybe?" signal π
π Operation modes π
-h,--helpβ print this help, then exit-V,--versionβ print version number, then exit-v,--verboseβ verbosely report processing (she's chatty, we love that)-d,--debugβ don't remove temporary files-o,--output=FILEβ save output in FILE (defaults to'-', aka stdout)-f,--forceβ don't rely on cached values-W,--warnings=CATEGORYβ report the warnings falling in CATEGORY (a comma-separated list is accepted, go off)-l,--language=LANGβ specify the set of M4 macros to use-C,--cache=DIRECTORYβ preserve results for future runs in DIRECTORY--no-cacheβ disable the cache-m,--mode=OCTALβ change the non trace output file mode (0666)-M,--meltβ don't use M4 frozen files
π Languages include: π
'Autoconf'β create Autoconf configure scripts'Autotest'β create Autotest test suites'M4sh'β create M4sh shell scripts'M4sugar'β create M4sugar output
β Warning categories are: β
crossβ cross compilation issuesgnuβ GNU coding standards (default in gnu and gnits modes)obsoleteβ obsolete features or constructions (default)overrideβ user redefinitions of Automake rules or variablesportabilityβ portability issues (default in gnu and gnits modes)portability-recursiveβ nested Make variables (default with-Wportability)extra-portabilityβ extra portability issues related to obscure toolssyntaxβ dubious syntactic constructs (default)unsupportedβ unsupported or incomplete features (default)
π -W also understands: π
allβ turn on all the warningsnoneβ turn off all the warningsno-CATEGORYβ turn off warnings in CATEGORYerrorβ treat all enabled warnings as errors
lowkey important: the environment variables'M4'and'WARNINGS'are honored. don't forget they're lurking in the background bestie π
π§ 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
π Freezing: π
-F,--freezeβ produce an M4 frozen state file for FILES
π₯ FORMAT defaults to '$f:$l:$n:$%', and can use the following escapes: π₯
$$β 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
And what even is SEP, you ask? π«Ά It can be:
- empty β for the default (comma for
@and*, colon for%) - a single character β for that character
{STRING}β to use a string
π AUTHOR π
Written by Akim Demaille.
π REPORTING BUGS π
Report bugs to bug-autoconf@gnu.org, or via Savannah: https://savannah.gnu.org/support/?group=autoconf.
π COPYRIGHT π
Copyright Β© 2026 Free Software Foundation, Inc. License GPLv3+/Autoconf: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>, <https://gnu.org/licenses/exceptions.html>
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
π 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 full documentation for Autoconf is maintained as a Texinfo manual. To read the manual locally, use the command
info autoconf
You can also consult the Web version of the manual at https://gnu.org/software/autoconf/manual/.
and that's the whole page, bestie π«Ά this was GNU Autoconf 2.73, dated March 2026 β no cap, you're now fully autom4te-pilled π β¨
π¦ where this page comes from
- alpine 3.24: autoconf-doc 2.73-r0 Β· GPL-3.0-or-later WITH Autoconf-exception-3.0
- arch rolling: autoconf 2.73-1 Β· GPL2 AND GPL3 AND custom
- nixos 26.05: autoconf 2.73
- nixpkgs unstable: autoconf 2.73
- ubuntu stonking: autoconf 2.73-2 Β· GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms