summaryrefslogtreecommitdiff
path: root/sys/src/9/boot/bootmkfile
blob: e2c73d7eb3566bedf2dadc3371a45a797a719ae1 (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
BOOTDIR=../boot

BOOTFILES=\
	aux.$O\
	boot.$O\
	printstub.$O\

$BOOTFILES:	$BOOTDIR/boot.h

%.$O:	$BOOTDIR/%.c
	$CC -I$BOOTDIR $CFLAGS $BOOTDIR/$stem.c

boot:	$BOOTFILES
	$LD -o $target $BOOTFILES

BOOTFSPROTO=$BOOTDIR/bootfs.proto

bootfs.paq:	$BOOTFSPROTO \
		`{disk/mkfs -s / -ax $BOOTFSPROTO >[2]/dev/null \
			| awk '/^end of archive/{exit}{print $1}' \
			| while(x=`{read}){test -f $x && echo $x}}
	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