X-Git-Url: https://oss.titaniummirror.com/gitweb?a=blobdiff_plain;f=libf2c%2FREADME;fp=libf2c%2FREADME;h=0000000000000000000000000000000000000000;hb=6fed43773c9b0ce596dca5686f37ac3fc0fa11c0;hp=008654b3c775b857b5afc0c56e5228000e1d1ad2;hpb=27b11d56b743098deb193d510b337ba22dc52e5c;p=msp430-gcc.git diff --git a/libf2c/README b/libf2c/README deleted file mode 100644 index 008654b3..00000000 --- a/libf2c/README +++ /dev/null @@ -1,109 +0,0 @@ -1998-08-11 - -This directory contains the libf2c library packaged for use with g77 -to configure and build automatically (in principle!) as part of the -top-level configure and make steps. g77 names this library `libg2c' -to avoid conflicts with existing copies of `libf2c' on a system. - -Some small changes have been made vis-a-vis the netlib distribution of -libf2c, which comes from and is maintained -(excellently) by David M. Gay . See the Notice files -for copyright information. We usually try to get g77-specific changes -rolled back into the libf2c distribution. - -Files that come directly from netlib are either maintained in the -libf2c directory under their original names or, if they are not pertinent -for g77's version of libf2c, under their original names with `.netlib' -appended. For example, permissions.netlib is a copy of f2c's top-level -`permissions' file in the netlib distribution. In this case, it applies -only to the relevant portions of the libF77/ and libI77/ directories; it -does not apply to the libU77/ directory, which is distributed under -different licensing arrangements. Similarly, the `makefile.netlib' files -in the libF77/ and libI77/ subdirectories are copies of the respective -`makefile' files in the netlib distribution, but are not used when -building g77's version of libf2c. - -The README.netlib files in libF77/ and libI77/ thus might be -interesting, but should not be taken as guidelines for how to -configure and build libf2c in g77's distribution. - -* Read permissions.netlib for licensing conditions that apply to - distributing programs containing portions of code in the libF77/ and - libI77/ subdirectories. Also read disclaimer.netlib. - -* Read libU77/COPYING.LIB for licensing conditions that apply to - distributing programs containing portions of code in the libU77/ - subdirectory. - -Among the user-visible changes (choices) g77 makes in its version of libf2c: - -- f2c.h configured to default to padding unformatted direct reads - (#define Pad_UDread), because that's the behavior most users - expect. - -- f2c.h configured to default to outputting leading zeros before - decimal points in formatted and list-directed output, to be compatible - with many other compilers (#define WANT_LEAD_0). Either way is - standard-conforming, however, and you should try to avoid writing - code that assumes one format or another. - -- dtime_() and etime_() are from Dave Love's libU77, not from - netlib's libF77. - -- Routines that are intended to be called directly via user code - (as in `CALL EXIT', but not the support routines for `OPEN') - have been renamed from `' to `G77__0'. This, in - combination with g77 recognizing these names as intrinsics and - calling them directly by those names, reduces the likelihood of - interface mismatches occurring due to use of compiler options - that change code generation, and permits use of these names as - both intrinsics and user-supplied routines in applications (as - required by the Fortran standards). f2cext.c contains "jacket" - routines named `' that call `G77__0', to support - code that relies on calling the relevant routines as `EXTERNAL' - routines. - - Note that the `_0' in the name denotes version 0 of the *interface*, - not the *implementation*, of a routine. The interface of a - given routine *must not change* -- instead, introduce a new copy - of the code, with an increment (e.g. `_1') suffix, having the - new interface. Whether the previous interface is maintained is - not as important as ensuring the routine implementing the new - interface is never successfully linked to a call in existing, - e.g. previously compiled, code that expects the old interface. - -- Version.c in the subdirectories contains g77-specific version - information and a routine (per subdirectory) to print both the - netlib and g77 version information when called. The `g77 -v' - command is designed to trigger this, by compiling, linking, and - running a small program that calls the routines in sequence. - -- libF77/main.c no longer contains the actual code to copy the - argc and argv values into globals or to set up the signal-handling - environment. These have been removed to libF77/setarg.c and - libF77/setsig.c, respectively. libF77/main.c contains procedure - calls to the new code in place of the code itself. This should - simplify linking executables with a main() function other than - that in libF77/main.c (such as one written by the user in C or - C++). See the g77 documentation for more information. - -- Complex-arithmetic support routines in libF77/ take a different approach - to avoiding problems resulting from aliased input and output arguments, - which should avoid particularly unusual alias problems that netlib - libf2c might suffer from. - -- libF77/signal_.c supports systems with 64-bit pointers and 32-bit - integers. - -- I/O routines in libI77/ have code to detect attempts to do recursive - I/O more "directly", mainly to lead to a clearer diagnostic than - typically occurs under such conditions. - -- Formatted-I/O routines in libI77/ have code to pretty-print a FORMAT - string when printing a fatal diagnostic involving formatted I/O. - -- libI77/open.c supports a more robust, perhaps more secure, method - of naming temporary files on some systems. - -- Some g77-specific handling of building under Microsoft operating - systems exists, mainly in libI77/.