packages icon



 M4(1)                          GNU M4 1.4.19                          M4(1)
 User Commands                                                 User Commands

                                  May 2021



 NAME
      m4 - macro processor

 SYNOPSIS
      m4 [,OPTION/]... [,FILE/]...

 DESCRIPTION
      Process macros in FILEs.  If no FILE or if FILE is `-', standard input
      is read.

      Mandatory or optional arguments to long options are mandatory or
      optional for short options too.

    Operation modes:
      --help
           display this help and exit

      --version
           output version information and exit

      -E, --fatal-warnings
           once: warnings become errors, twice: stop execution at first
           error

      -i, --interactive
           unbuffer output, ignore interrupts

      -P, --prefix-builtins
           force a `m4_' prefix to all builtins

      -Q, --quiet, --silent
           suppress some warnings for builtins

      --warn-macro-sequence[=,REGEXP/]
           warn if macro definition matches REGEXP,

           default \$\({[^}]*}\|[0-9][0-9]+\)

      -W, --word-regexp=,REGEXP/
           use REGEXP for macro name syntax

    Preprocessor features:
      -D, --define=NAME[=,VALUE/]
           define NAME as having VALUE, or empty

      -I, --include=,DIRECTORY/
           append DIRECTORY to include path

      -s, --synclines



                                    - 1 -         Formatted:  March 29, 2024






 M4(1)                          GNU M4 1.4.19                          M4(1)
 User Commands                                                 User Commands

                                  May 2021



           generate `#line NUM "FILE"' lines

      -U, --undefine=,NAME/
           undefine NAME

    Limits control:
      -g, --gnu
           override -G to re-enable GNU extensions

      -G, --traditional
           suppress all GNU extensions

      -H, --hashsize=,PRIME/
           set symbol lookup hash table size [509]

      -L, --nesting-limit=,NUMBER/
           change nesting limit, 0 for unlimited [0]

    Frozen state files:
      -F, --freeze-state=,FILE/
           produce a frozen state on FILE at end

      -R, --reload-state=,FILE/
           reload a frozen state from FILE at start

    Debugging:
      -d, --debug[=,FLAGS/]
           set debug level (no FLAGS implies `aeq')

      --debugfile[=,FILE/]
           redirect debug and trace output to FILE (default stderr, discard
           if empty string)

      -l, --arglength=,NUM/
           restrict macro tracing size

      -t, --trace=,NAME/
           trace NAME when it is defined

    FLAGS is any of:
      a    show actual arguments

      c    show before collect, after collect and after call

      e    show expansion

      f    say current input file name

      i    show changes in input files



                                    - 2 -         Formatted:  March 29, 2024






 M4(1)                          GNU M4 1.4.19                          M4(1)
 User Commands                                                 User Commands

                                  May 2021



      l    say current input line number

      p    show results of path searches

      q    quote values as necessary, with a or e flag

      t    trace for all macro calls, not only traceon'ed

      x    add a unique macro call id, useful with c flag

      V    shorthand for all of the above flags

      If defined, the environment variable `M4PATH' is a colon-separated
      list of directories included after any specified by `-I'.

      Exit status is 0 for success, 1 for failure, 63 for frozen file
      version mismatch, or whatever value was passed to the m4exit macro.

 AUTHOR
      Written by Rene' Seindal.

 REPORTING BUGS
      Report bugs to: bug-m4@gnu.org
      GNU M4 home page: <https://www.gnu.org/software/m4/>
      General help using GNU software: <https://www.gnu.org/gethelp/>

 COPYRIGHT
      Copyright c 2021 Free Software Foundation, Inc.  License GPLv3+: GNU
      GPL version 3 or later <https://gnu.org/licenses/gpl.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
      The full documentation for m4 is maintained as a Texinfo manual.  If
      the info and m4 programs are properly installed at your site, the
      command

           info m4

      should give you access to the complete manual.












                                    - 3 -         Formatted:  March 29, 2024