123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126 |
- </$objtype/mkfile
- TARG=`{ls *.[cy] | sed '/\.tab\.c$/d;s/..$//'}
- HFILES=/$objtype/include/u.h /sys/include/libc.h /sys/include/bio.h
- BIN=/$objtype/bin
- PROGS=${TARG:%=$O.%}
- LDFLAGS=
- YFLAGS=-d
- NOTSYS=sml|dup
- BUGGERED=gc|lmlvideo|dwb|unix|perl|celp|mosml|ovac|vfs|aviation|_vnc|postscript
- OUTOFDATE=old|ssls
- NOMK=$NOTSYS|$BUGGERED|$OUTOFDATE
- cpuobjtype=`{sed -n 's/^O=//p' /$cputype/mkfile}
- DIRS=`{ls -l | sed '/^d/!d; s/.* //; /^('$NOMK')$/d'}
- none:VQ:
- echo usage: mk cmds, dirs, all, install, installall, '$O'.cmd, cmd.install, or cmd.installall
- cmds:V: $PROGS
- dirs:V:
- for(i in cc $DIRS) @{
- cd $i
- echo mk $i
- mk $MKFLAGS all
- }
- all:V: $PROGS dirs
- ^([$OS])\.(.*):R: \2.\1
- $stem1^l $LDFLAGS -o $target $stem2.$stem1
- .*\.[$OS]:R: $HFILES
- (.*)\.([$OS])'$':R: \1.c
- $stem2^c $CFLAGS $stem1.c
- &:n: $O.&
- mv $O.$stem $stem
- %.tab.h %.tab.c: %.y
- $YACC $YFLAGS -s $stem $prereq
- %.install:V: $BIN/%
- $cpuobjtype._cp: /bin/cp
- cp $prereq $target
- %.safeinstall: $O.% $cpuobjtype._cp
- test -e $BIN/$stem && mv $BIN/$stem $BIN/_$stem
- $cpuobjtype._cp $O.$stem $BIN/$stem
- %.safeinstallall:
- for(objtype in $CPUS)
- mk $stem.safeinstall
- mk $stem.clean
- $BIN/%: $O.% $cpuobjtype._cp
- $cpuobjtype._cp $O.$stem $BIN/$stem
- %.directories:V:
- for(i in $DIRS) @{
- cd $i
- echo mk $i
- mk $MKFLAGS $stem
- }
- clean:V: cleanfiles clean.directories
- nuke:V: cleanfiles nuke.directories
- directories:V: install.directories
- cleanfiles:V:
- rm -f [$OS].out *.[$OS] y.tab.? y.debug y.output [$OS].$TARG [$OS].units.tab $TARG bc.c bc.tab.h units.tab.h units.c [$OS]._cp
- %.clean:V:
- rm -f [$OS].$stem $stem.[$OS]
- install:V:
- test -e $cpuobjtype._cp || cp /bin/cp $cpuobjtype._cp
- mk $MKFLAGS $TARG.install
- mk $MKFLAGS directories
- installall:V:
- for(objtype in $CPUS)
- mk $MKFLAGS install
- %.installall: %.c
- test -e $cpuobjtype._cp || cp /bin/cp $cpuobjtype._cp
- for (objtype in $CPUS) {
- rfork e
- mk $stem.install &
- }
- wait
- rm -f $stem.[$OS] y.tab.? $stem.tab.? y.debug y.output [$OS].$stem bc.c bc.tab.h units.c
- %.acid: %.$O $HFILES
- $CC $CFLAGS -a $stem.c >$target
- (bc|units).c:R: \1.tab.c
- mv $stem1.tab.c $stem1.c
- $BIN/init: $O.init
- cp $prereq /$objtype/init
- $O.cj: cj.$O
- $LD $LDFLAGS -o $O.cj cj.$O /$objtype/lib/libjpg.a
- %.update:V:
- update $stem.c /386/bin/$stem
- compilers:V:
- @{
- cd cc
- mk installall
- mk clean
- }
- for(i in 1c 2c 5c 7c 8c kc qc vc) @{
- cd $i;
- mk installall
- mk clean
- }
|