Added
This commit is contained in:
73
lang/fortran/comp/README
Normal file
73
lang/fortran/comp/README
Normal file
@@ -0,0 +1,73 @@
|
||||
Type "make" to check the validity of the f2c source and compile f2c.
|
||||
|
||||
If (in accordance with what follows) you need to modify the makefile
|
||||
or any of the source files, first issue a "make xsum.out" to check
|
||||
the validity of the f2c source, then make your changes, then type
|
||||
"make f2c".
|
||||
|
||||
The file usignal.h is for the benefit of strictly ANSI include files
|
||||
on a UNIX system -- the ANSI signal.h does not define SIGHUP or SIGQUIT.
|
||||
You may need to modify usignal.h if you are not running f2c on a UNIX
|
||||
system.
|
||||
|
||||
Should you get the message "xsum0.out xsum1.out differ", see what lines
|
||||
are different (`diff xsum0.out xsum1.out`) and ask netlib to send you
|
||||
the files in question "from f2c/src". For example, if exec.c and
|
||||
expr.c have incorrect check sums, you would send netlib the message
|
||||
send exec.c expr.c from f2c/src
|
||||
|
||||
On some systems, the malloc and free in malloc.c let f2c run faster
|
||||
than do the standard malloc and free. Other systems cannot tolerate
|
||||
redefinition of malloc and free. If yours is such a system, you may
|
||||
either modify the makefile appropriately, or simply execute
|
||||
cc -c -DCRAY malloc.c
|
||||
before typing "make". Still other systems have a -lmalloc that
|
||||
provides performance competitive with that from malloc.c; you may
|
||||
wish to compare the two on your system.
|
||||
|
||||
On some BSD systems, you may need to create a file named "string.h"
|
||||
whose single line is
|
||||
#include <strings.h>
|
||||
you may need to add " -Dstrchr=index" to the "CFLAGS =" assignment
|
||||
in the makefile, and you may need to add " memset.o" to the "OBJECTS ="
|
||||
assignment in the makefile -- see the comments in memset.c .
|
||||
|
||||
For non-UNIX systems, you may need to change some things in sysdep.c,
|
||||
such as the choice of intermediate file names.
|
||||
|
||||
On some systems, you may need to modify parts of sysdep.h (which is
|
||||
included by defs.h). In particular, for Sun 4.1 systems and perhaps
|
||||
some others, you need to comment out the typedef of size_t.
|
||||
|
||||
Alas, some systems #define __STDC__ but do not provide a true standard
|
||||
(ANSI or ISO) C environment, e.g. do not provide stdlib.h . If yours
|
||||
is such a system, then (a) you should complain loudly to your vendor
|
||||
about __STDC__ being erroneously defined, and (b) you should insert
|
||||
#undef __STDC__
|
||||
at the beginning of sysdep.h . You may need to make other adjustments.
|
||||
|
||||
For some non-ANSI versions of stdio, you must change the values given
|
||||
to binread and binwrite in sysdep.c from "rb" and "wb" to "r" and "w".
|
||||
You may need to make this change if you run f2c and get an error
|
||||
message of the form
|
||||
Compiler error ... cannot open intermediate file ...
|
||||
|
||||
On many systems, it is best to combine libF77 and libI77 into a single
|
||||
library, say libf2c, as suggested in "index from f2c". If you do this,
|
||||
then you should adjust the definition of link_msg in sysdep.c
|
||||
appropriately (e.g., replacing "-lF77 -lI77" by "-lf2c").
|
||||
|
||||
Some older C compilers object to
|
||||
typedef void (*foo)();
|
||||
or to
|
||||
typedef void zap;
|
||||
zap (*foo)();
|
||||
If yours is such a compiler, change the definition of VOID in
|
||||
f2c.h from void to int.
|
||||
|
||||
Please send bug reports to dmg@research.att.com . The index file
|
||||
("send index from f2c") will report recent changes in the recent-change
|
||||
log at its end; all changes will be shown in the "fixes" file
|
||||
("send fixes from f2c"). To keep current source, you will need to
|
||||
request xsum0.out and version.c, in addition to the changed source
|
||||
files.
|
||||
Reference in New Issue
Block a user