: 'cmake -- make commands that are a single file'
: 'This script runs faster than a huge makefile and is easier to manage'
: 'than a sea of *.mk files or directories'
: '*** hacked version for getting the system crossed'
FLAGS="-I/usr/gun/usr/include -n "
CC=cc
C=
for a in $*
do
	s=.c
	case $a in
	*.y)	s=.y ;;
	*.s)	s=.s ;;
	*.sh)	s=.sh ;;
	esac
	b=`basename $a $s`
	D=/bin
	GUN=/usr/gun
	M=a+x
	echo $a:
	case $b in
	-cmp)	C=cmp
		continue ;;
	-cp)	C=cp
		continue ;;
	-test)	C=test
		continue ;;
	2)	cp mc.sh 2;;
	3)	cp mc.sh 3;;
	4)	cp mc.sh 4;;
	5)	cp mc.sh 5;;
	6)	cp mc.sh 6;;
	ac) 	cc $FLAGS ac.c -o ac; D=/etc ;;
	accton)	$CC $FLAGS accton.c -o accton; D=/etc ;;
	apropos) cp apropos.sh apropos; chmod +x apropos;;
	apply)  $CC $FLAGS apply.c -o apply ;;
	ar)	$CC $FLAGS ar.c -o ar ;;
	arcv)	$CC $FLAGS arcv.c -o arcv ;;
	at)	$CC $FLAGS at.c -o at ;;
	atrun)	$CC $FLAGS atrun.c -o atrun; D=/usr/lib ;;
	basename)	$CC $FLAGS basename.c -o basename ;;
	bc)	yacc bc.y && mv y.tab.c bc.c && $CC $FLAGS bc.c -o bc && rm bc.c ;;
	bfs)	$CC $FLAGS bfs.c -o bfs ;;
	cal)	$CC $FLAGS cal.c -o cal ;;
	calendar)	$CC $FLAGS calendar.c -o calendar; D=/usr/lib ;;
	cat)	$CC $FLAGS cat.c -o cat ;;
	cb)	$CC $FLAGS cb.c -o cb ;;
	cc)	$CC $FLAGS cc.c -o cc ;;
	checkeq)	$CC $FLAGS checkeq.c -o checkeq ;;
	chgrp)	$CC $FLAGS chgrp.c -o chgrp ;;
	chmod)	$CC $FLAGS chmod.c -o chmod ;;
	chown)	$CC $FLAGS chown.c -o chown ;;
	clear)	$CC $FLAGS clear.c -ltermlib -o clear ;;
	clri)	$CC $FLAGS clri.c -o clri; D=/etc ;;
	cmp)	$CC $FLAGS cmp.c -o cmp ;;
	col)	$CC $FLAGS col.c -o col ;;
	comm)	$CC $FLAGS comm.c -o comm ;;
	compress)	$CC $FLAGS compress.c -o compress;;
	coreid) $CC $FLAGS coreid.c -o coreid ;;
	cp)	$CC $FLAGS cp.c -o cp ;;
	cpio)	$CC $FLAGS cpio.c  -o cpio ;;
	cron)	$CC $FLAGS cron.c -o cron; D=/etc ;;
	crypt)	$CC $FLAGS crypt.c -o crypt ;;
	ctags)	$CC $FLAGS ctags.c -o ctags ;;
	ctime) $CC $FLAGS ctime.c -o ctime ;;
	cu)	$CC $FLAGS cu.c -o cu ;;
	cut)	$CC $FLAGS cut.c -o cut ;;
	date)	$CC $FLAGS date.c -o date ;;
	dcheck)	$CC -s -n dcheck.c -o dcheck ;;
	dd)	$CC -s -n dd.c -o dd ;;
	deroff)	$CC $FLAGS deroff.c -o deroff ;;
	df)	$CC $FLAGS df.c -o df ;;
	diff)	$CC $FLAGS diff.c -o diff ;;
	diff3)	$CC $FLAGS diff3.c -o diff3; D=/usr/lib ;;
	diffh)	$CC $FLAGS diffh.c -o diffh; D=/usr/lib ;;
	dmesg)	$CC $FLAGS dmesg.c -o dmesg; D=/etc ;;
	du)	$CC $FLAGS du.c -o du ;;
	dump)	$CC $FLAGS dump.c -o dump; D=/etc ;;
	dumpdir)	$CC $FLAGS dumpdir.c -o dumpdir ;;
	echo)	$CC $FLAGS echo.c -o echo ;;
	ed)	$CC $FLAGS ed.c -o ed ;;
	egrep)	yacc egrep.y && mv y.tab.c egrep.c && $CC $FLAGS egrep.c -o egrep && rm egrep.c ;;
	expr)	yacc expr.y && mv y.tab.c expr.c && $CC $FLAGS expr.c -o expr && rm expr.c ;;
	factor)	as -o factor factor.s && strip factor;;
	fgrep)	$CC -s -n fgrep.c -o fgrep ;;
	file)	$CC $FLAGS file.c -o file ;;
	find)	$CC $FLAGS find.c -o find ;;
	finger)	$CC $FLAGS finger.c -o finger ;;
	fsck)	$CC $FLAGS fsck.c -o fsck; D=/etc ;;
	getty)	$CC $FLAGS getty.c -o getty; D=/etc ;;
	gnm)	$CC $FLAGS gnm.c -o gnm;;
	graph)	$CC $FLAGS graph.c -o graph -lplot -lm ;;
	grep)	$CC $FLAGS grep.c -o grep ;;
	halt)	$CC -s -n halt.c -o halt; D=/etc ;;
	icheck)	$CC -s -n icheck.c -o icheck ;;
	init)	$CC $FLAGS  init.c -o init; D=/etc ;;
	iostat)	$CC $FLAGS iostat.c -o iostat ;;
	join)	$CC $FLAGS join.c -o join ;;
	kill)	$CC $FLAGS kill.c -o kill ;;
	last)	$CC $FLAGS last.c -o last ;;
	lastcomm) $CC $FLAGS lastcomm.c -o lastcomm ;;
	lc)	$CC $FLAGS  ucbls.c -o lc;;
	ld)	$CC $FLAGS ld.c -o ld ;;
	link)	$CC $FLAGS link.c -o link; D=/etc;;
	ln)	$CC $FLAGS ln.c -o ln ;;
	login)	$CC $FLAGS login.c -o login ;;
	look)	$CC $FLAGS look.c -o look ;;
	ls)	$CC $FLAGS  ls.c -o ls ;;
	mail)	$CC $FLAGS mail.c -o mail ;;
	makekey)	$CC $FLAGS makekey.c -o makekey; D=/usr/lib ;;
	makewhatis)
		cp makewhatis.sh makewhatis
		chmod +x makewhatis
		D=/usr/lib
		;;
	man)	$CC $FLAGS man.c -o man;;
	memstat)	$CC $FLAGS memstat.c -o memstat;;
	mesg)	$CC $FLAGS mesg.c -o mesg ;;
	mkdir)	$CC $FLAGS mkdir.c -o mkdir ; chown root mkdir; chmod u+s mkdir;;
	mkfs)	$CC $FLAGS mkfs.c -o mkfs; D=/etc ;;
	mknod)	$CC $FLAGS mknod.c -o mknod; D=/etc ;;
	more)	$CC $FLAGS more.c -ltermlib -o more ;;
	mount)	$CC $FLAGS mount.c -o mount; D=/etc ;;
	mv)	$CC $FLAGS mv.c -o mv; chown root mv; chmod u+s mv;;
	mvfs2)	$CC $FLAGS mvfs2.c -o mvfs2 ;;
	ncheck)	$CC -s -n ncheck.c -o ncheck ;;
	newgrp)	$CC $FLAGS newgrp.c -o newgrp ;;
	news)	$CC $FLAGS news.c -o news ;;
	nice)	$CC $FLAGS nice.c -o nice ;;
	ngetty)	$CC $FLAGS ngetty.c -o ngetty ;;
	nm)	$CC $FLAGS nm.c -o nm ;;
	nohup)	cp nohup.sh nohup ; chmod +x nohup ;;
	od)	$CC $FLAGS od.c -o od ;;
	opr)	cp opr.sh opr; chmod +x opr;;
	osh)	$CC $FLAGS osh.c -o osh ;;
	passwd)	$CC $FLAGS passwd.c -o passwd; M="$M,u+s";;
	pr)	$CC $FLAGS pr.c -o pr ;;
	primes)	as -o primes /usr/include/sys.s primes.s && strip primes ;;
	prof)	$CC $FLAGS -Dplot prof.c -lplot -o prof ;;
	ps)	$CC $FLAGS ps.c -o ps ;;
	pstat)	$CC $FLAGS pstat.c -o pstat ;;
	ptx)	$CC $FLAGS ptx.c -o ptx ;;
	pwd)	$CC $FLAGS pwd.c -o pwd ;;
	quot)	$CC $FLAGS quot.c -o quot ;;
	random)	$CC $FLAGS random.c -o random ;;
	ranlib) $CC $FLAGS ranlib.c -o ranlib ;;
	reboot)	$CC $FLAGS reboot.c -o reboot; D=/etc ;;
	restor)	$CC -s -n restor.c -o restor ; D=/etc ;;
	rev)	$CC $FLAGS rev.c -o rev ;;
	rm)	$CC $FLAGS rm.c -o rm ;;
	rmdir)	$CC $FLAGS rmdir.c -o rmdir; chown root rmdir; chmod u+s rmdir;;
	sa)	$CC $FLAGS sa.c -o sa ;;
	savecore) $CC $FLAGS savecore.c -o savecore ; D=/etc;;
	script)	$CC $FLAGS script.c -o script;;
	seq)	$CC $FLAGS seq.c -o seq ;;
	showq)	$CC $FLAGS showq.c -o showq ;;
	size)	$CC $FLAGS size.c -o size ;;
	sleep)	$CC $FLAGS sleep.c -o sleep ;;
	sort)	$CC -s -n sort.c -o sort ;;
	sp)	$CC $FLAGS sp.c -o sp ;;
	spline)	$CC $FLAGS spline.c -o spline ;;
	split)	$CC $FLAGS split.c -o split ;;
	srec)	$CC $FLAGS srec.c -o srec ;;
	strip)	$CC $FLAGS strip.c -o strip ;;
	strings) $CC $FLAGS strings.c -o strings ;;
	stty)	$CC $FLAGS stty.c -o stty ;;
	su)	$CC $FLAGS su.c -o su ; M=+s;;
	sum)	$CC $FLAGS sum.c -o sum ;;
	sync)	$CC $FLAGS sync.c -o sync ;;
	tabs)	$CC $FLAGS tabs.c -o tabs ;;
	tail)	$CC $FLAGS tail.c -o tail ;;
	tc)	$CC $FLAGS tc.c -o tc ;;
	tee)	$CC $FLAGS tee.c -o tee ;;
	test)	$CC $FLAGS test.c -o test ;;
	time)	$CC $FLAGS time.c -o time ;;
	tk)	$CC $FLAGS tk.c -o tk ;;
	touch)	$CC $FLAGS touch.c -o touch ;;
	tr)	$CC $FLAGS tr.c -o tr ;;
	tsort)	$CC $FLAGS tsort.c -o tsort ;;
	tty)	$CC $FLAGS tty.c -o tty ;;
	umount)	$CC $FLAGS umount.c -o umount; D=/etc ;;
	uname) cp uname.sh uname; chmod +x uname;;
	uniq)	$CC $FLAGS uniq.c -o uniq ;;
	units)	$CC $FLAGS units.c -o units ;;
	unlink)	$CC $FLAGS unlink.c -o unlink; D=/etc;;
	update)	$CC $FLAGS update.c -o update; D=/etc ;;
	v7cu)	$CC $FLAGS v7cu.c -o v7cu ;;
	vmstat)	$CC $FLAGS vmstat.c -o vmstat ;;
	vpr)	$CC $FLAGS vpr.c -o vpr ;;
	wall)	$CC $FLAGS wall.c -o wall; D=/etc ;;
	wc)	$CC $FLAGS wc.c -o wc ;;
	who)	$CC $FLAGS who.c -o who ;;
	write)	$CC $FLAGS write.c -o write ;;
	xcc)	$CC $FLAGS xcc.c -o xcc ;;
	xstr)	$CC $FLAGS xstr.c -o xstr ;;
	yes)	$CC $FLAGS yes.c -o yes ;;
	*)	echo "cmake: don't know about $b"
		continue ;;
	esac || continue
	case $C in
	test)	rm -f $b ;; 
	cmp)	cmp $b $GUN/$D/$b && rm -f $b ;;
	cp)	cp $b $GUN/$D/$b && rm -f $b && chmod $M $GUN/$D/$b ;;
	esac
done
