Makefile revision 1.12
11.12Smrg# $NetBSD: Makefile,v 1.12 2002/01/21 13:46:26 mrg Exp $ 21.1Smrg 31.1SmrgTOP= ${.CURDIR}/.. 41.1SmrgMINIROOT= ${TOP}/../miniroot 51.3Seeh 61.3Seeh.include "${TOP}/Makefile.inc" 71.3Seeh 81.3Seeh.include <bsd.own.mk> # So we use /etc/mk.conf. 91.3Seeh.include <bsd.kernobj.mk> 101.3Seeh 111.1SmrgHACKSRC= ${TOP}/../utils/libhack 121.1SmrgSRCROOT= ${TOP}/../.. 131.1SmrgWARNS=1 141.12SmrgINSTKERN?= ${KERNOBJDIR}/INSTALL/netbsd 151.12SmrgGENERICKERN?= ${KERNOBJDIR}/GENERIC/netbsd 161.1Smrg 171.1SmrgAUXDEPENDS= dot.profile disktab.preinstall termcap.mini \ 181.1Smrg dist/base_obsolete dist/comp_obsolete \ 191.1Smrg dist/games_obsolete dist/man_obsolete dist/misc_obsolete \ 201.1Smrg dist/secr_obsolete dist/xbase_obsolete dist/xserver_obsolete 211.1SmrgAUXCLEAN= list ${CBIN}.conf dot.profile 221.1Smrg 231.1SmrgCBIN= ramdiskbin 241.1Smrg 251.1Smrg 261.11SmrgCSIZE?= 15360 271.2SmrgIMAGE?= miniroot.fs 281.12SmrgINSTALLSIZE?= 10240 291.12SmrgINSTALLIMAGE?= install.fs 301.1SmrgMDEC= ${DESTDIR}/usr/mdec 311.11SmrgMOUNT_POINT?= ${.OBJDIR}/mountpoint 321.1Smrg 331.1SmrgLISTS= list 341.1SmrgCRUNCHCONF= ${CBIN}.conf 351.6SenamiMTREECONF= mtree.conf 361.1Smrg 371.1SmrgCRUNCHGEN?= crunchgen 381.8SjmcMDSETIMAGE?= mdsetimage 391.7SjmcMTREE?= mtree 401.1SmrgDISKTYPE?= miniroot 411.1Smrg 421.12SmrgMAKEFSOPTS?= -o optimization=space,minfree=1,bsize=16k,fsize=2k 431.11Smrg 441.12Smrgall: netbsd.INSTALL ${INSTALLIMAGE} ${IMAGE} 451.3Seeh 461.12Smrgnetbsd.gz: ${GENERICKERN} 471.12Smrg gzip -9 < ${GENERICKERN} > netbsd.gz 481.12Smrg 491.12Smrgnetbsd.INSTALL: ${INSTKERN} ${INSTALLIMAGE} 501.12Smrg cp ${INSTKERN} netbsd.tmp 511.12Smrg ${MDSETIMAGE} -v netbsd.tmp ${INSTALLIMAGE} 521.11Smrg ${STRIP} netbsd.tmp 531.3Seeh mv netbsd.tmp ${.TARGET} 541.3Seeh 551.12Smrg${INSTALLIMAGE} ${IMAGE}: ${CBIN} ${AUXDEPENDS} ${MTREECONF} ${LISTS} dot.profile netbsd.gz 561.11Smrg @echo "Building miniroot tree..." 571.11Smrg -rm -rf ${MOUNT_POINT} 581.11Smrg mkdir -m 755 ${MOUNT_POINT} 591.7Sjmc ${MTREE} -def ${.CURDIR}/${MTREECONF} -p ${MOUNT_POINT}/ -u 601.1Smrg TOPDIR=${TOP} CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} \ 611.1Smrg KERNOBJDIR=${KERNOBJDIR} \ 621.1Smrg TARGDIR=${MOUNT_POINT} sh ${TOP}/runlist.sh ${LISTS} 631.12Smrg @echo "Creating install image..." 641.12Smrg -rm -f ${INSTALLIMAGE} 651.12Smrg ${MAKEFS} -t ffs -B be -s ${INSTALLSIZE}b ${MAKEFSOPTS} \ 661.12Smrg -o nsectors=1,ntracks=${INSTALLSIZE} \ 671.12Smrg ${INSTALLIMAGE}.tmp ${MOUNT_POINT} && mv ${INSTALLIMAGE}.tmp ${INSTALLIMAGE} 681.12Smrg @echo "Copying in GENERIC kernel..." 691.12Smrg cp netbsd.gz ${MOUNT_POINT}/netbsd 701.11Smrg @echo "Creating miniroot image..." 711.11Smrg -rm -f ${IMAGE} 721.11Smrg ${MAKEFS} -t ffs -B be -s ${CSIZE}b ${MAKEFSOPTS} \ 731.12Smrg -o nsectors=1,ntracks=${CSIZE} \ 741.11Smrg ${IMAGE}.tmp ${MOUNT_POINT} && mv ${IMAGE}.tmp ${IMAGE} 751.11Smrg # use sunlabel? 761.11Smrg #-disklabel -f ${.CURDIR}/disktab -rw ${VND_CDEV} ${DISKTYPE} 771.1Smrg @echo "installing new bootblocks" 781.11Smrg dd if=${MDEC}/bootblk of=${IMAGE} bs=512 count=15 conv=notrunc seek=1 791.1Smrg 801.1Smrgdot.profile: dot.profile.m4 811.1Smrg m4 -DMACHINE_ARCH=${MACHINE_ARCH} -DMACHINE=${MACHINE} \ 821.1Smrg ${.ALLSRC} > ${.TARGET} 831.1Smrg 841.1Smrg${LISTS}: ${LISTS}.m4 851.1Smrg m4 -DMACHINE_ARCH=${MACHINE_ARCH} -DMACHINE=${MACHINE} \ 861.1Smrg -DSRCROOT=${SRCROOT} ${.ALLSRC} > ${.TARGET} 871.1Smrg 881.1Smrg${CBIN}.conf: ${CBIN}.m4 891.1Smrg m4 -DMACHINE_ARCH=${MACHINE_ARCH} -DMACHINE=${MACHINE} \ 901.1Smrg ${.ALLSRC} > ${.TARGET} 911.1Smrg 921.1Smrg${CBIN}.mk ${CBIN}.cache ${CBIN}.c: ${CRUNCHCONF} 931.1Smrg ${CRUNCHGEN} -D ${SRCROOT} -L ${DESTDIR}/usr/lib ${.ALLSRC} 941.1Smrg 951.1Smrg${CBIN}: ${CBIN}.mk ${CBIN}.cache ${CBIN}.c 961.1Smrg ${MAKE} -f ${CBIN}.mk all 971.1Smrg 981.1Smrg# This is listed in ramdiskbin.conf but is built here. 991.1Smrg${CBIN}: libhack.o 1001.1Smrg 1011.1Smrg# Use stubs to eliminate some large stuff from libc 1021.1Smrg.include "${HACKSRC}/Makefile.inc" 1031.1Smrg 1041.1Smrg# turn off small gethostby* temporarily 1051.1SmrgHACKOBJS:= getcap.o getgrent.o getnet.o getnetgr.o getpwent.o setlocale.o yplib.o 1061.1Smrg 1071.1Smrgclean cleandir distclean: 1081.4Seeh /bin/rm -f *.core ${AUXCLEAN} ${IMAGE} netbsd.INSTALL ${CBIN} \ 1091.4Seeh ${CBIN}.mk ${CBIN}.cache *.o *.lo *.cro *.c 1101.1Smrg 1111.1Smrg.ifndef RELEASEDIR 1121.1Smrgrelease: 1131.1Smrg @echo setenv RELEASEDIR first 1141.1Smrg @false 1151.1Smrg.else 1161.4Seehrelease: $(IMAGE) netbsd.INSTALL 1171.2Smrg @mkdir -p $(RELEASEDIR)/installation/miniroot 1181.2Smrg gzip -c -9 < $(.OBJDIR)/miniroot.fs \ 1191.2Smrg > $(RELEASEDIR)/installation/miniroot/miniroot.fs.gz 1201.4Seeh @mkdir -p $(RELEASEDIR)/binary/kernels 1211.1Smrg.endif # RELEASEDIR check 1221.1Smrg 1231.1Smrg.include <bsd.own.mk> 1241.1Smrg.include <bsd.obj.mk> 1251.1Smrg.include <bsd.subdir.mk> 1261.1Smrg.include <bsd.sys.mk> 1271.9Sjmc.include <bsd.prog.mk> 128