blob: 87e5ac7b342985789fb7e5171cfb4a4ab879c456 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
|
CONF=indy
CONFLIST=indy
objtype=mips
</$objtype/mkfile
p=9
# must match mem.h
# KTZERO=0x88020000
KTZERO=0x88020000
# must match mem.h
UTZERO=0x4020
# CFLAGS=$CFLAGS -DFPEMUDEBUG
DEVS=`{rc ../port/mkdevlist $CONF}
PORT=\
alarm.$O\
alloc.$O\
allocb.$O\
auth.$O\
cache.$O\
chan.$O\
clock.$O\
dev.$O\
edf.$O\
fault.$O\
fptrap.$O\
mul64fract.$O\
page.$O\
parse.$O\
pgrp.$O\
portclock.$O\
print.$O\
proc.$O\
qio.$O\
qlock.$O\
rdb.$O\
rebootcmd.$O\
segment.$O\
swap.$O\
syscallfmt.$O\
sysfile.$O\
sysproc.$O\
taslock.$O\
tod.$O\
xalloc.$O\
OBJ=\
l.$O\
faultmips.$O\
main.$O\
mmu.$O\
random.$O\
trap.$O\
$CONF.root.$O\
$CONF.rootc.$O\
$DEVS\
$PORT\
LIB=\
/$objtype/lib/libmemlayer.a\
/$objtype/lib/libmemdraw.a\
/$objtype/lib/libdraw.a\
/$objtype/lib/libauth.a\
/$objtype/lib/libsec.a\
/$objtype/lib/libmp.a\
/$objtype/lib/libip.a\
/$objtype/lib/libc.a\
$p$CONF: $OBJ $CONF.c $LIB
$CC $CFLAGS '-DKERNDATE='`{date -n} $CONF.c
$LD -o $target -l -R8 -H3 -T$KTZERO $OBJ $CONF.$O $LIB
size $target
install:V: $p$CONF
cp $p$CONF /$objtype/
<../boot/bootmkfile
<../port/portmkfile
<|../port/mkbootrules $CONF
init.h: init9.s ../port/initcode.c /sys/src/libc/9syscall/sys.h
va init9.s
vc ../port/initcode.c
vl -T$UTZERO -R4 -o init.out init9.$O initcode.$O
{echo 'uchar initcode[]={'
xd -r -1x init.out |
sed -e 's/^[0-9a-f]+ //' -e 's/ ([0-9a-f][0-9a-f])/0x\1,/g'
echo '};'} > init.h
faultmips.$O mmu.$O syscall.$O trap.$O: /$objtype/include/ureg.h
main.$O: /$objtype/include/ureg.h errstr.h init.h
%.clean:V:
rm -f $stem.c [9bz]$stem [9bz]$stem.gz boot$stem.* init.h
|