## 12 Complete Listing of `cflow` Options. ¶

This chapter contains an alphabetical listing of all `cflow` command line options, with brief descriptions and cross references to more in-depth explanations in the body of the manual. Both short and long option forms are listed, so you can use this table as a quick reference.

Most of the options have a negation counterpart, an option with a reverse meaning. The name of a negation option is formed by prefixing the corresponding long option name with a `no-`. This feature is provided to cancel default options specified in the configuration file.

`-A` ¶
`--all`

  Produce graphs for all global functions in the program. Use this option if your program contains functions, which are not directly reachable from `main` (see start symbol). If this option is used twice, graphs for all global functions (whether top-level or not) will be displayed.

`-a` ¶
`--ansi`
`--no-ansi`

  Assume input to be written in ANSI `C`. Currently this means disabling code that parses K&R function declarations. This might speed up the processing in some cases.

`-b` ¶
`--brief`
`--no-brief`

  Brief output. See --brief.

`--cpp[=command]`

  Run the specified preprocessor command. See Running Preprocessor.

`--no-cpp` ¶

  Don’t use preprocessor.

`-D name[=defn]` ¶
`--define=name[=defn]`

  Predefine name as a macro. Implies `--cpp` (see Running Preprocessor).

`-d number` ¶
`--depth=number`

  Set the depth at which the flow graph is cut off. For example, `--depth=5` means the graph will contain function calls up to the 5th nesting level.

`--debug[=number]` ¶

  Set debugging level. The default number is 1. Use this option if you are developing and/or debugging `cflow`.

`--emacs` ¶
`--no-emacs`

  Prepend the output with a line telling Emacs to use `cflow` mode when visiting this file. Implies `--format=gnu`. See --emacs.

`-f name` ¶
`--format=name`

  Use given output format name. Valid names are `gnu` (see GNU Output Format), `posix` (see POSIX Output Format), and `dot` (see DOT output format).

`-?` ¶
`--help`

  Display usage summary with short explanation for each option.

`-I dir` ¶
`--include-dir=dir`

  Add the directory dir to the list of directories to be searched for header files. Implies `--cpp` (see Running Preprocessor).

`-i spec` ¶
`--include=spec`

  Control the number of included symbols. Spec is a string consisting of characters, specifying what class of symbols to include in the output. Valid spec symbols are:

  - (dash) ¶
  ^

    Exclude symbols denoted by the following letters.

  + ¶

    Include symbols denoted by the following letters (default).

  _ (underscore) ¶

    Symbols whose names begin with an underscore.

  s ¶

    Static symbols.

  t ¶

    Typedefs (for cross-references only, see Cross-Reference Output.).

  x ¶

    All data symbols, both external and static.

  For more information, See Controlling Symbol Types.

`-l` ¶

  See --print-level.

`--level-indent=string` ¶

  Use string when indenting to each new level. See Using ASCII Art to Produce Flow Graphs..

`-m name` ¶
`--main=name`
`--start=name`

  Assume main function to be called name. Multiple main function can be specified. See start symbol.

`--no-main` ¶

  Assume there’s no main function in the program. This option has the same effect as `--all`, except that, if the program defines the `main` function, it will be treated as any other functions.

`-n` ¶
`--number`
`--no-number`

  Print line numbers. See --number.

`-o file` ¶
`--output=file`

  Set output file name. Default is ‘`-`’, meaning standard output.

`--omit-arguments` ¶
`--no-omit-arguments`

  Do not print argument lists in function declarations. See omit signature parts.

`--omit-symbol-names` ¶
`--no-omit-symbol-names`

  Do not print symbol names in declarations. See omit signature parts. This option is turned on in ‘`posix`’ output mode (see POSIX Output Format).

`--prepend-path=dir` ¶

  Add dir at the beginning of the profile search path. See profile search path. The argument can be either a single directory name, or a list of directory names separated with colons. This option is processed before any other options and before loading any profiles. It is ignored if used in a profile.

`--profile=name` ¶

  Read options from the `cflow` profile name. The argument is either a name of an existing file, or a base name of the profile. In the latter case, `cflow` will look for file `name.cfo` in the profile search path. See Configuration Files and Variables., for a detailed discussion

  Don’t read the default profile (see default profile). This option is processed before any other options and before loading any profiles. It is ignored if used in a profile.

`-r` ¶
`--reverse`
`--no-reverse`

  Print reverse call graph. See Two Types of Flow Graphs..

`-x` ¶
`--xref`
`--no-xref`

  Produce cross-reference listing only. See Cross-Reference Output..

`-p number` ¶
`--pushdown=number`

  Set initial token stack size to number tokens. Default is 64. The token stack grows automatically when it needs to accommodate more tokens than its current size, so it is seldom necessary to use this option.

`--preprocess[=command]`

  Run the specified preprocessor command. See --cpp.

`-s sym:class` ¶
`--symbol=sym:class`
`--symbol=newsym:=oldsym`

  In the first form, registers symbol sym in the syntactic class class. Valid class names are: ‘`keyword`’ (or ‘`kw`’), ‘`modifier`’, ‘`qualifier`’, ‘`identifier`’, ‘`type`’, ‘`wrapper`’. Any unambiguous abbreviation of the above is also accepted. See Syntactic classes.

  In the second form (with the ‘`:=`’ separator), defines newsym as an alias to oldsym. See Symbol aliases.

  See GCC Initialization, for a practical example of using this option.

`-S` ¶
`--use-indentation`
`--no-use-indentation`

  Use source file indentation as a hint. Currently this means that the closing curly brace (‘`}`’) in the column zero forces `cflow` to close current function definition. Use this option sparingly, it may cause misinterpretation of some sources.

`-U name` ¶
`--undefine=name`

  Cancel any previous definition of name. Implies `--cpp` (see Running Preprocessor).

`-l` ¶
`--print-level`
`--no-print-level`

  Print nesting level along with the call graph. The level is printed after output line number (if `--number` or `--format=posix` is used, enclosed in curly braces.

`-T` ¶
`--tree`
`--no-tree`

  Use ASCII art to print graph. See Using ASCII Art to Produce Flow Graphs..

`--target=sym` ¶

  Show only graphs leading from start symbols to this function. Multiple options are allowed. See start symbol.

`--usage` ¶

  Give a short usage message.

`-v` ¶
`--verbose`
`--no-verbose`

  Verbosely list any errors encountered in the input files. The `cflow` notion of an error does not match that of `C` compiler, so by default error messages are turned off. It is useful to enable them if you suspect that `cflow` misinterprets the sources.

`-V` ¶
`--version`

  Print program version.