DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH
 

(m4.info.gz) Platform macros

Info Catalog (m4.info.gz) Shell commands (m4.info.gz) Syscmd
 
 12.1 Determining the platform
 =============================
 
 Sometimes it is desirable for an input file to know which platform `m4'
 is running on.  GNU `m4' provides several macros that are predefined to
 expand to the empty string; checking for their existence will confirm
 platform details.
 
  -- Optional builtin: __gnu__
  -- Optional builtin: __os2__
  -- Optional builtin: os2
  -- Optional builtin: __unix__
  -- Optional builtin: unix
  -- Optional builtin: __windows__
  -- Optional builtin: windows
      Each of these macros is conditionally defined as needed to
      describe the environment of `m4'.  If defined, each macro expands
      to the empty string.
 
    When GNU extensions are in effect (that is, when you did not use the
 `-G' option,  Invoking m4), GNU `m4' will define the macro
 `__gnu__' to expand to the empty string.
 
      __gnu__
      =>
      ifdef(`__gnu__', `Extensions are active')
      =>Extensions are active
 
    On UNIX systems, GNU `m4' will define `__unix__' by default, or
 `unix' when the `-G' option is specified.
 
    On native Windows systems, GNU `m4' will define `__windows__' by
 default, or `windows' when the `-G' option is specified.
 
    On OS/2 systems, GNU `m4' will define `__os2__' by default, or `os2'
 when the `-G' option is specified.
 
    If GNU `m4' does not provide a platform macro for your system,
 please report that as a bug.
 
      define(`provided', `0')
      =>
      ifdef(`__unix__', `define(`provided', incr(provided))')
      =>
      ifdef(`__windows__', `define(`provided', incr(provided))')
      =>
      ifdef(`__os2__', `define(`provided', incr(provided))')
      =>
      provided
      =>1
 
Info Catalog (m4.info.gz) Shell commands (m4.info.gz) Syscmd
automatically generated byinfo2html