Subject: a cross compiler somewhat available...
To: None <macbsd-general@sun-lamp.cs.berkeley.edu>
From: chas williams <chas@ohm.nrl.navy.mil>
List: macbsd-general
Date: 03/27/1994 10:58:42
in hopes of gettting some help, rational discussion, and preventing duplication
of existing work that may already be done, i would like to announce the
availability of a simple cross compiler environment for NetBSD/Mac. This is
mostly to prove it could be done, and with a minimum of effort. to make it
work well...that's a different story.
The major files are available via anonymous ftp from ra.nrl.navy.mil in the
directory pub/netbsd_mac68k (no i dont like my shift key)
There is a README and INSTALL there, the contents of the README follows
which basically describes how far along i am. My goal for this would an
environment that could be setup on basically any unix-like machine (regardless
of byte size, or endian)
I would really be interested in talking with others about other cross
environments, and how to improve the one i am currently using...
Things i would like to see, a general port of bsd make to different os's
(i.e. non-bsd), how about a unix version of Install? my mac's scsi i/o
is terrible, and with user-level scsi on a sparc it should be doable.
my apologies if anyone gets this twice... i emailed from the wrong machine
before... duh...
--chas iii
chas@ra.nrl.navy.mil
---README---
Announcing a cross compiler environment for NetMSD/Mac68k
I have only tried this on a Sparcstation running Solaris2, however just about
any big-endian, 32 bit workstation (and a little effort) should work.
While this environment has not been tested rigorously, I think it is
somewhat useful since it is MUCH faster than my Mac IIcx. I have been
able to build/run executables, shared and static using the old (alpha2)
libraries. I have been able to build/run executables, using the
libraries from the NetBSD-current distribution. (The libraries based
on NetBSD-current, were actually built by the cross-compiler--amazingly
enough). I currently seem unable to build a runnable kernel; I was
hoping to get this going but it seems to be out of my league (possibly
I bungled config.new, I need to check this)
o Tools
- Compiler: vanilla gcc-2.4.5 with the NetBSD machine dependent files
- Assembler: gas-2.2 with a few minor tweaks--it is likely not entirely
corrent. The NetBSD port of gas to Solaris2 box, is in old.tar. I
noticed that NetBSD gas passes on some of testsuite files from gas-2.2
that is 'should' fail on.
- Tools (ar,nm,ranlib,...): A port of binutils-2.3--bascially, support for
NetBSD/m68k was added to bfd. Ar, nm, ranlib all seem to work ok. Ld
really is hopeless at the moment since it doesn't support shared libraries,
and my understanding of NetBSD's shared libraries is limited.
- Linker: NetBSD ld. This is the weakest part of the whole environment.
Although a lot of the original multi-environment stuff still seems to be
around, making it not that bad. I mangled the code when it comes to
getting the right include files...
- Other stuff: make, config.new, lorder are basically hacked to run on
a Solaris2/SYSV box. You will likely need to tweak these to make them
run on your system.
o To Do
- Make ld easier to build on various systems (either add NetBSD shared
library support to binutils, or mangle the NetBSD ld code)
- Check gas 2.2 (basically, a.out format is probably slightly wrong)
Possibly it should use bfd or the obj-aout.* from NetBSD could be ported
- Build a runnable kernel!
- Build a decent version of NetBSD make and its associated *.mk files
o Availability
- Anonymous ftp to ra.nrl.navy.mil, in the directory /pub/netbsd_mac68k
------------------------------------------------------------------------------