Erik Jacobsen Spring 1995 (jacobsen@metamorph.com)
Readme for the NeXTSTEP port of djgpp.
What?
Djgpp is a DOS port of gcc, it is hosted under DOS (actually under a DOS
extender) and produces executables that run under DOS (well, the extender
again). This is simply a "port" of djgpp that hosts it under NeXTSTEP (m68k
or i386) and yet still produces executables that run under DOS.
djgpp.NS.src.tar.gz - source that compiles under NeXTSTEP
djgpp.NSi386.tar.gz - binaries for NeXTSTEP Intel only
djgpp.NSm68k.tar.gz - binaries for NeXTSTEP Motorola only
The current version is based on gcc 2.6.0.
Why?
"Hosting" a port of gcc to DOS under NeXTSTEP seems like a pretty weird idea,
why would one do it? Because Id Software wanted to be able to do all their
development under NeXTSTEP and they needed a compiler that would produce DOS
executables. This work is courtesy of Id Software as they paid for the port.
Where?
Submitted to:
ftp://ftp.cs.orst.edu/pub/next/submissions/djgpp.README
ftp://ftp.cs.orst.edu/pub/next/submissions/djgpp.NS.src.tar.gz
ftp://ftp.cs.orst.edu/pub/next/submissions/djgpp.NSm68k.tar.gz
ftp://ftp.cs.orst.edu/pub/next/submissions/djgpp.NSi386.tar.gz
It should migrate to:
ftp://ftp.cs.orst.edu/software/NeXT/binaries/proglang/djgpp.README
ftp://ftp.cs.orst.edu/software/NeXT/binaries/proglang/djgpp.NS.src.tar.gz
ftp://ftp.cs.orst.edu/software/NeXT/binaries/proglang/djgpp.NSm68k.tar.gz
ftp://ftp.cs.orst.edu/software/NeXT/binaries/proglang/djgpp.NSi386.tar.gz
Who?
Thanks to Id Software for financing the port.
Erik Jacobsen (jacobsen@metamorph.com), David Carley (carley@metamorph.com)
and Craig Peeper (drizzt@metamorph.com) ported the software. MetaMorph
is a group of software developers who will write software or consult for
NeXTSTEP, UNIX, Linux, DOS, Windows, Windows-NT, and OS/2. Please email
info@metamorph.com for more information.
How?
To install:
1) gunzip and untar the distribution to somplace (say /usr/local/lib)
2) Place [dir]/djgpp/makefile.djgpp in /usr/local/lib
3) Edit /usr/local/lib/makefile.djgpp and set DJGPP_DIR to point to
the djgpp directory (this is not necessary if you placed djgpp
in /usr/local/lib).
3) Make sure that gnu make ([dir]/djgpp/gmake) is in your path.
4) Place go32.exe on your PC (Optional provided you have the proper
version of go32.exe on the PC already).
5) See the example in [dir]/djgpp/example
*Important*: You must use the same version of go32 as djgpp! If you don't and
you have interupt handlers they will not shut down properly due to some odd
interaction between the old go32 and the new compiler. We have included the proper version of go32.exe.
***How to use djgpp (relatively) painlessly under NeXTSTEP***:
1) In your makefile:
After all your definitions, but before any targets add the line
include /usr/local/lib/makefile.djgpp
This will redefine CC, CFLAGS and LFLAGS to use djgpp.
You must use these definitions or manually add the code contained
in makefile.djgpp to your makefile.
You must have both the CFLAGS and the LFLAGS in your link target.
If you want to use "specs", setenv LIBRARY_PATH [dir]/djgpp/lib
2) You can invoke coff2exe by adding the line
$(COFF2EXE) $(OUTPUT_NAME)
this will create $(OUTPUT_NAME).exe
3) After you have created an executable you can run it under DOS
provided you ensure that go32.exe is in your path (a copy of go32.exe
is provided in [dir]/djgpp/bin).
To build: use the make.djgpp.sh script. To do a fresh port or for help
building: see CHANGELOG in [dir]/djgpp/src provided you grabbed the
djgpp.NS.src.tar.gz file.
Misc notes:
gcc, ld and gas are compiled with -O2 and have been stripped.
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.