Makefile revision 1.20
1#	$NetBSD: Makefile,v 1.20 2001/10/21 23:23:22 jmc Exp $
2
3.include "../../../Makefile.inc"
4.include <bsd.kernobj.mk>
5.include <bsd.own.mk>
6
7DISKBINDIR=	/installation/diskimage
8KERNBINDIR=	/binary/kernel
9
10IMAGE=		diskimage
11IMAGESIZE=	4096 # 512 byte blocks, update disktab.diskimage if changed
12DISKTAB=	${.CURDIR}/disktab.diskimage
13DISKTYPE=	"install diskimag"
14LABELPROTO=	${.CURDIR}/diskimage.label.proto
15NEWFSOPTS?=	-c 32 -B le -i 32768	# don't need many inodes!
16
17KERN=		${KERNOBJDIR}/RAMDISK/netbsd
18RAMDISK!=	cd ${.CURDIR}/../ramdisk; ${MAKE} echoimage
19CLEANFILES=	netbsd netbsd.gz netbsd.ecoff netbsd.ecoff.gz ${IMAGE}.gz
20
21VND?=		vnd0
22VND_DEV=	/dev/${VND}c
23VND_RDEV=	/dev/r${VND}c
24MOUNT_POINT?=	/mnt
25MDSETIMAGE?=	mdsetimage
26
27all:	netbsd.gz ${IMAGE}.gz
28
29netbsd.gz: ${KERN} ${RAMDISK}
30	cp ${KERN} netbsd
31	${MDSETIMAGE} -v netbsd ${RAMDISK}
32	elf2ecoff netbsd netbsd.ecoff
33	rm -f netbsd.ecoff.gz
34	gzip -9 netbsd.ecoff
35	rm -f netbsd.gz
36	gzip -9 netbsd
37
38${IMAGE}.gz: netbsd.gz ${DESTDIR}/usr/mdec/boot.pmax
39	dd if=/dev/zero of=${IMAGE} count=${IMAGESIZE}
40	vnconfig ${DISKTYPEARG} -v -c ${VND} ${IMAGE} ${VND_GEOM}
41	disklabel -R -r ${VND}  ${LABELPROTO}
42	newfs -B le -m 0 -o space ${NEWFSOPTS} ${VND_RDEV}
43	${DESTDIR}/usr/mdec/installboot ${VND_RDEV} \
44	    ${DESTDIR}/usr/mdec/bootxx_ffs
45	mount ${VND_DEV} ${MOUNT_POINT}
46	cp -p ${DESTDIR}/usr/mdec/boot.pmax ${MOUNT_POINT}
47	cp -p netbsd.gz ${MOUNT_POINT}/netbsd
48	@echo ""
49	@df -i ${MOUNT_POINT}
50	@echo ""
51	umount ${MOUNT_POINT}
52	vnconfig -u ${VND}
53	rm -f ${IMAGE}.gz
54	gzip -9 ${IMAGE}
55
56unconfig:
57	-umount -f ${MOUNT_POINT}
58	-vnconfig -u ${VND}
59	-/bin/rm -f ${IMAGE} ${IMAGE}.gz
60
61realinstall:
62	${INSTALL} ${RENAME} ${PRESERVE} ${COPY} -o root -g wheel \
63		-m ${NONBINMODE} ${IMAGE}.gz ${RELEASEDIR}${DISKBINDIR}
64	${INSTALL} ${RENAME} ${PRESERVE} ${COPY} -o root -g wheel \
65		-m ${BINMODE} netbsd.gz ${RELEASEDIR}${KERNBINDIR}/install.gz
66	${INSTALL} ${RENAME} ${PRESERVE} ${COPY} -o root -g wheel \
67		-m ${BINMODE} netbsd.ecoff.gz \
68		${RELEASEDIR}${KERNBINDIR}/install.ecoff.gz
69
70clean cleandir distclean:
71	rm -f ${CLEANFILES}
72
73# XXX!
74depend:
75dependall: depend all
76
77.include <bsd.obj.mk>
78.include "../Makefile.inc"
79