| 1 | .TH F77 1 |
| 2 | .SH NAME |
| 3 | f77 \- Fortran 77 compiler |
| 4 | .SH SYNOPSIS |
| 5 | .B f77 |
| 6 | [ option ] ... file ... |
| 7 | .SH DESCRIPTION |
| 8 | .I F77 |
| 9 | is the UNIX Fortran 77 compiler. |
| 10 | It accepts several types of arguments: |
| 11 | .PP |
| 12 | Arguments whose names end with `.f' are taken to be |
| 13 | Fortran 77 source programs; |
| 14 | they are compiled, and |
| 15 | each object program is left on the file in the current directory |
| 16 | whose name is that of the source with `.o' substituted |
| 17 | for '.f'. |
| 18 | .PP |
| 19 | Arguments whose names end with `.r' or `.e' are taken to be Ratfor or EFL |
| 20 | source programs, respectively; these are first transformed by the |
| 21 | appropriate preprocessor, then compiled by f77. |
| 22 | .PP |
| 23 | In the same way, |
| 24 | arguments whose names end with `.c' or `.s' are taken to be C or assembly source programs |
| 25 | and are compiled or assembled, producing a `.o' file. |
| 26 | .PP |
| 27 | The following options have the same meaning as in |
| 28 | .IR cc (1). |
| 29 | See |
| 30 | .IR ld (1) |
| 31 | for load-time options. |
| 32 | .TP |
| 33 | .B \-c |
| 34 | Suppress loading and produce `.o' files for each source |
| 35 | file. |
| 36 | .TP |
| 37 | .B \-g |
| 38 | Have the compiler produce additional symbol table information for |
| 39 | .IR sdb (1). |
| 40 | Also pass the |
| 41 | .B \-lg |
| 42 | flag to |
| 43 | .IR ld (1). |
| 44 | .TP |
| 45 | .B \-z |
| 46 | Create load-on-demand format output (an |
| 47 | .IR ld (1) |
| 48 | flag); this is important to specify when loading certain very large programs. |
| 49 | See |
| 50 | .IR ld (1). |
| 51 | .TP |
| 52 | .B \-p |
| 53 | Prepare object files for profiling, see |
| 54 | .IR prof (1). |
| 55 | .TP |
| 56 | .SM |
| 57 | .B \-O |
| 58 | Invoke an |
| 59 | object-code optimizer. |
| 60 | .TP |
| 61 | .SM |
| 62 | .B \-S |
| 63 | Compile the named programs, and leave the |
| 64 | assembler-language output on corresponding files suffixed `.s'. |
| 65 | (No `.o' is created.). |
| 66 | .TP |
| 67 | .B \-f |
| 68 | Use a floating point interpreter (for PDP11's that lack |
| 69 | 11/70-style floating point). |
| 70 | .TP |
| 71 | .BR \-o " output" |
| 72 | Name the final output file |
| 73 | .I output |
| 74 | instead of `a.out'. |
| 75 | .PP |
| 76 | The following options are peculiar to |
| 77 | .IR f77 . |
| 78 | .TP |
| 79 | .SM |
| 80 | .BR \-onetrip |
| 81 | Compile DO loops that are performed at least once if reached. |
| 82 | (Fortran 77 DO loops are not performed at all if the upper limit is smaller than the lower limit.) |
| 83 | .TP |
| 84 | .BR \-u |
| 85 | Make the default type of a variable `undefined' rather than using the default Fortran rules. |
| 86 | .TP |
| 87 | .BR \-C |
| 88 | Compile code to check that subscripts are within declared array bounds. |
| 89 | .TP |
| 90 | .BR \-w |
| 91 | Suppress all warning messages. |
| 92 | If the option is `\-w66', only Fortran 66 compatibility warnings are suppressed. |
| 93 | .TP |
| 94 | .BR \-F |
| 95 | Apply EFL and Ratfor preprocessor to relevant files, put the result in the file |
| 96 | with the suffix changed to `.f', but do not compile. |
| 97 | .TP |
| 98 | .BR \-m |
| 99 | Apply the M4 preprocessor to each `.r' or `.e' file before transforming |
| 100 | it with the Ratfor or EFL preprocessor. |
| 101 | .TP |
| 102 | .TP |
| 103 | .BI \-E x |
| 104 | Use the string |
| 105 | .I x |
| 106 | as an EFL option in processing `.e' files. |
| 107 | .TP |
| 108 | .BI \-R x |
| 109 | Use the string |
| 110 | .I x |
| 111 | as a Ratfor option in processing `.r' files. |
| 112 | .PP |
| 113 | Other arguments |
| 114 | are taken |
| 115 | to be either loader option arguments, or F77-compatible |
| 116 | object programs, typically produced by an earlier |
| 117 | run, |
| 118 | or perhaps libraries of F77-compatible routines. |
| 119 | These programs, together with the results of any |
| 120 | compilations specified, are loaded (in the order |
| 121 | given) to produce an executable program with name |
| 122 | `a.out'. |
| 123 | .SH FILES |
| 124 | .nf |
| 125 | .ta \w'/usr/lib/libF77.a 'u |
| 126 | file.[fresc] input file |
| 127 | file.o object file |
| 128 | a.out loaded output |
| 129 | ./fort[pid].? temporary |
| 130 | /usr/lib/f77pass1 compiler |
| 131 | /lib/f1 pass 2 |
| 132 | /lib/c2 optional optimizer |
| 133 | /usr/lib/libF77.a intrinsic function library |
| 134 | /usr/lib/libI77.a Fortran I/O library |
| 135 | /lib/libc.a C library, see section 3 |
| 136 | .fi |
| 137 | .SH "SEE ALSO" |
| 138 | S. I. Feldman, |
| 139 | P. J. Weinberger, |
| 140 | .I |
| 141 | A Portable Fortran 77 Compiler |
| 142 | .br |
| 143 | prof(1), cc(1), ld(1) |
| 144 | .SH DIAGNOSTICS |
| 145 | The diagnostics produced by |
| 146 | .I f77 |
| 147 | itself are intended to be |
| 148 | self-explanatory. |
| 149 | Occasional messages may be produced by the loader. |
| 150 | .SH BUGS |
| 151 | The Fortran 66 subset of the language has been |
| 152 | exercised extensively; |
| 153 | the newer features have not. |