FSPLIT(1)
NAME
fsplit − split a multi-routine FORTRAN 90 or FORTRAN 77 source file into individual files.
SYNOPSIS
fsplit [ −e efile ] ... [ fsplit_options ] file
DESCRIPTION
fsplit takes as input a file containing FORTRAN 77 or FORTRAN 90 source code. It attempts to split the input into separate routine files of the form <name>.<syf>, where <name> is the name of the program unit (function, subroutine, module, block data or program) and <syf> is extension of name; it corresponds to the source language of source code.
Block data subprograms with no names get names of the form blkdtaNNN.<syf>, where NNN are three digits and a file of this name does not already exist.
Main programs with no names get names of the form mainNNN.<syf>
If there is a trouble in classifying a program unit, or if name.<syf> already exists, the program unit is put in a file of the form zzzNNN.<syf>, where the file zzzNNN.<syf> does not already exist.
OPTIONS
−e efile
Normally, each subprogram unit is split into a separate file. But if e-option is used, then only subprograms named in the e-option are split off.
Example
The command fsplit -e sub1 -e sub2 prog.f
isolates sub1 and sub2 in the files sub1.f and sub2.f only.
−u Default all unit names are converted to lower case. When the u-option is used all units save their own original names.
Example Let the file main.f77 contain:
subroutine SUB1
...
end
subroutine SUB2
...
end
Then the command
fsplit main.f77
will build files named "sub1.f77" and "sub2.f77"
And the command
fsplit -u main.f77
will build files named "SUB1.f77" and "SUB2.f77"
naming-options
As it was noted above fsplit program takes source files containing FORTRAN-77 and FORTRAN-90 code. If naming options are not set (see below), fsplit is guided by the following rules:
- If <syf> is ’.f90’ or ’.F90’ then input file is considered as FORTRAN-90 text in a free form.
- If <syf> is ’.f77’ or ’.F77’ then input file is considered as FORTRAN-77 text.
- If <syf> is other then above-mentioned (for example ’.f’ or ’.for’), then input file is also considered as FORTRAN-77 text.
There are some options for the definition of source language and source form
−f90 fsplit will treat source file as FORTRAN-90.
−fixed
fsplit will treat source file as fixed form. (This option has meaning for fortran-90 text only).
EXAMPLES
1. fsplit -f90 -fixed main1.f
main1.f file will be considered as a file containing FORTRAN-90 text in a fixed form.
2. fsplit -f90 main2.f
main2.f file will be considered as a file containing FORTRAN-90 text in a free form.
3. fsplit -f90 main3.f77
main3.f77 file will be considered as a file containing FORTRAN-90 text in a free form.
DIAGNOSTICS
If names specified via the −e option are not found, a diagnostic is written to standard error.
BUGS
Nonstandard source formats may confuse fsplit.
If source code is not syntactically right program it may confuse fsplit.
It is hard to use −e option for unnamed main programs and block data subprograms since you must predict the created file name.
SunOS 5.0 — Last change: 22 Aug 1997