plan9port

fork of plan9port with libvec, libstr and libsdb
Log | Files | Refs | README | LICENSE

mkfile (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-libs.tgz
     71 
     72 # run from 'mk push' in ../dist, which sets 9fansweb
     73 push:V:
     74 	cp *.tgz $9fansweb/plan9port/unix