12 DEVS=`{rc ../port/mkdevlist $CONF}
66 /$objtype/lib/libmemlayer.a\
67 /$objtype/lib/libmemdraw.a\
68 /$objtype/lib/libdraw.a\
69 /$objtype/lib/libip.a\
70 /$objtype/lib/libsec.a\
71 /$objtype/lib/libmp.a\
76 $p$CONF:DQ: $CONF.c $OBJ $LIB mkfile
77 $CC $CFLAGS '-DKERNDATE='`{date -n} $CONF.c
78 echo '# linking raw kernel' # H6: no headers, data segment aligned
79 $LD -l -o $target -H6 -R4096 -T$loadaddr $OBJ $CONF.$O $LIB
81 s$p$CONF:DQ: $CONF.$O $OBJ $LIB
82 echo '# linking kernel with symbols'
83 $LD -l -o $target -R4096 -T$loadaddr $OBJ $CONF.$O $LIB
87 gzip -9 <$p$CONF >$target
91 install:V: /$objtype/$p$CONF
93 /$objtype/$p$CONF:D: $p$CONF s$p$CONF
94 cp -x $p$CONF s$p$CONF /$objtype/ &
95 for(i in $EXTRACOPIES)
96 { 9fs $i && cp $p$CONF s$p$CONF /n/$i/$objtype && echo -n $i... & }
103 <|../port/mkbootrules $CONF
105 arch.$O clock.$O fpiarm.$O main.$O mmu.$O screen.$O syscall.$O trap.$O: \
106 /$objtype/include/ureg.h
108 fpi.$O fpiarm.$O fpimem.$O: fpi.h
109 l.$O lexception.$O lproc.$O mmu.$O: mem.h
110 l.$O lexception.$O lproc.$O armv6.$O armv7.$O: arm.s
112 main.$O: errstr.h init.h reboot.h
113 devmouse.$O mouse.$O screen.$O: screen.h
114 usbdwc.$O: dwcotg.h ../port/usb.h
115 arch.$O archbcm.$O archbcm2.$O clock.$O coproc.$O fpiarn.$O mmu.$O trap.$O vfp3.$O: arm.h mem.h
117 init.h:D: ../port/initcode.c init9.s
118 $CC ../port/initcode.c
120 $LD -l -R1 -s -o init.out init9.$O initcode.$O /$objtype/lib/libc.a
121 {echo 'uchar initcode[]={'
123 sed -e 's/^[0-9a-f]+ //' -e 's/ ([0-9a-f][0-9a-f])/0x\1,/g'
126 reboot.h:D: rebootcode.s arm.s arm.h mem.h
128 # -T arg is REBOOTADDR
129 $LD -l -s -T0x1c00 -R4 -o reboot.out rebootcode.$O
130 {echo 'uchar rebootcode[]={'
132 sed -e '1,2d' -e 's/^[0-9a-f]+ //' -e 's/ ([0-9a-f][0-9a-f])/0x\1,/g'
133 echo '};'} > reboot.h
135 errstr.h:D: ../port/mkerrstr ../port/error.h
136 rc ../port/mkerrstr > errstr.h
139 rm -rf $p$CONF s$p$CONF errstr.h reboot.h $CONF.c boot$CONF.c