Makefile revision 1.5
1# $NetBSD: Makefile,v 1.5 2001/10/13 06:15:18 jmc Exp $ 2 3TOP?= ${.CURDIR}/.. 4ARCHDIR?= ${.CURDIR}/../miniroot 5 6.include "${TOP}/Makefile.inc" 7 8NETBOOTDIR= ${RELEASEDIR}/installation/netboot 9 10IMAGE= ramdisk.fs 11DISKIMAGE= diskimage.tgz 12 13CBIN= ramdiskbin 14CSIZE= 6144 # 512 byte blocks, update disktab.ramdisk if changed 15DISKTAB= ${.CURDIR}/disktab.ramdisk 16DISKTYPE= install-ramdisk 17MOUNT_POINT?= /mnt 18 19VND?= vnd0 20VND_DEV= /dev/${VND}c 21VND_RDEV= /dev/r${VND}c 22 23CLEANFILES= ${IMAGE} ${DISKIMAGE} ${CBIN} ${CBIN}.mk ${CBIN}.cache 24 25LISTS= ${.CURDIR}/list 26CRUNCHCONF= ${.CURDIR}/${CBIN}.conf 27MTREECONF= ${.CURDIR}/mtree.conf 28 29MTREE?= mtree 30 31realall: ${IMAGE} 32 33${IMAGE}: ${CBIN} 34 dd if=/dev/zero of=${IMAGE} count=${CSIZE} 35 vnconfig -v -c ${VND} ${IMAGE} 36 disklabel -rw -f ${DISKTAB} ${VND} ${DISKTYPE} 37 newfs -B be -m 0 -o space -i 5120 ${VND_RDEV} 38 mount ${VND_DEV} ${MOUNT_POINT} 39 ${MTREE} -def ${MTREECONF} -p ${MOUNT_POINT}/ -u 40 TOPDIR=${TOP} CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} ARCHDIR=${ARCHDIR} \ 41 KERNOBJDIR=${KERNOBJDIR} \ 42 TARGDIR=${MOUNT_POINT} sh ${TOP}/runlist.sh ${LISTS} 43 @echo "" 44 @df -i ${MOUNT_POINT} 45 @echo "" 46 @echo Building diskimage tar file... 47 tar cf - -C ${MOUNT_POINT} . | gzip -9 > ${DISKIMAGE} 48 @echo "" 49 umount ${MOUNT_POINT} 50 vnconfig -u ${VND} 51 52unconfig: 53 -umount -f ${MOUNT_POINT} 54 -vnconfig -u ${VND} 55 -/bin/rm -f ${IMAGE} 56 57${CBIN}.mk ${CBIN}.cache ${CBIN}.c: ${CRUNCHCONF} 58 crunchgen -D ${TOP}/../.. -L ${DESTDIR}/usr/lib ${.ALLSRC} 59 60${CBIN}: ${CBIN}.mk ${CBIN}.cache ${CBIN}.c 61 ${MAKE} -f ${CBIN}.mk all 62 63echoimage: 64 @echo ${.OBJDIR}/${IMAGE} 65 66.if !defined(RELEASEDIR) 67release: .USE 68 @echo setenv RELEASEDIR first! 69 @false 70.else 71release: ${DISKIMAGE} 72 -mkdir -p ${NETBOOTDIR} 73 ${INSTALL} ${RENAME} ${PRESERVE} ${COPY} -o root -g wheel \ 74 -m ${NONBINMODE} ${DISKIMAGE} ${NETBOOTDIR} 75.endif # !defined(RELEASEDIR) 76 77realinstall: release 78 79clean cleandir distclean: 80 /bin/rm -f *.core ${CLEANFILES} *.o *.cro *.c 81 82.include <bsd.own.mk> 83.include <bsd.obj.mk> 84.include <bsd.depall.mk> 85