Makefile.tarfloppy revision 1.7
11.7Slukem# $NetBSD: Makefile.tarfloppy,v 1.7 2003/01/03 15:34:32 lukem Exp $ 21.1Slukem# 31.1Slukem# Makefile snippet to create a set of ustar floppies. 41.1Slukem# Each floppy has an 8KB header, followed by part or all of the ustar archive. 51.1Slukem# 61.1Slukem 71.1Slukem# 81.1Slukem# Required variables: 91.3Slukem# NETBSDSRCDIR Top level of src tree (set by <bsd.own.mk>) 101.1Slukem# FLOPPYBASE Basename of floppies. Floppy number ${n} will 111.5Slukem# be generated as ${FLOPPYBASE}${n}${FLOPPYSUFFIX} 121.1Slukem# FLOPPYSIZE Size of floppy in 512 byte blocks. 131.1Slukem# FLOPPYFILES Files to write to floppy. 141.1Slukem# Usually set to "boot ${FLOPPYMETAFILE} netbsd" 151.1Slukem# 161.1Slukem 171.1Slukem# 181.1Slukem# Optional variables: 191.1Slukem# FLOPPY_BOOT Bootstrap to use as "boot". 201.1Slukem# FLOPPY_BOOT_STRIP If yes, strip "boot" before use. 211.1Slukem# FLOPPY_NETBSD Kernel to to use as "netbsd". 221.4Slukem# FLOPPYINSTBOOT Installboot program to use. 231.4Slukem# USTAR image file is in @IMAGE@. 241.4Slukem# FLOPPYMAX Maximum number of floppies to build. 251.4Slukem# If 1, the final image is installed as 261.5Slukem# ${FLOPPYBASE}${FLOPPYSUFFIX} instead of 271.5Slukem# ${FLOPPYBASE}1${FLOPPYSUFFIX} 281.4Slukem# FLOPPYMETAFILE USTAR metafile(s) (optional) 291.4Slukem# FLOPPYPAD If defined, pad the last floppy to ${FLOPPYSIZE} 301.5Slukem# FLOPPYSUFFIX Suffix of created floppies. 311.4Slukem# FLOPPY_RELEASEDIR Where to install release floppies. 321.1Slukem# 331.1Slukem 341.1Slukem.if defined(FLOPPY_BOOT) # { 351.1SlukemCLEANFILES+= boot 361.1Slukemboot: ${FLOPPY_BOOT} 371.1Slukem @echo "Copying ${.ALLSRC} to boot" 381.1Slukem @rm -f boot 391.1Slukem @cp ${.ALLSRC} boot 401.1Slukem.if defined(FLOPPY_BOOT_STRIP) 411.1Slukem @${STRIP} boot 421.1Slukem.endif 431.1Slukem.endif # FLOPPY_BOOT # } 441.1Slukem 451.1Slukem 461.1Slukem.if defined(FLOPPY_NETBSD) # { 471.1SlukemCLEANFILES+= netbsd 481.1Slukemnetbsd: ${FLOPPY_NETBSD} 491.5Slukem @echo "Copying ${.ALLSRC} to ${.TARGET}" 501.5Slukem @rm -f ${.TARGET} 511.5Slukem @cp ${.ALLSRC} ${.TARGET} 521.1Slukem.endif # FLOPPY_NETBSD # } 531.1Slukem 541.1Slukem 551.1Slukem.if defined(FLOPPYMETAFILE) # { 561.1SlukemCLEANFILES+= ${FLOPPYMETAFILE} 571.1Slukem${FLOPPYMETAFILE}: 581.1Slukem @echo "Creating ${FLOPPYMETAFILE}" 591.1Slukem @rm -f ${FLOPPYMETAFILE} 601.1Slukem @touch ${FLOPPYMETAFILE} 611.1Slukem.endif # FLOPPYMETAFILE # } 621.1Slukem 631.1Slukem 641.5Slukem${FLOPPYBASE}1${FLOPPYSUFFIX}: ${FLOPPYFILES} ${DISTRIBDIR}/common/buildfloppies.sh 651.5Slukem @echo "Creating ${FLOPPYBASE}1${FLOPPYSUFFIX} from: ${FLOPPYFILES}" 661.2Sbjh21 PAX=${PAX:Q} sh ${DISTRIBDIR}/common/buildfloppies.sh \ 671.1Slukem ${FLOPPYINSTBOOT:D-i ${FLOPPYINSTBOOT}} ${FLOPPYPAD:D-p} \ 681.5Slukem ${FLOPPYMAX:D-m ${FLOPPYMAX}} ${FLOPPYSUFFIX:D-s ${FLOPPYSUFFIX}} \ 691.1Slukem ${FLOPPYBASE} ${FLOPPYSIZE} ${FLOPPYFILES} 701.1Slukem 711.5SlukemCLEANFILES+= ${FLOPPYBASE}?${FLOPPYSUFFIX} 721.1Slukem 731.1Slukem 741.5Slukemrealall: ${FLOPPYBASE}1${FLOPPYSUFFIX} 751.1Slukem 761.4Slukem.if defined(FLOPPY_RELEASEDIR) 771.6Slukemrelease:: check_RELEASEDIR .WAIT ${FLOPPYBASE}1${FLOPPYSUFFIX} 781.5Slukem if [ -e ${FLOPPYBASE}2${FLOPPYSUFFIX} ]; then \ 791.5Slukem ${RELEASE_INSTALL} ${FLOPPYBASE}?${FLOPPYSUFFIX} \ 801.7Slukem ${RELEASEDIR}/${MACHINE}/${FLOPPY_RELEASEDIR}; \ 811.1Slukem else \ 821.5Slukem ${RELEASE_INSTALL} ${FLOPPYBASE}1${FLOPPYSUFFIX} \ 831.7Slukem ${RELEASEDIR}/${MACHINE}/${FLOPPY_RELEASEDIR}/${FLOPPYBASE}${FLOPPYSUFFIX}; \ 841.1Slukem fi 851.1Slukem.endif 86