Next: , Up: Invoking m4   [Contents][Index]


2.1 Command line options for operation modes

Several options control the overall operation of m4:

--help

Print a help summary on standard output, then immediately exit m4 without reading any input files or performing any other actions.

--version

Print the version number of the program on standard output, then immediately exit m4 without reading any input files or performing any other actions.

-E
--fatal-warnings

Controls the effect of warnings. If unspecified, then execution continues and exit status is unaffected when a warning is printed. If specified exactly once, warnings become fatal; when one is issued, execution continues, but the exit status will be non-zero. If specified multiple times, then execution halts with non-zero status the first time a warning is issued. The introduction of behavior levels is new to M4 1.4.9; for behavior consistent with earlier versions, you should specify -E twice.

-i
--interactive
-e

Makes this invocation of m4 interactive. This means that all output will be unbuffered, and interrupts will be ignored. The spelling -e exists for compatibility with other m4 implementations, and issues a warning because it may be withdrawn in a future version of GNU M4.

-P
--prefix-builtins

Internally modify all builtin macro names so they all start with the prefix ‘m4_’. For example, using this option, one should write ‘m4_define’ instead of ‘define’, and ‘m4___file__’ instead of ‘__file__’. This option has no effect if -R is also specified.

-Q
--quiet
--silent

Suppress warnings, such as missing or superfluous arguments in macro calls, or treating the empty string as zero.

--warn-macro-sequence[=regexp]

Issue a warning if the regular expression regexp has a non-empty match in any macro definition (either by define or pushdef). Empty matches are ignored; therefore, supplying the empty string as regexp disables any warning. If the optional regexp is not supplied, then the default regular expression is ‘\$\({[^}]*}\|[0-9][0-9]+\)’ (a literal ‘$’ followed by multiple digits or by an open brace), since these sequences will change semantics in the default operation of GNU M4 2.0 (due to a change in how more than 9 arguments in a macro definition will be handled, see Arguments). Providing an alternate regular expression can provide a useful reverse lookup feature of finding where a macro is defined to have a given definition.

-W regexp
--word-regexp=regexp

Use regexp as an alternative syntax for macro names. This experimental option will not be present in all GNU m4 implementations (see Changeword).


Next: , Up: Invoking m4   [Contents][Index]