flow man page on DragonFly

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

FLOW(1)								       FLOW(1)

NAME
       flow - show subroutine dependence of Fortran77 programs

SYNOPSIS
       flow  [-hCcFfRSsUVW]  file(s)

DESCRIPTION
       flow  is a utility which shows the SUBROUTINE dependence of a Fortran77
       program. It lists the called routine names  and	indicates  their  CALL
       level by indention.

       CALL  statements	 in  the case of an IF condition are also reported but
       not separately marked.

       By default no warning is given if a called SUBROUTINE is not  found  in
       the  input  files.  This	 gives the possibility to reduce the output by
       omitting some file names including further subroutine-calls.

       In addition a little statistic with the count  of  total,  comment  and
       source-code  lines is presented. Further the number of IF statements is
       also given as the number of declared  SUBROUTINE	 procedures  and  CALL
       sequences.

       There  is  no  limitation  of  the  number of given files. By use of an
       appropriate shell wildcards like * or ?	can be used in the name(s)  of
       the file(s).

OPTIONS
       -h   Print a usage message on standard output and exit.

       -C   Print each CALL statement which is found in input.

       -c   Each  found	 CALL  of  a  SUBROUTINE  is  reported in a file named
	    FLOW.CALL with the name of the file where it was  called  and  the
	    line  number.  The	file FLOW.CALL may be sorted in alphabetically
	    order by the sort command.

       -F   Print the FILE name of input which is actually on work.

       -f   The output of the dependence is written on a file with the name of
	    the program and the ending .FLOW instead of the screen.

       -r <name>
	    Set	 a  new starting point. Instead of starting at the PROGRAM the
	    work is done only for the SUBROUTINE <name>. This option is useful
	    to check all called routines out of this one.

       -R   Omit recursive hanging. Each called SUBROUTINE is printed with all
	    subsequent CALL statements only the first time it is  invoked.  At
	    the	 later	times  only  the  root SUBROUTINE (=starting point) is
	    given.

       -S   Print each SUBROUTINE statement which is found in input.

       -s   Each found declaration of a SUBROUTINE is reported in a file named
	    FLOW.SUBS  with the name of the file where it is declared together
	    with the line number. The file FLOW.SUBS may be sorted  in	alpha‐
	    betically order by the sort command.

       -U   If a SUBROUTINE is called which is not found in the input, a warn‐
	    ing message is given.  Such a case can occur for example by system
	    calls like CALL EXIT

       -V   Print  version number of flow and name of author. Finally the pro‐
	    gram ends.

       -W   A warning is given if a line exceeds a length  of  72  characters.
	    Spaces  at	the  end  of the line are thereby not counted. Comment
	    lines are not controlled.

KNOWN BUGS?
       Recursive hanging is omitted by the option -R  which  has  the  effect,
       that only the first time a called SUBROUTINE is followed up to the last
       CALL.  However if the call starts out of another level of the  program,
       e.g.  an deeper lying SUBROUTINE the consecutively following CALLs will
       not be printed again. This obviously shortens the output and  may  lead
       to some confusion. Be cautious!

       IF ... THEN ... ELSEIF(...)CALL
       statements  are	not considered to appeare in the code. (Is such a con‐
       struction allowed?)

EXAMPLE
       flow -U *.f | less
	    All files with suffix .f of the  current  directory	 are  used  as
	    input.  A  warning message will be given if a subroutine is called
	    which is not part of any  input  file.  The	 output	 is  piped  to
	    less(1) so you can browse up and down through it during it grows.

       flow -V
	    The number of the actual version is printed.

       flow -h
	    You get a little help message.

       flow -s *.f ; sort FLOW.SUBS > SUBS.SORT
	    Each found subroutine in all fortran files of the actual directory
	    is written to the file FLOW.SUBS together with the file  name  and
	    line  number  where	 the  declaration appears. After this the sort
	    Program is called to sort the names of the subroutines  in	alpha‐
	    betically order. The file SUBS.SORT contains the final result.

       flow -scFfUW *.f
	    This  is  maybe the best combination of all Options if the program
	    is spread over several files.

AUTHOR
       Dirk Geschke <geschke@physik.uni-kassel.de>

FUTURE EXTENSIONS
       A formatted output into special file formats like  TeX/LaTeX  or	 Post‐
       script is planned?

SEE ALSO
       bash(1), csh(1), f77(1), ksh(1), less(1), sort(1), tcsh(1)

Flow Version 0.12		 7. March 1997			       FLOW(1)
[top]

List of man pages available for DragonFly

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