xref: /plan9/sys/src/9/port/portmkfile (revision 12009bff671a91993ae58f16dab833e809f4a6f3)
1PORTFILES=`{../port/mkfilelist ../port}
2^($PORTFILES)\.$O:R:	'../port/\1.c'
3	$CC $CFLAGS -I. ../port/$stem1.c
4
5IPFILES=`{../port/mkfilelist ../ip}
6^($IPFILES)\.$O:R:	'../ip/\1.c' ../ip/ip.h ../ip/ipv6.h
7	$CC $CFLAGS -I. ../ip/$stem1.c
8
9%.$O:	%.s
10	$AS $AFLAGS $stem.s
11
12%.$O:	%.c
13	$CC $CFLAGS $stem.c
14
15%.acid:	%.c
16	$CC $CFLAGS -a $stem.c >$stem.acid
17
18%.acid:	../ip/%.c
19	$CC $CFLAGS -a -I.  ../ip/$stem.c >$stem.acid
20
21%.acid:	../port/%.c
22	$CC $CFLAGS -a -I. ../port/$stem.c >$stem.acid
23
24installall:V:
25	for(i in $CONFLIST)
26		mk 'CONF='$i install
27
28all:V:
29	for(i in $CONFLIST)
30		mk 'CONF='$i
31
32clean:V:
33	rm -f *.[$OS] *.root.s *.rootc.c cfs.h fs.h init.h conf.h reboot.h reboot.list *.out *.m errstr.h
34	for(i in $CONFLIST $CRAPLIST)
35		mk $i.clean
36
37%.clean:V:
38	rm -f $stem.c [9bz]$stem [9bz]$stem.gz s[9bz]$stem boot$stem.* *.acid
39
40nuke:V:	clean
41	rm -f ../boot/libboot.a$O *.elf *.rr
42
43%.$O:	/$objtype/include/u.h ../port/lib.h mem.h dat.h fns.h io.h ../port/error.h ../port/portdat.h ../port/portfns.h
44
45../port/systab.h:	/sys/src/libc/9syscall/sys.h ../port/mksystab
46	rc ../port/mksystab > ../port/systab.h
47
48$CONF.$O:	$CONF.c
49	$CC $CFLAGS '-DKERNDATE='`{date -n} $CONF.c
50
51$CONF.c:	../port/mkdevc $CONF
52	rc ../port/mkdevc $CONF > $CONF.c
53	{echo 'uchar configfile[]={'
54	 xd -1x $CONF |
55		sed -e 's/^[0-9a-f]+ //' -e 's/ ([0-9a-f][0-9a-f])/0x\1,/g'
56	 echo 0,
57	 echo '};'} >> $CONF.c
58
59errstr.h:	../port/mkerrstr ../port/error.h
60	rc ../port/mkerrstr > errstr.h
61
62../port/latin1.h:	/lib/keyboard
63	aux/mklatinkbd /lib/keyboard > ../port/latin1.h
64
65%.db:		main.$O
66	$CC -s$stem main.c | dbfmt > $stem.db
67
68alloc.$O:	/sys/include/pool.h
69devmnt.$O:	/sys/include/fcall.h
70proc.$O:	errstr.h
71devroot.$O:	errstr.h
72devaoe.$O:	/$objtype/include/ureg.h
73devfs.$O:	/$objtype/include/ureg.h
74devsd.$O:	/$objtype/include/ureg.h
75sdscsi.$O:	/$objtype/include/ureg.h
76trap.$O:	/$objtype/include/ureg.h
77devproc.$O:	/$objtype/include/ureg.h
78main.$O:	init.h
79trap.$O:	../port/systab.h
80devpipe.$O:	../port/netif.h
81netif.$O:	../port/netif.h
82devuart.$O:	../port/netif.h
83devmouse.$O:	screen.h /sys/include/memdraw.h
84devdraw.$O:	screen.h /sys/include/memdraw.h
85screen.$O:	screen.h /sys/include/memdraw.h
86latin1.$O:	../port/latin1.h
87thwack.$O:	../port/thwack.h
88unthwack.$O:	../port/thwack.h
89devsdp.$O:	../port/thwack.h
90devproc.$O sysproc.$O:	/sys/include/tos.h
91devproc.$O edf.$O proc.$O: /sys/include/trace.h
92
93boot$CONF.out: $CONF print.$O $BOOTDIR/boot.c $BOOTLIB
94	$BOOTDIR/mkboot $CONF > boot$CONF.c
95	$CC $CFLAGS boot$CONF.c
96	$CC $CFLAGS ../boot/printstub.c
97	$LD -o boot$CONF.out boot$CONF.$O $BOOTLIB printstub.$O
98