Makefile revision 1.10
1#	$NetBSD: Makefile,v 1.10 1999/12/28 10:54:20 simonb Exp $
2
3BINDIR=		/installation/netboot
4
5TOP?=		${.CURDIR}/..
6ARCHDIR?=        ${.CURDIR}/../../${MACHINE}/miniroot
7
8.include "${TOP}/Makefile.inc"
9IMAGE=		ramdisk.fs
10DISKIMAGE=	diskimage.tgz
11
12CBIN=		ramdiskbin
13#CSIZE?=	6144
14CSIZE?=		4096
15MOUNT_POINT?=	/mnt
16# DEV/RDEV file system device, CDEV/RDEV vnconfig device
17VND?=		vnd0
18VND_DEV=	/dev/${VND}a
19VND_RDEV=	/dev/r${VND}a
20VND_CDEV=	/dev/${VND}c
21VND_CRDEV=	/dev/r${VND}c
22MDEC=		${DESTDIR}/usr/mdec
23
24CLEANFILES=	${IMAGE} ${DISKIMAGE} ${CBIN} ${CBIN}.mk ${CBIN}.cache
25
26LISTS=		list
27CRUNCHCONF=	${CBIN}.conf
28MTREE=		mtree.conf
29
30all: ${IMAGE}
31
32${IMAGE}: ${CBIN} 
33	dd if=/dev/zero of=${IMAGE} count=${CSIZE}
34	vnconfig -v -c ${VND_CDEV} ${IMAGE}
35#	disklabel -rw ${VND_CDEV} ${DISKTYPE}
36	newfs -B le -m 0 -o space -i 5120 ${VND_RDEV}
37	mount ${VND_DEV} ${MOUNT_POINT}
38	mtree -def ${.CURDIR}/${MTREE} -p ${MOUNT_POINT}/ -u
39	TOPDIR=${TOP} CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} ARCHDIR=${ARCHDIR} \
40	    TARGDIR=${MOUNT_POINT} sh ${TOP}/src/runlist.sh ${.CURDIR}/${LISTS}
41	@echo ""
42	@df -i ${MOUNT_POINT}
43	@echo ""
44	@echo Building diskimage tar file...
45	tar cf - -C ${MOUNT_POINT} . | gzip -9 > ${DISKIMAGE}
46	@echo ""
47	umount ${MOUNT_POINT}
48	vnconfig -u ${VND_CDEV}
49
50unconfig:
51	-umount -f ${MOUNT_POINT}
52	-vnconfig -u ${VND_DEV}
53	-/bin/rm -f ${IMAGE}
54
55${CBIN}.mk ${CBIN}.cache ${CBIN}.c: ${CRUNCHCONF}
56	crunchgen -D ${TOP}/../.. -L ${DESTDIR}/usr/lib ${.ALLSRC}
57
58${CBIN}: ${CBIN}.mk ${CBIN}.cache ${CBIN}.c
59	make -f ${CBIN}.mk all
60
61echoimage:
62	@echo ${.OBJDIR}/${IMAGE}
63
64realinstall:
65	${INSTALL} ${RENAME} ${PRESERVE} ${COPY} -o root -g wheel \
66		-m ${NONBINMODE} ${DISKIMAGE} ${RELEASEDIR}${BINDIR}
67
68clean cleandir distclean:
69	/bin/rm -f *.core ${CLEANFILES} *.o *.cro *.c
70
71# XXX!
72depend:
73
74.include <bsd.own.mk>
75.include <bsd.obj.mk>
76.include "../Makefile.inc"
77