cflow man page on YellowDog

Man page or keyword search:  
man Server   18644 pages
apropos Keyword Search (all sections)
Output format
YellowDog logo
[printable version]

CFLOW(P)		   POSIX Programmer's Manual		      CFLOW(P)

NAME
       cflow - generate a C-language flowgraph (DEVELOPMENT)

SYNOPSIS
       cflow [-r][-d num][-D name[=def]] ... [-i incl][-I dir] ...
	      [-U dir] ... file ...

DESCRIPTION
       The  cflow utility shall analyze a collection of object files or assem‐
       bler, C-language, lex, or yacc source files, and	 attempt  to  build  a
       graph, written to standard output, charting the external references.

OPTIONS
       The  cflow  utility  shall  conform  to	the Base Definitions volume of
       IEEE Std 1003.1-2001, Section 12.2, Utility Syntax  Guidelines,	except
       that  the  order	 of the -D, -I, and -U options (which are identical to
       their interpretation by c99) is significant.

       The following options shall be supported:

       -d  num
	      Indicate the depth at which the flowgraph is cut off. The appli‐
	      cation  shall ensure that the argument num is a decimal integer.
	      By default this is a very large number (typically	 greater  than
	      32000).  Attempts	 to  set  the  cut-off depth to a non-positive
	      integer shall be ignored.

       -i  incl
	      Increase the number of included symbols. The  incl  option-argu‐
	      ment is one of the following characters:

       x
	      Include  external	 and static data symbols. The default shall be
	      to include only functions in the flowgraph.

       _
	      (Underscore) Include names that begin with  an  underscore.  The
	      default shall be to exclude these functions (and data if -i x is
	      used).

       -r     Reverse the caller:callee relationship,  producing  an  inverted
	      listing  showing the callers of each function. The listing shall
	      also be sorted in lexicographical order by callee.

OPERANDS
       The following operand is supported:

       file   The pathname of a file for which a graph	is  to	be  generated.
	      Filenames	 suffixed  by .l shall shall be taken to be lex input,
	      .y as yacc input, .c as c99 input, and .i as the output  of  c99
	      -E.  Such files shall be processed as appropriate, determined by
	      their suffix.

       Files suffixed by .s (conventionally assembler source)  may  have  more
       limited information extracted from them.

STDIN
       Not used.

INPUT FILES
       The input files shall be object files or assembler, C-language, lex, or
       yacc source files.

ENVIRONMENT VARIABLES
       The following environment  variables  shall  affect  the	 execution  of
       cflow:

       LANG   Provide  a  default value for the internationalization variables
	      that are unset or null. (See  the	 Base  Definitions  volume  of
	      IEEE Std 1003.1-2001,  Section  8.2,  Internationalization Vari‐
	      ables for the precedence of internationalization variables  used
	      to determine the values of locale categories.)

       LC_ALL If  set  to a non-empty string value, override the values of all
	      the other internationalization variables.

       LC_COLLATE

	      Determine the locale for the ordering of the output when the  -r
	      option is used.

       LC_CTYPE
	      Determine	 the  locale  for  the	interpretation of sequences of
	      bytes of text data as characters (for  example,  single-byte  as
	      opposed to multi-byte characters in arguments and input files).

       LC_MESSAGES
	      Determine	 the  locale  that should be used to affect the format
	      and contents of diagnostic messages written to standard error.

       NLSPATH
	      Determine the location of message catalogs for the processing of
	      LC_MESSAGES .

ASYNCHRONOUS EVENTS
       Default.

STDOUT
       The flowgraph written to standard output shall be formatted as follows:

	      "%d %s:%s\n", <reference number>, <global>, <definition>

       Each  line  of  output  begins with a reference (that is, line) number,
       followed by indentation of at least one column position per level. This
       is  followed  by	 the  name of the global, a colon, and its definition.
       Normally globals are only functions  not	 defined  as  an  external  or
       beginning with an underscore; see the OPTIONS section for the -i inclu‐
       sion option. For information extracted from C-language source, the def‐
       inition	consists of an abstract type declaration (for example, char *)
       and, delimited by angle brackets, the name of the source file  and  the
       line  number where the definition was found. Definitions extracted from
       object files indicate the filename and location counter under which the
       symbol appeared (for example, text).

       Once  a definition of a name has been written, subsequent references to
       that name contain only the reference number of the line where the defi‐
       nition can be found. For undefined references, only "<>" shall be writ‐
       ten.

STDERR
       The standard error shall be used only for diagnostic messages.

OUTPUT FILES
       None.

EXTENDED DESCRIPTION
       None.

EXIT STATUS
       The following exit values shall be returned:

	0     Successful completion.

       >0     An error occurred.

CONSEQUENCES OF ERRORS
       Default.

       The following sections are informative.

APPLICATION USAGE
       Files produced by lex and yacc cause the reordering of line number dec‐
       larations,  and	this can confuse cflow.	 To obtain proper results, the
       input of yacc or lex must be directed to cflow.

EXAMPLES
       Given the following in file.c:

	      int i;
	      int f();
	      int g();
	      int h();
	      int
	      main()
	      {
		  f();
		  g();
		  f();
	      }
	      int
	      f()
	      {
		  i = h();
	      }

       The command:

	      cflow -i x file.c

       produces the output:

	      1 main: int(), <file.c 6>
	      2	   f: int(), <file.c 13>
	      3	       h: <>
	      4	       i: int, <file.c 1>
	      5	   g: <>

RATIONALE
       None.

FUTURE DIRECTIONS
       None.

SEE ALSO
       c99 , lex , yacc

COPYRIGHT
       Portions of this text are reprinted and reproduced in  electronic  form
       from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
       -- Portable Operating System Interface (POSIX),	The  Open  Group  Base
       Specifications  Issue  6,  Copyright  (C) 2001-2003 by the Institute of
       Electrical and Electronics Engineers, Inc and The Open  Group.  In  the
       event of any discrepancy between this version and the original IEEE and
       The Open Group Standard, the original IEEE and The Open Group  Standard
       is  the	referee document. The original Standard can be obtained online
       at http://www.opengroup.org/unix/online.html .

IEEE/The Open Group		     2003			      CFLOW(P)
[top]

List of man pages available for YellowDog

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net