Home | History | Annotate | Line # | Download | only in common
Makefile.tarfloppy revision 1.8
      1  1.8  lukem #	$NetBSD: Makefile.tarfloppy,v 1.8 2003/03/11 07:18:38 lukem Exp $
      2  1.1  lukem #
      3  1.1  lukem # Makefile snippet to create a set of ustar floppies.
      4  1.1  lukem # Each floppy has an 8KB header, followed by part or all of the ustar archive.
      5  1.1  lukem #
      6  1.1  lukem # Required variables:
      7  1.3  lukem #	NETBSDSRCDIR	Top level of src tree (set by <bsd.own.mk>)
      8  1.1  lukem #	FLOPPYBASE	Basename of floppies. Floppy number ${n} will
      9  1.5  lukem #			be generated as ${FLOPPYBASE}${n}${FLOPPYSUFFIX}
     10  1.1  lukem #	FLOPPYSIZE	Size of floppy in 512 byte blocks.
     11  1.1  lukem #	FLOPPYFILES	Files to write to floppy.
     12  1.1  lukem #			Usually set to "boot ${FLOPPYMETAFILE} netbsd"
     13  1.1  lukem #
     14  1.1  lukem # Optional variables:
     15  1.1  lukem #	FLOPPY_BOOT		Bootstrap to use as "boot".
     16  1.1  lukem #	FLOPPY_BOOT_STRIP	If yes, strip "boot" before use.
     17  1.1  lukem #	FLOPPY_NETBSD		Kernel to to use as "netbsd".
     18  1.4  lukem #	FLOPPYINSTBOOT		Installboot program to use.
     19  1.4  lukem #				USTAR image file is in @IMAGE@.
     20  1.4  lukem #	FLOPPYMAX		Maximum number of floppies to build.
     21  1.4  lukem #				If 1, the final image is installed as
     22  1.5  lukem #				${FLOPPYBASE}${FLOPPYSUFFIX} instead of
     23  1.5  lukem #				${FLOPPYBASE}1${FLOPPYSUFFIX}
     24  1.4  lukem #	FLOPPYMETAFILE		USTAR metafile(s) (optional)
     25  1.4  lukem #	FLOPPYPAD		If defined, pad the last floppy to ${FLOPPYSIZE}
     26  1.5  lukem #	FLOPPYSUFFIX		Suffix of created floppies.
     27  1.4  lukem #	FLOPPY_RELEASEDIR	Where to install release floppies.
     28  1.1  lukem #
     29  1.1  lukem 
     30  1.8  lukem .if !defined(_MAKEFILE_TARFLOPPY_)
     31  1.8  lukem _MAKEFILE_TARFLOPPY_=1
     32  1.8  lukem 
     33  1.8  lukem 
     34  1.1  lukem .if defined(FLOPPY_BOOT)				# {
     35  1.1  lukem CLEANFILES+=	boot
     36  1.1  lukem boot: ${FLOPPY_BOOT}
     37  1.1  lukem 	@echo "Copying ${.ALLSRC} to boot"
     38  1.1  lukem 	@rm -f boot
     39  1.1  lukem 	@cp ${.ALLSRC} boot
     40  1.1  lukem .if defined(FLOPPY_BOOT_STRIP)
     41  1.1  lukem 	@${STRIP} boot
     42  1.1  lukem .endif
     43  1.1  lukem .endif	# FLOPPY_BOOT					# }
     44  1.1  lukem 
     45  1.1  lukem 
     46  1.1  lukem .if defined(FLOPPY_NETBSD)				# {
     47  1.1  lukem CLEANFILES+=	netbsd
     48  1.1  lukem netbsd: ${FLOPPY_NETBSD}
     49  1.5  lukem 	@echo "Copying ${.ALLSRC} to ${.TARGET}"
     50  1.5  lukem 	@rm -f ${.TARGET}
     51  1.5  lukem 	@cp ${.ALLSRC} ${.TARGET}
     52  1.1  lukem .endif	# FLOPPY_NETBSD					# }
     53  1.1  lukem 
     54  1.1  lukem 
     55  1.1  lukem .if defined(FLOPPYMETAFILE)				# {
     56  1.1  lukem CLEANFILES+=	${FLOPPYMETAFILE}
     57  1.1  lukem ${FLOPPYMETAFILE}:
     58  1.1  lukem 	@echo "Creating ${FLOPPYMETAFILE}"
     59  1.1  lukem 	@rm -f ${FLOPPYMETAFILE}
     60  1.1  lukem 	@touch ${FLOPPYMETAFILE}
     61  1.1  lukem .endif	# FLOPPYMETAFILE				# }
     62  1.1  lukem 
     63  1.1  lukem 
     64  1.5  lukem ${FLOPPYBASE}1${FLOPPYSUFFIX}: ${FLOPPYFILES} ${DISTRIBDIR}/common/buildfloppies.sh
     65  1.5  lukem 	@echo "Creating ${FLOPPYBASE}1${FLOPPYSUFFIX} from: ${FLOPPYFILES}"
     66  1.2  bjh21 	PAX=${PAX:Q} sh ${DISTRIBDIR}/common/buildfloppies.sh \
     67  1.1  lukem 	    ${FLOPPYINSTBOOT:D-i ${FLOPPYINSTBOOT}} ${FLOPPYPAD:D-p} \
     68  1.5  lukem 	    ${FLOPPYMAX:D-m ${FLOPPYMAX}} ${FLOPPYSUFFIX:D-s ${FLOPPYSUFFIX}} \
     69  1.1  lukem 	    ${FLOPPYBASE} ${FLOPPYSIZE} ${FLOPPYFILES}
     70  1.1  lukem 
     71  1.5  lukem CLEANFILES+=	${FLOPPYBASE}?${FLOPPYSUFFIX}
     72  1.1  lukem 
     73  1.1  lukem 
     74  1.5  lukem realall: ${FLOPPYBASE}1${FLOPPYSUFFIX}
     75  1.1  lukem 
     76  1.4  lukem .if defined(FLOPPY_RELEASEDIR)
     77  1.6  lukem release:: check_RELEASEDIR .WAIT ${FLOPPYBASE}1${FLOPPYSUFFIX}
     78  1.5  lukem 	if [ -e ${FLOPPYBASE}2${FLOPPYSUFFIX} ]; then \
     79  1.5  lukem 		${RELEASE_INSTALL} ${FLOPPYBASE}?${FLOPPYSUFFIX} \
     80  1.7  lukem 		    ${RELEASEDIR}/${MACHINE}/${FLOPPY_RELEASEDIR}; \
     81  1.1  lukem 	else \
     82  1.5  lukem 		${RELEASE_INSTALL} ${FLOPPYBASE}1${FLOPPYSUFFIX} \
     83  1.7  lukem 		    ${RELEASEDIR}/${MACHINE}/${FLOPPY_RELEASEDIR}/${FLOPPYBASE}${FLOPPYSUFFIX}; \
     84  1.1  lukem 	fi
     85  1.1  lukem .endif
     86  1.8  lukem 
     87  1.8  lukem 
     88  1.8  lukem .endif	# _MAKEFILE_TARFLOPPY_
     89