mirror of
https://github.com/DoctorWkt/unix-jun72.git
synced 2026-02-02 06:51:49 +00:00
28 lines
1.3 KiB
Plaintext
28 lines
1.3 KiB
Plaintext
This directory contains the last1120c C compiler, as described by Dennis
|
|
Ritchie on his web page http://cm.bell-labs.com/cm/cs/who/dmr/primevalC.html
|
|
|
|
You can use the Apout emulator and the C compiler from the s2 tape to
|
|
recompile the last1120c compiler. After installing the new compiler
|
|
binaries, last1120c can recompile itself.
|
|
|
|
Here are the instructions. First, compile and install the Apout emulator.
|
|
Make sure that you turned -DEMUV1 on in the Makefile.
|
|
|
|
Unpack the V1 executables from the s2 tape and unpack them in a suitable
|
|
area, e.g /usr/local/src/V1. Set the environment variable APOUT_ROOT to
|
|
this directory name.
|
|
|
|
Change into the last1120c directory, and edit the shell script mak
|
|
so that it reflects the value of APOUT_ROOT that you have chosen.
|
|
Then simply run the mak shell script natively. This will build the the
|
|
front-end command, cc, and the two passes of the C compiler: c0 and c1.
|
|
|
|
If you want, you can now move c0 and c1 into $APOUT_ROOT/usr/lib, replacing
|
|
the original c0 and c1, and then use the shell script mak again to rebuild
|
|
c0 and c1 using themselves. Similarly, you can replace $APOUT_ROOT/bin/cc
|
|
with the cc created here.
|
|
|
|
The C compiler can now mostly rebuild itself on the V1 kernel, except the c1
|
|
pass which doesn't work yet. The v1mak shell script can be run on V1 to
|
|
rebuild everything from source.
|