| tmkfile - plan9port - [fork] Plan 9 from user space | |
| git clone git://src.adamsgaard.dk/plan9port | |
| Log | |
| Files | |
| Refs | |
| README | |
| LICENSE | |
| --- | |
| tmkfile (1394B) | |
| --- | |
| 1 MKSHELL=$PLAN9/bin/rc | |
| 2 new-%:V: | |
| 3 t=$stem | |
| 4 if(! ~ $t utf fmt bio regexp mk){ | |
| 5 echo bad target | |
| 6 exit oops | |
| 7 } | |
| 8 if(! ~ $t mk) | |
| 9 t=lib$t | |
| 10 mkdir -p $t | |
| 11 rm -f $t/* | |
| 12 cd $t | |
| 13 mk -f ../mkfile.$stem | |
| 14 cd .. | |
| 15 | |
| 16 test-%:V: | |
| 17 t=$stem | |
| 18 path=($PLAN9/bin $path) | |
| 19 mk new-$t | |
| 20 switch($t){ | |
| 21 case bio; d=libbio; td=libbio | |
| 22 case regexp; d=libregexp; td=libregexp | |
| 23 case fmt; d=lib9/fmt; td=libfmt | |
| 24 case utf; d=lib9/utf; td=libutf | |
| 25 case mk; d=cmd/mk; td=mk | |
| 26 } | |
| 27 cd $td | |
| 28 d=$PLAN9/src/$d | |
| 29 for(i in `{ls -p $d/*.c}) | |
| 30 if(! test -f $i) | |
| 31 echo XXX missing $i | |
| 32 make | |
| 33 for(i in `{ls *.c}) | |
| 34 if(! test -f `{echo $i | sed 's/.c$/.o/'}) | |
| 35 echo XXX not building $i | |
| 36 cd .. | |
| 37 | |
| 38 test:V: test-utf test-fmt test-bio test-regexp test-mk | |
| 39 mk test-clean | |
| 40 | |
| 41 test-clean:V: | |
| 42 rm -rf libutf libfmt libbio libregexp mk | |
| 43 | |
| 44 lib%.tgz:V: | |
| 45 mk new-$stem | |
| 46 tar cf /dev/stdout lib$stem | gzip > $target | |
| 47 | |
| 48 libregexp9.tgz:V: | |
| 49 mk new-regexp | |
| 50 tar cf /dev/stdout libregexp | gzip >$target | |
| 51 | |
| 52 mk.tgz:V: | |
| 53 mk new-mk | |
| 54 tar cf /dev/stdout mk | gzip > $target | |
| 55 | |
| 56 mk-with-libs.tgz:V: | |
| 57 mk new-utf | |
| 58 mk new-fmt | |
| 59 mk new-bio | |
| 60 mk new-regexp | |
| 61 mk new-mk | |
| 62 rm -rf zot | |
| 63 mkdir zot | |
| 64 mv libutf libfmt libbio libregexp mk zot | |
| 65 mv zot mk | |
| 66 cp make/Makefile.all mk/Makefile | |
| 67 tar cf /dev/stdout mk | gzip > $target | |
| 68 rm -r mk | |
| 69 | |
| 70 tgz:V: libutf.tgz libfmt.tgz libregexp9.tgz libbio.tgz mk.tgz mk-with-li… | |
| 71 | |
| 72 # run from 'mk push' in ../dist, which sets 9fansweb | |
| 73 push:V: | |
| 74 cp *.tgz $9fansweb/plan9port/unix |