logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

cppo - lightweight cpp-like preprocessor for OCaml

Author

       This  manual page was written by Sylvain Le Gall <gildor@debian.org> and Hendrik Tews <hendrik@askra.de>,
       specifically for the Debian project (and may be used by others).

CPPO                                                June 2013                                            CPPO(1)

Description

cppo is the equivalent of the C preprocessor for OCaml. It permits the definition and expansion of simple
       (in  comparison  with  camlp4) macros and file inclusion.  cppo supports functional macros, conditionals,
       boolean and arithmetic expressions, stringification, and calling different, external preprocessors. For a
       precise description of the features, see /usr/share/doc/cppo/README.gz.

Name

       cppo - lightweight cpp-like preprocessor for OCaml

Options

-DIDENT
              define IDENT-UIDENT
              undefine IDENT-IDIR add DIR to the search path for included files

       -oFILE
              write output to FILE-q     Identify and preserve camlp4 quotations

       -s     Output line directives pointing to the exact source location of each token, including those coming
              from the body of macro definitions. This behavior is off by default.

       -n     Do not output any line directive other than those found in the input (overrides -s).

       -version
              print version and exit

       -xNAME:CMD_TEMPLATE
              Define a custom preprocessor target section starting with:

                     #ext "NAME"

              and ending with:

                     #endext

              NAME must be a lowercase identifier of the form [a-z][A-Za-z0-9_]*

              CMD_TEMPLATE is a command template supporting the following special sequences:

                     %F  file name (unescaped; beware of potential scripting attacks)

                     %B  number of the first line

                     %E  number of the last line

                     %%  a single percent sign

              The filename, the first line number and the  last  line  number  are  available  to  the  external
              preprocessor via the environment variables CPPO_FILE, CPPO_FIRST_LINE, CPPO_LAST_LINE.

              The command is expected to read from stdin and to write to stdout.

       -help|--help
              Display options and exit

See Also

       the cppo web page, http://mjambon.com/cppo.html

       the text manual in /usr/share/doc/cppo/README.gz

Synopsis

cppo [Options...] files...

See Also