1# $NetBSD: Makefile,v 1.3 2001/03/05 05:07:45 wdk 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 27MTREE= ${.CURDIR}/mtree.conf 28 29realall: ${IMAGE} 30 31${IMAGE}: ${CBIN} 32 dd if=/dev/zero of=${IMAGE} count=${CSIZE} 33 vnconfig -v -c ${VND} ${IMAGE} 34 disklabel -rw -f ${DISKTAB} ${VND} ${DISKTYPE} 35 newfs -B be -m 0 -o space -i 5120 ${VND_RDEV} 36 mount ${VND_DEV} ${MOUNT_POINT} 37 mtree -def ${MTREE} -p ${MOUNT_POINT}/ -u 38 TOPDIR=${TOP} CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} ARCHDIR=${ARCHDIR} \ 39 KERNOBJDIR=${KERNOBJDIR} \ 40 TARGDIR=${MOUNT_POINT} sh ${TOP}/runlist.sh ${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} 49 50unconfig: 51 -umount -f ${MOUNT_POINT} 52 -vnconfig -u ${VND} 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 64.if !defined(RELEASEDIR) 65release: .USE 66 @echo setenv RELEASEDIR first! 67 @false 68.else 69release: ${DISKIMAGE} 70 -mkdir -p ${NETBOOTDIR} 71 ${INSTALL} ${RENAME} ${PRESERVE} ${COPY} -o root -g wheel \ 72 -m ${NONBINMODE} ${DISKIMAGE} ${NETBOOTDIR} 73.endif # !defined(RELEASEDIR) 74 75realinstall: release 76 77clean cleandir distclean: 78 /bin/rm -f *.core ${CLEANFILES} *.o *.cro *.c 79 80.include <bsd.own.mk> 81.include <bsd.obj.mk> 82.include <bsd.depall.mk> 83