1 1.1 mrg # $NetBSD: Makefile,v 1.1 2001/01/07 09:30:19 mrg Exp $ 2 1.1 mrg 3 1.1 mrg TOP= ${.CURDIR}/.. 4 1.1 mrg MINIROOT= ${TOP}/../miniroot 5 1.1 mrg HACKSRC= ${TOP}/../utils/libhack 6 1.1 mrg SRCROOT= ${TOP}/../.. 7 1.1 mrg WARNS=1 8 1.1 mrg 9 1.1 mrg .if ${MACHINE_ARCH} == "i386" 10 1.1 mrg RAW_PART= d 11 1.1 mrg .else 12 1.1 mrg RAW_PART= c 13 1.1 mrg .endif 14 1.1 mrg 15 1.1 mrg # Need to add more cases 16 1.1 mrg .if ${MACHINE_ARCH} == "sparc" || ${MACHINE_ARCH} == "m68k" || \ 17 1.1 mrg ${MACHINE_ARCH} == "sparc64" 18 1.1 mrg FS_END= be 19 1.1 mrg .else # i386, pmax 20 1.1 mrg FS_END= le 21 1.1 mrg .endif 22 1.1 mrg 23 1.1 mrg AUXDEPENDS= dot.profile disktab.preinstall termcap.mini \ 24 1.1 mrg dist/base_obsolete dist/comp_obsolete \ 25 1.1 mrg dist/games_obsolete dist/man_obsolete dist/misc_obsolete \ 26 1.1 mrg dist/secr_obsolete dist/xbase_obsolete dist/xserver_obsolete 27 1.1 mrg AUXCLEAN= list ${CBIN}.conf dot.profile 28 1.1 mrg 29 1.1 mrg CBIN= ramdiskbin 30 1.1 mrg 31 1.1 mrg .if ${MACHINE_ARCH} == "sparc64" 32 1.1 mrg CSIZE?= 10240 33 1.1 mrg .endif 34 1.1 mrg 35 1.1 mrg MOUNT_POINT?= /mnt 36 1.1 mrg # DEV/RDEV file system device, CDEV/RDEV vnconfig device 37 1.1 mrg VND?= vnd0 38 1.1 mrg VND_DEV= /dev/${VND}c 39 1.1 mrg VND_RDEV= /dev/r${VND}c 40 1.1 mrg VND_CDEV= /dev/${VND}${RAW_PART} 41 1.1 mrg VND_CRDEV= /dev/r${VND}${RAW_PART} 42 1.1 mrg IMAGE?= ramdisk.fs 43 1.1 mrg CSIZE?= 3312 44 1.1 mrg MDEC= ${DESTDIR}/usr/mdec 45 1.1 mrg 46 1.1 mrg LISTS= list 47 1.1 mrg CRUNCHCONF= ${CBIN}.conf 48 1.1 mrg MTREE= mtree.conf 49 1.1 mrg 50 1.1 mrg CRUNCHGEN?= crunchgen 51 1.1 mrg DISKTYPE?= miniroot 52 1.1 mrg 53 1.1 mrg all: ${CBIN} ${AUXDEPENDS} ${MTREE} ${LISTS} dot.profile 54 1.1 mrg dd if=/dev/zero of=${IMAGE} count=${CSIZE} 55 1.1 mrg vnconfig -v -c ${VND_CDEV} ${IMAGE} 56 1.1 mrg disklabel -f ${.CURDIR}/disktab -rw ${VND_CDEV} ${DISKTYPE} 57 1.1 mrg newfs -B ${FS_END} -m 0 -o space -i 5120 -c 80 ${VND_RDEV} ${DISKTYPE} 58 1.1 mrg mount -o softdep ${VND_DEV} ${MOUNT_POINT} 59 1.1 mrg mtree -def ${.CURDIR}/${MTREE} -p ${MOUNT_POINT}/ -u 60 1.1 mrg TOPDIR=${TOP} CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} \ 61 1.1 mrg KERNOBJDIR=${KERNOBJDIR} \ 62 1.1 mrg TARGDIR=${MOUNT_POINT} sh ${TOP}/runlist.sh ${LISTS} 63 1.1 mrg @echo "" 64 1.1 mrg @df -i ${MOUNT_POINT} 65 1.1 mrg @echo "" 66 1.1 mrg @echo "installing new bootblocks" 67 1.1 mrg ${MDEC}/binstall -m ${DESTDIR}/usr/mdec -u -v ffs ${MOUNT_POINT} 68 1.1 mrg umount ${MOUNT_POINT} 69 1.1 mrg vnconfig -u ${VND_CDEV} 70 1.1 mrg 71 1.1 mrg unconfig: 72 1.1 mrg -umount -f ${MOUNT_POINT} 73 1.1 mrg -vnconfig -u ${VND_DEV} 74 1.1 mrg -/bin/rm -f ${IMAGE} 75 1.1 mrg 76 1.1 mrg dot.profile: dot.profile.m4 77 1.1 mrg m4 -DMACHINE_ARCH=${MACHINE_ARCH} -DMACHINE=${MACHINE} \ 78 1.1 mrg ${.ALLSRC} > ${.TARGET} 79 1.1 mrg 80 1.1 mrg ${LISTS}: ${LISTS}.m4 81 1.1 mrg m4 -DMACHINE_ARCH=${MACHINE_ARCH} -DMACHINE=${MACHINE} \ 82 1.1 mrg -DSRCROOT=${SRCROOT} ${.ALLSRC} > ${.TARGET} 83 1.1 mrg 84 1.1 mrg ${CBIN}.conf: ${CBIN}.m4 85 1.1 mrg m4 -DMACHINE_ARCH=${MACHINE_ARCH} -DMACHINE=${MACHINE} \ 86 1.1 mrg ${.ALLSRC} > ${.TARGET} 87 1.1 mrg 88 1.1 mrg ${CBIN}.mk ${CBIN}.cache ${CBIN}.c: ${CRUNCHCONF} 89 1.1 mrg ${CRUNCHGEN} -D ${SRCROOT} -L ${DESTDIR}/usr/lib ${.ALLSRC} 90 1.1 mrg 91 1.1 mrg ${CBIN}: ${CBIN}.mk ${CBIN}.cache ${CBIN}.c 92 1.1 mrg ${MAKE} -f ${CBIN}.mk all 93 1.1 mrg 94 1.1 mrg # This is listed in ramdiskbin.conf but is built here. 95 1.1 mrg ${CBIN}: libhack.o 96 1.1 mrg 97 1.1 mrg # Use stubs to eliminate some large stuff from libc 98 1.1 mrg .include "${HACKSRC}/Makefile.inc" 99 1.1 mrg 100 1.1 mrg # turn off small gethostby* temporarily 101 1.1 mrg HACKOBJS:= getcap.o getgrent.o getnet.o getnetgr.o getpwent.o setlocale.o yplib.o 102 1.1 mrg 103 1.1 mrg clean cleandir distclean: 104 1.1 mrg /bin/rm -f *.core ${AUXCLEAN} ${IMAGE} ${CBIN} ${CBIN}.mk ${CBIN}.cache *.o *.lo *.cro *.c 105 1.1 mrg 106 1.1 mrg .ifndef RELEASEDIR 107 1.1 mrg release: 108 1.1 mrg @echo setenv RELEASEDIR first 109 1.1 mrg @false 110 1.1 mrg .else 111 1.1 mrg release: $(IMAGE) 112 1.1 mrg @mkdir -p $(RELEASEDIR)/installation/ramdisk 113 1.1 mrg gzip -c -9 < $(.OBJDIR)/ramdisk.fs \ 114 1.1 mrg > $(RELEASEDIR)/installation/ramdisk/ramdisk.fs.gz 115 1.1 mrg .endif # RELEASEDIR check 116 1.1 mrg 117 1.1 mrg .include <bsd.own.mk> 118 1.1 mrg .include <bsd.obj.mk> 119 1.1 mrg .include <bsd.subdir.mk> 120 1.1 mrg .include <bsd.sys.mk> 121