The GNU Fortran compiler
========================

Introduction
------------

This is a port of the GNU Fortran compiler (version 0.5.18) for the 
Fortran 77 and 90 programming language dialects to the Acorn range of
ARM based machines, running under RISC OS. As such, this package is
covered by the FSF General Public License (see the files docs.COPYING
and docs.COPYINGLIB for details).

This port is  1996 Nick Burrett

As with GNU programs, THERE IS NO WARRANTY OF ANY SORT

This compiler requires a minimum 2800Kb of free RAM for compilations.


Files
-----

This is a binary distribution only and consists of the following files:

  bin.f771          The Fortran compiler
  bin.g77           The Fortran compiler front end
  docs.g77          Fortran compiler instruction manual
  docs.Fortran77    This documentation
  gcc.o.libf2c      Fortran compiler runtime library

The compiler sources (about 1600Kb) can be obtained from the sites listed at
the end of docs.!Intro.


Installation
------------

Before attempting to use GNU C, it should be noted that this distribution
will require the GCC front end files stored in the archive gccmain.zip.
If you do not have a copy of this, it can be retrieved from
  ftp://micros.hensa.ac.uk/micros/arch/riscos/b/b013/gccmain.zip
and relevant mirrors.

GNU Fortran 0.5.18 also requires UnixLib 3.7a or later, but not UnixLib 4.0.
GNU Fortran will not work with UnixLib 3.6e or earlier.


Compiling Fortran source
------------------------

Fortran source files can be kept in either the 'for' or 'f' directories.

Fortran comes with an extra file called g77. g77 is a front end binary for
the Fortran compiler, and will automatically include the necessary run-time
library needed by Fortran whenever the compilation needs it.

Typing:
    gcc -c f.test
or  g77 -c f.test

will compile the Fortran file, test, into an AOF file and store it in the
'o' directory.

Typing:
  gcc f.test -o test -lf2c -Wl,-rescan

is equivalent to:
  g77 f.test -o test -Wl,-rescan

libf2c is the standard run-time library required by Fortran. Notice the
extra command line option '-Wl,-rescan'. This requests drlink to rescan
all libraries to try and resolve missing references. It is equivalent
to passing '-rescan' on the drlink command line.

All GNU compilers require the library gcc:o.libgcc to operate. So separate
compile and link operations must include this.


Known problems
--------------

If you find a bug then please read the file docs.bugs for what to do if
you have found a bug.

This is an early release of the GNU Fortran compiler, therefore I can't
be expected to make major enhancements to it's functionality. A large
number of bugs are caused by the run-time library and UnixLib, when
these are identified they are usually fixed quickly.


Known Restrictions
------------------

There are currently no known restrictions.


Contacting me
-------------

I can be contacted by e-mail at: nickb@digibank.demon.co.uk

However, if there is no response from that address I can be contacted
through Simon Callan: gcc@callan.demon.co.uk.
