xref: /plan9/sys/lib/dist/pc/mkfile (revision 8f5875f3e9b20916b4c52ad4336922bc8653eb7b)
1s=/sys/lib/dist/pc
2x=`{bind -b /sys/lib/dist/bin/$cputype /bin}
3default:V: ndisk
4	ls -l ndisk
5
6SUB=`{ls sub inst}
7boot.raw:Q: proto $SUB
8	rm -rf boot
9	mkdir boot
10	bind /dev/null /sys/log/timesync
11	# make files writable for now.
12	cat proto | sed 's!d000!d775!;s!000!664!;s!555!775!;s!444!664!' >proto.cp
13	disk/mkfs -a proto.cp | disk/mkext -d boot
14	@{
15		cd boot/386
16		strip init
17		cd bin
18		strip * */* >[2]/dev/null || status=''
19	}
20	cat proto | sed 's!/.*!!' >proto.cp
21	disk/mkfs -a -s boot proto.cp | tee >{wc -c >[1=2]} |
22		touchfs 1000000000 >boot.raw
23
24boot.bz2:Q: boot.raw
25	ls -l boot.raw
26	bflz -n 32 < boot.raw >boot.bflz
27	ls -l boot.bflz
28	bzip2 -9 < boot.bflz >$target
29	ls -l $target
30
31root.bz2:Q: boot.bz2
32	{
33		echo bzfilesystem
34		cat boot.bz2
35		dd -if /dev/zero -bs 1024 -count 1 >[2]/dev/null
36	} >$target
37	ls -l $target
38
39/sys/src/9/pc/9pcflop.gz: root.bz2
40	@{
41		rfork n
42		cd /sys/src/9/pc
43		mk 'CONF=pcflop' 9pcflop.gz
44	}
45
46/sys/src/9/pc/9pccd.gz:
47	@{
48		cd /sys/src/9/pc
49		mk 'CONF=pccd' 9pccd.gz
50	}
51
529load: /386/9loadlite
53	cp $prereq $target
54	cp /386/9loadlitedebug 9loaddebug
55
56ndisk: 9load /sys/src/9/pc/9pcflop.gz plan9.ini /lib/vgadb
57	dd -if /dev/zero -of ndisk -bs 1024 -count 1440 >[2]/dev/null
58	disk/format -f -b /386/pbs -d ndisk \
59		9load /sys/src/9/pc/9pcflop.gz plan9.ini /lib/vgadb
60	ls -l ndisk
61
62# cannot list both 9pcflop.gz and 9pccd.gz because they cannot be built
63# in parallel.  stupid mk
64cddisk:D: 9load /sys/src/9/pc/9pcflop.gz plan9.ini.cd /lib/vgadb
65	mk -a /sys/src/9/pc/9pccd.gz
66	rfork n
67	bind plan9.ini.cd plan9.ini
68	dd -if /dev/zero -of cddisk -bs 1024 -count 2880 >[2]/dev/null
69	disk/format -t 3½QD -f -b /386/pbs -d cddisk \
70		9load /sys/src/9/pc/9pcflop.gz /sys/src/9/pc/9pccd.gz plan9.ini /lib/vgadb
71	ls -l cddisk
72
73clean:V:
74	rm -rf boot boot.bz2 boot.bflz boot.raw root.bz2 9pcflop ndisk 9load cddisk proto.cp 9loaddebug
75
76install:V: ndisk 9loaddebug
77	9fs outside
78	dst=/n/outside/sys/lib/dist/web.protect
79	cp 9loaddebug $dst
80	gzip -9 < ndisk > $dst/plan9.flp.gz
81	#mk clean
82
83test:V: ndisk 9loaddebug
84	cp 9loaddebug ../web.protect2/n9loaddebug
85	cp ndisk ../web.protect2/ndisk
86
87cd0:D:	cddisk
88	rm -f cd0
89	disk/mk9660 -9cj -v 'Plan 9 4th Edition' -s . -p cd0.proto -b cddisk cd0
90