diff options
Diffstat (limited to 'obsolete/systems/sisisi/unix/SiTeX3.14/Makefile')
-rw-r--r-- | obsolete/systems/sisisi/unix/SiTeX3.14/Makefile | 200 |
1 files changed, 200 insertions, 0 deletions
diff --git a/obsolete/systems/sisisi/unix/SiTeX3.14/Makefile b/obsolete/systems/sisisi/unix/SiTeX3.14/Makefile new file mode 100644 index 0000000000..92d1e062cc --- /dev/null +++ b/obsolete/systems/sisisi/unix/SiTeX3.14/Makefile @@ -0,0 +1,200 @@ +# This file makes TeX in its various incarnations. +# +# The file ../common/texmf.h uses the symbol `TeX' to define certain +# things that are different for TeX and Metafont, hence the addition to +# CFLAGS. + +SITEDIR=.. +CC=gcc +OPT=-O +CFLAGS=$(OPT) -I$(SITEDIR) -DTeX +LDFLAGS= +LOADLIBES= +SHELL=/bin/sh +LN=ln + +# The formats we know how to make. +# +formats=amstex.fmt etex.fmt latex.fmt slitex.fmt tex.fmt \ +texinfo.fmt picplus.fmt + + +makeargs=SITEDIR="$(SITEDIR)" CC="$(CC)" OPT="$(OPT)" \ + LDFLAGS="$(LDFLAGS)" LOADLIBES="$(LOADLIBES)" + +.SUFFIXES: +.SUFFIXES: .o .c +.c.o: + $(CC) $(CFLAGS) -c $*.c + +# Routines used everywhere. +# +commondefines=../common/common.defines ../common/texmf.defines +commonh=../common/extra.h ../common/common.h +commono=../common/alloca.o ../common/extra.o + +# Routines used in both TeX and Metafont. +# +extrac=../common/texmf.c +extrah=../common/texmf.h ../common/endian.h +extrao=texmf.o + +# Routines used in TeX, Metafont, and BibTeX. +# +fileioc=../common/fileio.c +fileioh=../common/fileio.h +fileioo=fileio.o + +# We don't add `$(commono)' here, since it doesn't depend on anything in +# this directory, and we write a dependency for `$(objs)' below. +# +objs=$(fileioo) tex0.o tex1.o tex2.o tex3.o tex4.o tex5.o tex6.o tex7.o tex8.o tex9.o +iobjs=iextra.o initex.o $(objs) +vobjs=tex-extra.o itex.o $(objs) + + +default: all + +all: initex virtex +triptrap: triptex + +initex: stamp-convert $(iobjs) $(commono) + $(CC) -o initex $(LDFLAGS) $(iobjs) $(commono) $(LOADLIBES) + +virtex: stamp-convert $(vobjs) $(commono) + $(CC) -o virtex $(LDFLAGS) $(vobjs) $(commono) $(LOADLIBES) + +run-trip: + rm -f trip.tex + -$(LN) TeXtrip/trip.tex . + ../texware/pltotf TeXtrip/trip.pl trip.tfm + -$(SHELL) -c '. ./tripenv; \ + ./triptex < TeXtrip/trip1.in > /dev/null 2>&1' + -diff TeXtrip/tripin.log trip.log + -$(SHELL) -c '. ./tripenv; \ + ./triptex < TeXtrip/trip2.in > trip.fot' + -diff TeXtrip/trip.log trip.log + -diff TeXtrip/trip.fot trip.fot + $(SHELL) -c '. ./tripenv; \ + ../texware/dvitype trip.dvi < TeXtrip/dvitype.in > trip.typ' + -diff TeXtrip/trip.typ trip.typ + + +# Make format files automatically. +# +fmts: $(formats) + +amstex.fmt: tex.fmt + ./initex \&./tex amstex \\dump + +etex.fmt: tex.fmt + touch eplain.aux # Makes cross-reference warnings work right. + ./initex \&./tex eplain \\dump + mv eplain.fmt etex.fmt + mv eplain.log etex.log + +# Until LaTeX and SLiTeX are updated, we must use a hacked version, that +# sets the new parameters to reasonable values. +# +latex.fmt: + ./initex lplain \\dump + mv lplain.fmt latex.fmt + mv lplain.log latex.log + +picplus.fmt: tex.fmt + ./initex \&./tex picplus \\dump + +slitex.fmt: + ./initex splain \\dump + mv splain.fmt slitex.fmt + mv splain.log slitex.log + +tex.fmt: + ./initex plain \\dump + mv plain.fmt tex.fmt + mv plain.log tex.log + +sitex.fmt: + ./initex siplain \\dump + mv siplain.fmt sitex.fmt + mv siplain.log sitex.log + +silatex.fmt: + ./initex silplain \\dump + mv silplain.fmt silatex.fmt + mv silplain.log silatex.log + +# texinfo changes the escape character from `\' to `@'. +# +texinfo.fmt: tex.fmt + ./initex \&./tex texinfo @dump + + +# The `ini_to_trip' script changes texd.h, instead of the change file, so +# retangling is not necessary. After changing constants, making a +# triptex means making an initex. +# +triptex: stamp-trip $(iobjs) $(commono) + make $(makeargs) initex + mv initex triptex + +stamp-trip: stamp-convert + rm -f *.o + $(SHELL) ./ini_to_trip texd.h + touch stamp-trip + +# tangle produces tex.p and tex.pool. +# +tex.p: tex.web ctex.ch + ../web/tangle tex.web ctex.ch + +# The convert script produces tex[0-8].c, itex.c, coerce.h, and texd.h. +# The (hand-coded) memory.h is included in one of tex?.c files; it isn't +# really necessary to `convert' again if it changes, only to recompile +# those files, but describing that relationship is ugly to do. +# (Furthermore, memory.h is stable.) +# +stamp-convert: tex.p memory.h fixcoerce.h $(commondefines) + $(SHELL) ./convert + touch stamp-convert + +# The (hand-coded) file $(extrac) and the (generated) file itex.c have +# #ifdefs for INITEX, so we compile them differently. +# +iextra.o: $(extrac) texd.h $(extrah) $(commonh) + $(CC) $(CFLAGS) -I. -DINITEX -DINI -c $(extrac) + mv $(extrao) iextra.o + +initex.o: itex.c texd.h $(extrah) $(commonh) + $(CC) $(CFLAGS) -DINITEX -c itex.c && mv itex.o initex.o + +$(objs): stamp-convert texd.h +tex-extra.o: $(extrac) texd.h + rm -f tex-extra.c + $(LN) $(extrac) tex-extra.c + $(CC) $(CFLAGS) -I. -c tex-extra.c + +$(fileioo): $(fileioc) $(fileioh) + $(CC) $(CFLAGS) -I. -c $(fileioc) + +tex0.o: tex0.c +tex1.o: tex1.c +tex2.o: tex2.c +tex3.o: tex3.c +tex4.o: tex4.c +tex5.o: tex5.c +tex6.o: tex6.c +tex7.o: tex7.c +tex8.o: tex8.c +tex9.o: tex9.c + + +clean: + rm -f stamp-* *.o triptex initex virtex + rm -f texd.h coerce.h *.log *.fmt *.aux + rm -f 8terminal.tex trip.* tripos.tex dvitype.out + rm -f tex-extra.c + +veryclean: clean + rm -f tex?.c itex.c tex.p tex.pool texput.* + rm -f \#*\# *~ *.bak *.ckp core |