[comp.os.minix] gcc for 68k - binaries and patches available by ftp

eesrajm@cc.brunel.ac.uk (Andrew J Michael) (02/05/91)

Further to my previous posting, I have now put a quantity of gcc binaries and
patches for MINIX/68k on plains.nodak.edu  (Thanks Glen !!)

They are rooted in pub/Minix/uk/mincen/68k/gcc, with some other goodies
lying around in directories at the same level, including binaries for TeX.

I have provided binaries and patches for gcc-1.39 and gas-1.37.  Binaries are
also present for flex-2.3.6 and bison-1.12; you need bison to recompile gcc.
A complete set of libraries for both 16 and 32-bit compilation are included.

Please note that this is my flavour of gcc-1.39, rather than CvW's, so it 
doesn't contain his patches for sizeof().  Nothing personal here - the tar file
was on its way to plains before I saw his patches, otherwise I would have
included them.  I will include them next time, because they save having to
cast several sizeof's in the MINIX-1.5 kernel sources.

Here is the README file from pub/Minix/uk/mincen/68k/gcc.

----------------------------------------------------------------------------

This is a collection of gcc and other gnu utilities for MINIX-68k.   All
were current versions at the time of assembling this archive.  The main
constituents are gcc-1.39 and gas-1.37, but flex, bison and gnu diff are
included as well.

The diffs for gcc and gas are based on those originally devised by Jhawar
Bammi, to whom I am eternally grateful !  My changes to his work are as
follows:

(a).  The root of the gnu tree is now /usr/gnu, rather than /usr/local.  My
/usr/local directory got rather full, and /usr/gnu was suggested by the author
of bash.  This means that the contents of the enclosed bin directory should
be copied to /usr/gnu/bin, and the lib directory to /usr/gnu/lib.  Remember
to put /usr/gnu/bin in your $PATH.  If you want to use a different directory
structure, you will have to alter the patches and recompile.

(b).  Bammi's original mods included provision for gcc under TOS.  I have 
removed all these modifications for the sake of readability as much as 
anything else.  The Makefiles still support cross-compilation; define
NATIVE_MINIX or CROSS_MINIX as desired.  I havn't tested the cross compilation
option since gcc-1.37.1.

(c).  Bammi removed the 68881 and 68851 code generation from gas.  I have
replaced it due to the likelihood of gcc running on Amigas with '020 and '030
processors.  Note that this code won't be generated unless you actually ask
gcc or gas to do it, so there is no problem on 68000s.

(d).  I have made gcc compatible with MINIX-1.5 include files and libraries.
This obviates the need for an entirely separate gcc-include directory, because
gcc will now work with (patched) MINIX-1.5 include files.  I have therefore 
altered bammi's patches for the include directory back to the normal behaviour,
i.e. gcc will look in /usr/include unless a file already exists in the
directory /usr/gnu/lib/gcc-include.

I have altered the MINIX-1.5 <curses.h> to the BSD version supplied with
bammi's gcc.  The appropriate curses libraries are therefore enclosed as well.
Note that there also two versions of gcc-ar, one for 1.5 and one for earlier
versions of MINIX. As several people have discovered, the pre-1.5 gcc-ar won't
run under MINIX-1.5.  Since the 1.5 version only requires recompilation with
the later libraries, my diffs for gcc-ld aren't any different to bammi's other 
than for changing the gcc root directory.  I therefore havn't bothered to 
include them.

I have included Fred Fish's pml maths library, with slight alterations for
MINIX-1.5.  I'm not entirely convinced that all is well with the gcc floating
point; I will have a look when I get the time (joke !)

This version of gcc should work quite happily on the Amiga, although I havn't
yet had the chance to test it.  I suspect that the Mac probably uses rather
different libraries, so you might have problems.  Then again, you might not.

If you want to re-compile gcc, you will need a machine with about 2.5Mb of
ram.  To re-compile gas, you need 4Mb - the file m68k.c is huge, and takes
a 4Mb STE about 14 minutes to compile !

Enjoy !!

Andy Michael
<eesrajm@uk.ac.brunel>

29 January 1991

------------------------------------------------------------------------------


Regards
Andy Michael


-- 
Andy Michael (eesrajm@cc.brunel.ac.uk)      "You might think that.  I
85 Hawthorne Crescent                        couldn't possibly comment."
West Drayton
Middlesex                                  
UB7 9PA