autom4te - Generate files and scripts thanks to M4

NAME  SYNOPSIS  DESCRIPTION  Operation modes:  Languages include:  Warning categories include:  Library directories:  Tracing:  Freezing:  FORMAT defaults to ’$f:$l:$n:$%’, and can use the following escapes:  AUTHOR  REPORTING BUGS  COPYRIGHT  SEE ALSO 


autom4te − Generate files and scripts thanks to M4


autom4te [OPTION]... [FILES]


Run GNU M4 on the FILES, avoiding useless runs. Output the traces if tracing, the frozen file if freezing, otherwise the expansion of the FILES.

If some of the FILES are named ’FILE.m4f’ they are considered to be M4 frozen files of all the previous files (which are therefore not loaded). If ’FILE.m4f’ is not found, then ’FILE.m4’ will be used, together with all the previous files.

Some files may be optional, i.e., will only be processed if found in the include path, but then must end in ’.m4?’; the question mark is not part of the actual file name.

Operation modes:

−h, −−help

print this help, then exit

−V, −−version

print version number, then exit

−v, −−verbose

verbosely report processing

−d, −−debug

don’t remove temporary files

−o, −−output=FILE

save output in FILE (defaults to ’−’, stdout)

−f, −−force

don’t rely on cached values

−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


disable the cache

−m, −−mode=OCTAL

change the non trace output file mode (0666)

−M, −−melt

don’t use M4 frozen files

Languages include:


create Autoconf configure scripts


create Autotest test suites


create M4sh shell scripts


create M4sugar output

Warning categories include:


cross compilation issues


GNU coding standards (default in gnu and gnits modes)


obsolete features or constructions (default)


user redefinitions of Automake rules or variables


portability issues (default in gnu and gnits modes)


nested Make variables (default with −Wportability)


extra portability issues related to obscure tools


dubious syntactic constructs (default)


unsupported or incomplete features (default)


all the warnings


turn off warnings in CATEGORY


turn off all the warnings


treat warnings as errors

The environment variables ’M4’ and ’WARNINGS’ are honored.

Library directories:

−B, −−prepend−include=DIR

prepend directory DIR to search path

−I, −−include=DIR

append directory DIR to search path


−t, −−trace=MACRO[:FORMAT]

report the MACRO invocations

−p, −−preselect=MACRO

prepare to trace MACRO in a future run


−F, −−freeze

produce an M4 frozen state file for FILES

FORMAT defaults to ’$f:$l:$n:$%’, and can use the following escapes:


literal $


file where macro was called


line where macro was called


nesting depth of macro call


name of the macro


argument NUM, unquoted and with newlines


all arguments, with newlines, quoted, and separated by SEP


all arguments, with newlines, unquoted, and separated by 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.


Written by Akim Demaille.


Report bugs to <bug−[email protected]>.
GNU Autoconf home page: <>.
General help using GNU software: <>.


Copyright © 2021 Free Software Foundation, Inc. License GPLv3+/Autoconf: GNU GPL version 3 or later <>, <>
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.


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 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.

Updated 2024-01-29 - |