#
|
#
|
# Makefile for MMIXware under DOS
|
# Makefile for MMIXware under DOS
|
#
|
#
|
# Comments to andreas.scherer@pobox.com
|
# Comments to andreas.scherer@pobox.com
|
#
|
#
|
# If you're using nmake, you'll need to save the Unix makefile and
|
# If you're using nmake, you'll need to save the Unix makefile and
|
# rename this file to makefile, as in:
|
# rename this file to makefile, as in:
|
#
|
#
|
# ren Makefile Makefile.unix
|
# ren Makefile Makefile.unix
|
# ren Makefile.dos Makefile
|
# ren Makefile.dos Makefile
|
#
|
#
|
# Then use nmake normally.
|
# Then use nmake normally.
|
|
|
# Be sure that CWEB version 3.0 or greater is installed before proceeding!
|
# Be sure that CWEB version 3.0 or greater is installed before proceeding!
|
# In fact, CWEB 3.6 is recommended for making hardcopy or PDF documentation.
|
# In fact, CWEB 3.6 is recommended for making hardcopy or PDF documentation.
|
|
|
# If you prefer optimization to debugging, change /Zi to something like /GB:
|
# If you prefer optimization to debugging, change /Zi to something like /GB:
|
MAKE = $(MAKE) /$(MAKEFLAGS)
|
MAKE = $(MAKE) /$(MAKEFLAGS)
|
CFLAGS = /Zi
|
CFLAGS = /Zi
|
|
|
.SUFFIXES: .dvi .tex .w .ps .pdf
|
.SUFFIXES: .dvi .tex .w .ps .pdf
|
|
|
.tex.dvi:
|
.tex.dvi:
|
tex $*.tex
|
tex $*.tex
|
|
|
.tex.pdf:
|
.tex.pdf:
|
pdftex $*.tex
|
pdftex $*.tex
|
|
|
.dvi.ps:
|
.dvi.ps:
|
dvips $* -o $*.ps
|
dvips $* -o $*.ps
|
|
|
.w.c:
|
.w.c:
|
if exist $*.ch ctangle $*.w $*.ch
|
if exist $*.ch ctangle $*.w $*.ch
|
if not exist $*.ch ctangle $*.w
|
if not exist $*.ch ctangle $*.w
|
|
|
.w.tex:
|
.w.tex:
|
if exist $*.ch cweave $*.w $*.ch
|
if exist $*.ch cweave $*.w $*.ch
|
if not exist $*.ch cweave $*.w
|
if not exist $*.ch cweave $*.w
|
|
|
.w.obj:
|
.w.obj:
|
$(MAKE) $*.c
|
$(MAKE) $*.c
|
$(MAKE) $*.obj
|
$(MAKE) $*.obj
|
|
|
.w.exe:
|
.w.exe:
|
$(MAKE) $*.c
|
$(MAKE) $*.c
|
$(MAKE) $*.exe
|
$(MAKE) $*.exe
|
|
|
.w.dvi:
|
.w.dvi:
|
$(MAKE) $*.tex
|
$(MAKE) $*.tex
|
$(MAKE) $*.dvi
|
$(MAKE) $*.dvi
|
|
|
.w.ps:
|
.w.ps:
|
$(MAKE) $*.dvi
|
$(MAKE) $*.dvi
|
$(MAKE) $*.ps
|
$(MAKE) $*.ps
|
|
|
.w.pdf:
|
.w.pdf:
|
$(MAKE) $*.tex
|
$(MAKE) $*.tex
|
$(MAKE) $*.pdf
|
$(MAKE) $*.pdf
|
|
|
WEBFILES = mmix-def.w mmixal.w "mmix-arith.w" mmix-sim.w mmix-io.w mmix-mem.w \
|
WEBFILES = mmix-def.w mmixal.w "mmix-arith.w" mmix-sim.w mmix-io.w mmix-mem.w \
|
mmotype.w abstime.w mmix-doc.w "mmix-config.w" mmix-pipe.w mmmix.w
|
mmotype.w abstime.w mmix-doc.w "mmix-config.w" mmix-pipe.w mmmix.w
|
CHANGEFILES =
|
CHANGEFILES =
|
TESTFILES = *.mms silly.run silly.out *.mmconfig *.mmix
|
TESTFILES = *.mms silly.run silly.out *.mmconfig *.mmix
|
MISCFILES = Makefile makefile.dos README mmix.mp mmix.1
|
MISCFILES = Makefile makefile.dos README mmix.mp mmix.1
|
ALL = $(WEBFILES) $(TESTFILES) $(MISCFILES)
|
ALL = $(WEBFILES) $(TESTFILES) $(MISCFILES)
|
|
|
basic: mmixal.exe mmix.exe
|
basic: mmixal.exe mmix.exe
|
|
|
doc: mmix-doc.ps mmixal.ps mmix-sim.ps abstime.ps
|
doc: mmix-doc.ps mmixal.ps mmix-sim.ps abstime.ps
|
|
|
all: mmixal.exe mmix.exe mmotype.exe mmmix.exe
|
all: mmixal.exe mmix.exe mmotype.exe mmmix.exe
|
|
|
clean:
|
clean:
|
del *~
|
del *~
|
del *.obj
|
del *.obj
|
del *.c
|
del *.c
|
del *.h
|
del *.h
|
del *.tex
|
del *.tex
|
del *.log
|
del *.log
|
del *.dvi
|
del *.dvi
|
del *.toc
|
del *.toc
|
del *.idx
|
del *.idx
|
del *.scn
|
del *.scn
|
del *.ps
|
del *.ps
|
del *.pdf
|
del *.pdf
|
del *.ilk
|
del *.ilk
|
del *.pdb
|
del *.pdb
|
|
|
abstime.exe: abstime.obj
|
abstime.exe: abstime.obj
|
$(CC) $(CFLAGS) abstime.obj /Feabstime.exe
|
$(CC) $(CFLAGS) abstime.obj /Feabstime.exe
|
|
|
"mmix-pipe.obj": "mmix-pipe.c" abstime.exe
|
"mmix-pipe.obj": "mmix-pipe.c" abstime.exe
|
.\abstime >abstime.h
|
.\abstime >abstime.h
|
$(CC) $(CFLAGS) -c mmix-pipe.c
|
$(CC) $(CFLAGS) -c mmix-pipe.c
|
|
|
mmmix.exe: "mmix-arith.obj" "mmix-pipe.obj" "mmix-config.obj" \
|
mmmix.exe: "mmix-arith.obj" "mmix-pipe.obj" "mmix-config.obj" \
|
"mmix-mem.obj" "mmix-io.obj" mmmix.c
|
"mmix-mem.obj" "mmix-io.obj" mmmix.c
|
$(CC) $(CFLAGS) mmmix.c \
|
$(CC) $(CFLAGS) mmmix.c \
|
"mmix-arith.obj" "mmix-pipe.obj" "mmix-config.obj" "mmix-mem.obj" \
|
"mmix-arith.obj" "mmix-pipe.obj" "mmix-config.obj" "mmix-mem.obj" \
|
"mmix-io.obj" /Femmmix.exe
|
"mmix-io.obj" /Femmmix.exe
|
|
|
mmixal.exe: "mmix-arith.obj" mmixal.c
|
mmixal.exe: "mmix-arith.obj" mmixal.c
|
$(CC) $(CFLAGS) mmixal.c "mmix-arith.obj" /Femmixal.exe
|
$(CC) $(CFLAGS) mmixal.c "mmix-arith.obj" /Femmixal.exe
|
|
|
mmix.exe: "mmix-arith.obj" mmix-io.obj mmix-sim.c abstime.exe
|
mmix.exe: "mmix-arith.obj" mmix-io.obj mmix-sim.c abstime.exe
|
.\abstime >abstime.h
|
.\abstime >abstime.h
|
$(CC) $(CFLAGS) mmix-sim.c \
|
$(CC) $(CFLAGS) mmix-sim.c \
|
"mmix-arith.obj" mmix-io.obj /Femmix.exe
|
"mmix-arith.obj" mmix-io.obj /Femmix.exe
|
|
|
mmotype.exe: mmotype.obj
|
mmotype.exe: mmotype.obj
|
$(CC) $(CFLAGS) mmotype.obj /Femmotype.exe
|
$(CC) $(CFLAGS) mmotype.obj /Femmotype.exe
|
|
|
tarfile: $(ALL)
|
tarfile: $(ALL)
|
tar cvf /tmp/mmix.tar $(ALL)
|
tar cvf /tmp/mmix.tar $(ALL)
|
gzip -9 /tmp/mmix.tar
|
gzip -9 /tmp/mmix.tar
|
|
|
|
|
|
|