]> git.lizzy.rs Git - plan9front.git/blobdiff - sys/src/9/boot/bootmkfile
kernel: simplify /boot/boot: 28K down to less than 4K.
[plan9front.git] / sys / src / 9 / boot / bootmkfile
index af1fcb3f600b57f14a59a73be63402f0c8c8bcac..d34e54271bba81be1c1b6c310b9753d8b2029769 100644 (file)
@@ -1,22 +1,22 @@
-BOOTDIR=../boot
-BOOTLIB=$BOOTDIR/libboot.a$O
+boot.$O:       ../boot/boot.c
+       $CC -I../boot $CFLAGS ../boot/boot.c
 
-BOOTFILES=\
-       aux.$O\
-       boot.$O\
+boot:  boot.$O
+       $LD -o $target $prereq
 
-$BOOTLIB(%.$O):N:      %.$O
+# look for proto file in order:
+#      1) $CONF.bootfs.proto           (config specific)
+#      2) bootfs.proto                 (kernel specific)
+#      3) ../boot/bootfs.proto         (default generic)
+#
+BOOTFSPROTO=`{for(i in $CONF.bootfs.proto bootfs.proto ../boot/bootfs.proto) test -r $i && echo $i && exit}
 
-$BOOTLIB:      ${BOOTFILES:%=$BOOTLIB(%)}
-       names=`{membername $newprereq}
-       ar vu $BOOTLIB $names
-       rm $names
-
-$BOOTFILES:    $BOOTDIR/boot.h
-
-%.$O:  $BOOTDIR/%.c
-       $CC -I$BOOTDIR $CFLAGS $BOOTDIR/$stem.c
-
-tread: tread.c
-       $CC tread.c
-       $LD -o tread tread.8
+bootfs.paq:    $BOOTFSPROTO `{disk/mkfs -aos / $BOOTFSPROTO >[2]/dev/null}
+       mkdir -p bootfs
+       disk/mkfs -s / -d bootfs $BOOTFSPROTO
+       @{
+               cd bootfs/$objtype/bin
+               #strip * */* */*/* >[2]/dev/null || status=''
+       }
+       mkpaqfs -o $target bootfs
+       rm -rf bootfs