Makefile.tarfloppy revision 1.4
11.4Slukem# $NetBSD: Makefile.tarfloppy,v 1.4 2002/05/02 18:02:31 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.1Slukem# be generated as ${FLOPPYBASE}${n}.fs 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.4Slukem# ${FLOPPYBASE}.fs instead of ${FLOPPYBASE}1.fs 271.4Slukem# FLOPPYMETAFILE USTAR metafile(s) (optional) 281.4Slukem# FLOPPYPAD If defined, pad the last floppy to ${FLOPPYSIZE} 291.4Slukem# FLOPPY_RELEASEDIR Where to install release floppies. 301.1Slukem# 311.1Slukem 321.1Slukem 331.1Slukem.if defined(FLOPPY_BOOT) # { 341.1SlukemCLEANFILES+= boot 351.1Slukemboot: ${FLOPPY_BOOT} 361.1Slukem @echo "Copying ${.ALLSRC} to boot" 371.1Slukem @rm -f boot 381.1Slukem @cp ${.ALLSRC} boot 391.1Slukem.if defined(FLOPPY_BOOT_STRIP) 401.1Slukem @${STRIP} boot 411.1Slukem.endif 421.1Slukem.endif # FLOPPY_BOOT # } 431.1Slukem 441.1Slukem 451.1Slukem.if defined(FLOPPY_NETBSD) # { 461.1SlukemCLEANFILES+= netbsd 471.1Slukemnetbsd: ${FLOPPY_NETBSD} 481.1Slukem @echo "Copying ${.ALLSRC} to netbsd" 491.1Slukem @rm -f netbsd 501.1Slukem @cp ${.ALLSRC} netbsd 511.1Slukem.endif # FLOPPY_NETBSD # } 521.1Slukem 531.1Slukem 541.1Slukem.if defined(FLOPPYMETAFILE) # { 551.1SlukemCLEANFILES+= ${FLOPPYMETAFILE} 561.1Slukem${FLOPPYMETAFILE}: 571.1Slukem @echo "Creating ${FLOPPYMETAFILE}" 581.1Slukem @rm -f ${FLOPPYMETAFILE} 591.1Slukem @touch ${FLOPPYMETAFILE} 601.1Slukem.endif # FLOPPYMETAFILE # } 611.1Slukem 621.1Slukem 631.1Slukem${FLOPPYBASE}1.fs: ${FLOPPYFILES} ${DISTRIBDIR}/common/buildfloppies.sh 641.1Slukem @echo "Creating ${FLOPPYBASE}1.fs from: ${FLOPPYFILES}" 651.2Sbjh21 PAX=${PAX:Q} sh ${DISTRIBDIR}/common/buildfloppies.sh \ 661.2Sbjh21 ${FLOPPYMAX:D-m ${FLOPPYMAX}} \ 671.1Slukem ${FLOPPYINSTBOOT:D-i ${FLOPPYINSTBOOT}} ${FLOPPYPAD:D-p} \ 681.1Slukem ${FLOPPYBASE} ${FLOPPYSIZE} ${FLOPPYFILES} 691.1Slukem 701.1SlukemCLEANFILES+= ${FLOPPYBASE}?.fs 711.1Slukem 721.1Slukem 731.1Slukemrealall: ${FLOPPYBASE}1.fs 741.1Slukem 751.4Slukem.if defined(FLOPPY_RELEASEDIR) 761.1Slukemrelease: check_RELEASEDIR .WAIT ${FLOPPYBASE}1.fs 771.1Slukem if [ -e ${FLOPPYBASE}2.fs ]; then \ 781.4Slukem ${RELEASE_INSTALL} ${FLOPPYBASE}?.fs \ 791.4Slukem ${RELEASEDIR}/${FLOPPY_RELEASEDIR}; \ 801.1Slukem else \ 811.4Slukem ${RELEASE_INSTALL} ${FLOPPYBASE}1.fs \ 821.4Slukem ${RELEASEDIR}/${FLOPPY_RELEASEDIR}/${FLOPPYBASE}.fs; \ 831.1Slukem fi 841.1Slukem.endif 85