FSPLIT(1)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 blkd‐
taNNN.<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 contain‐
ing 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 '.F' 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.
March 2004 FSPLIT(1)