APE=/sys/src/ape < $APE/config BIN=/$objtype/bin TEXBIN=/sys/lib/tex/bin/$objtype TEXPOOL=/sys/lib/tex TEXFORMATS=/sys/lib/tex/macros MFBASES=/sys/lib/mf MFPOOL=/sys/lib/mf APEBINPROGS=tex latex mf bibtex TEXS=initex virtex MFS=inimf virmf MFWARE=gftodvi gftopk gftype mft TEXWARE=dvitype patgen pltotf pooltype tftopl WEBWARE=tangle weave FONTUTILS=pktogf pktype vftovp vptovf DVIUTILS=dvicopy ALL=$APEBINPROGS $TEXS $MFS $MFWARE $TEXWARE $WEBWARE $FONTUTILS $DVIUTILS cpuobjtype=`{sed -n 's/^O=//p' /$cputype/mkfile} compile:V: everything all:V: everything install:V: everything for (i in $TEXS) $INSTALL tex/$O.$i $TEXBIN/$i $INSOWNER $INSGROUP $INSMODE for (i in $MFS) $INSTALL mf/$O.$i $TEXBIN/$i $INSOWNER $INSGROUP $INSMODE for (i in $MFWARE) $INSTALL mfware/$O.$i $TEXBIN/$i $INSOWNER $INSGROUP $INSMODE for (i in $TEXWARE) $INSTALL texware/$O.$i $TEXBIN/$i $INSOWNER $INSGROUP $INSMODE for (i in $WEBWARE) $INSTALL web/$O.$i $TEXBIN/$i $INSOWNER $INSGROUP $INSMODE for (i in $FONTUTILS) $INSTALL fontutil/$O.$i $TEXBIN/$i $INSOWNER $INSGROUP $INSMODE for (i in $DVIUTILS) $INSTALL dviutil/$O.$i $TEXBIN/$i $INSOWNER $INSGROUP $INSMODE $INSTALL bibtex/$O.out $BIN/bibtex $INSOWNER $INSGROUP $INSMODE $INSTALL tex/tex.pool $TEXPOOL/tex.pool $INSOWNER $INSGROUP 664 $INSTALL mf/mf.pool $MFPOOL/mf.pool $INSOWNER $INSGROUP 664 $INSTALL tex/tex.fmt $TEXFORMATS/tex.fmt $INSOWNER $INSGROUP 664 $INSTALL tex/latex.fmt $TEXFORMATS/latex.fmt $INSOWNER $INSGROUP 664 $INSTALL mf/plain.base $MFBASES/mf.base $INSOWNER $INSGROUP 664 everything:V: stamp-lib.$objtype mk $ALL installall:V: for (objtype in $CPUS) mk install test:V: mk triptrap mk run-triptrap mk clean-triptrap $TEXS:V: stamp-web2c.$cputype stamp-tangle.$cputype mk TeX texinit:V: $TEXS cd tex objtype=$cputype mk $cpuobjtype.initex $MFS:V: stamp-web2c.$cputype stamp-tangle.$cputype stamp-lib.$objtype mk MF tangle:V: stamp-tangle.$cputype stamp-lib.$objtype cd web; mk $O.tangle weave:V: stamp-web2c.$cputype stamp-tangle.$cputype stamp-lib.$objtype cd web; mk $O.weave $MFWARE:V: stamp-web2c.$cputype stamp-tangle.$cputype stamp-lib.$objtype cd mfware; mk all $TEXWARE:V: stamp-web2c.$cputype stamp-tangle.$cputype stamp-lib.$objtype cd texware; mk all $FONTUTILS:V: stamp-web2c.$cputype stamp-tangle.$cputype stamp-lib.$objtype cd fontutil; mk all $DVIUTILS:V: stamp-web2c.$cputype stamp-tangle.$cputype stamp-lib.$objtype cd dviutil; mk all bibtex:V: stamp-web2c.$cputype stamp-tangle.$cputype stamp-lib.$objtype cd bibtex; mk tex:V: texinit cd tex TEXPOOL=. #redirected to stop chatter - remove redirection for debugging $cpuobjtype.initex 'plain \dump' > /dev/null mv plain.fmt tex.fmt latex:V: texinit cd tex TEXPOOL=. #redirected to stop chatter - remove redirection for debugging $cpuobjtype.initex 'latex.ltx \dump' > /dev/null mf:V: $MFS cd mf TEXPOOL=. objtype=$cputype mk $cpuobjtype.inimf #redirected to stop chatter - remove redirection for debugging $cpuobjtype.inimf 'plain ; input modes; dump' > /dev/null # stuff from overall Makefile for making TeX, etc # # TeX 3.141 + Metafont 2.71 + web2c 5.851c version = 5.851c # Start of system configuration section. SHELL=/bin/rc # Compiling. CC=pcc coptimize= XCFLAGS=-B # Some directories add more flags to this; hence this is not CFLAGS. cflags = -Ilib $coptimize $XCFLAGS # Stuff below here probably doesn't need to be changed. triptrapdirs=tex texware mf mfware progdirs=$triptrapdirs bibtex dviutil fontutil web alldirs=$progdirs lib web2c triptrap:V: stamp-web2c.$cputype stamp-tangle.$cputype for (name in $triptrapdirs) @{ cd $name; objtype=$cputype mk triptrap } run-triptrap:V: @{ cd tex; mk run-triptrap } cd mf; mk run-triptrap clean-triptrap:V: @{ cd tex; mk nuke } cd mf; mk nuke TeX:V: stamp-web2c.$cputype stamp-tangle.$cputype stamp-lib.$objtype cd tex; mk all MF:V: stamp-web2c.$cputype stamp-tangle.$cputype stamp-lib.$objtype cd mf; mk all stamp-lib.$objtype: @{ cd lib; mk all } touch stamp-lib.$objtype stamp-lib.$cputype: @{ cd lib; objtype=$cputype mk all } touch stamp-lib.$cputype stamp-tangle.$cputype: stamp-web2c.$cputype @{ cd web; objtype=$cputype mk $cpuobjtype.tangle } touch stamp-tangle.$cputype stamp-web2c.$cputype: stamp-lib.$cputype @{ cd web2c; objtype=$cputype mk all } touch stamp-web2c.$cputype clean:V: rm -f stamp-* for (name in web2c $alldirs) @{ cd $name; mk clean } nuke:V: rm -f stamp-* for (name in web2c $alldirs) @{ cd $name; mk nuke } rm -f '#'*'#' *~ *.bak