Home | History | Annotate | Line # | Download | only in common
Makefile.tarfloppy revision 1.18.10.1
      1  1.18.10.1  bouyer #	$NetBSD: Makefile.tarfloppy,v 1.18.10.1 2017/04/21 16:51:08 bouyer 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.11   lukem 	${_MKTARGET_CREATE} "(from: ${.ALLSRC})"
     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.14     dbj .if defined(FLOPPY_BOOT_CFG)
     46       1.14     dbj CLEANFILES+=	boot.cfg
     47       1.14     dbj boot.cfg:	${FLOPPY_BOOT_CFG}
     48       1.14     dbj 	${_MKTARGET_CREATE} "(from: ${.ALLSRC})"
     49       1.14     dbj 	@rm -f ${.TARGET}
     50       1.14     dbj 	@cp ${.ALLSRC} ${.TARGET}
     51       1.14     dbj .endif	# FLOPPY_BOOT_CFG
     52        1.1   lukem 
     53        1.1   lukem .if defined(FLOPPY_NETBSD)				# {
     54       1.12   pavel CLEANFILES+=	netbsd netbsd.tmp
     55       1.12   pavel .if ${FLOPPY_NETBSD:E}=="gz"
     56       1.12   pavel COPY_CMD=	gunzip -c ${.ALLSRC} > ${.TARGET}.tmp
     57       1.18     apb COMPRESS_CMD=	${TOOL_GZIP_N} -9c ${.TARGET}.tmp > ${.TARGET}; \
     58       1.17     apb 		rm -f ${.TARGET}.tmp
     59       1.12   pavel .else
     60       1.12   pavel COPY_CMD=	cp ${.ALLSRC} ${.TARGET}.tmp
     61       1.12   pavel COMPRESS_CMD=	mv -f ${.TARGET}.tmp ${.TARGET}
     62       1.12   pavel .endif
     63        1.1   lukem netbsd: ${FLOPPY_NETBSD}
     64       1.11   lukem 	${_MKTARGET_CREATE} "(from: ${.ALLSRC})"
     65       1.12   pavel 	${COPY_CMD}
     66       1.12   pavel 	${STRIP} -R .comment -R .ident ${.TARGET}.tmp
     67       1.12   pavel 	${COMPRESS_CMD}
     68        1.1   lukem .endif	# FLOPPY_NETBSD					# }
     69        1.1   lukem 
     70        1.1   lukem 
     71        1.1   lukem .if defined(FLOPPYMETAFILE)				# {
     72        1.1   lukem CLEANFILES+=	${FLOPPYMETAFILE}
     73        1.1   lukem ${FLOPPYMETAFILE}:
     74       1.11   lukem 	${_MKTARGET_CREATE}
     75        1.1   lukem 	@rm -f ${FLOPPYMETAFILE}
     76        1.1   lukem 	@touch ${FLOPPYMETAFILE}
     77        1.1   lukem .endif	# FLOPPYMETAFILE				# }
     78        1.1   lukem 
     79        1.1   lukem 
     80        1.5   lukem ${FLOPPYBASE}1${FLOPPYSUFFIX}: ${FLOPPYFILES} ${DISTRIBDIR}/common/buildfloppies.sh
     81       1.11   lukem 	${_MKTARGET_CREATE} "(from: ${FLOPPYFILES})"
     82       1.10   lukem 	PAX=${TOOL_PAX:Q} ${HOST_SH} ${DISTRIBDIR}/common/buildfloppies.sh \
     83        1.1   lukem 	    ${FLOPPYINSTBOOT:D-i ${FLOPPYINSTBOOT}} ${FLOPPYPAD:D-p} \
     84        1.5   lukem 	    ${FLOPPYMAX:D-m ${FLOPPYMAX}} ${FLOPPYSUFFIX:D-s ${FLOPPYSUFFIX}} \
     85  1.18.10.1  bouyer 	    ${MKREPRO_TIMESTAMP:D-t ${MKREPRO_TIMESTAMP}} -N ${DESTDIR}/etc \
     86        1.1   lukem 	    ${FLOPPYBASE} ${FLOPPYSIZE} ${FLOPPYFILES}
     87        1.1   lukem 
     88        1.5   lukem CLEANFILES+=	${FLOPPYBASE}?${FLOPPYSUFFIX}
     89        1.1   lukem 
     90        1.1   lukem 
     91        1.5   lukem realall: ${FLOPPYBASE}1${FLOPPYSUFFIX}
     92        1.1   lukem 
     93        1.4   lukem .if defined(FLOPPY_RELEASEDIR)
     94        1.6   lukem release:: check_RELEASEDIR .WAIT ${FLOPPYBASE}1${FLOPPYSUFFIX}
     95        1.5   lukem 	if [ -e ${FLOPPYBASE}2${FLOPPYSUFFIX} ]; then \
     96        1.5   lukem 		${RELEASE_INSTALL} ${FLOPPYBASE}?${FLOPPYSUFFIX} \
     97       1.13    matt 		    ${RELEASEDIR}/${RELEASEMACHINEDIR}/${FLOPPY_RELEASEDIR}; \
     98        1.1   lukem 	else \
     99        1.5   lukem 		${RELEASE_INSTALL} ${FLOPPYBASE}1${FLOPPYSUFFIX} \
    100       1.13    matt 		    ${RELEASEDIR}/${RELEASEMACHINEDIR}/${FLOPPY_RELEASEDIR}/${FLOPPYBASE}${FLOPPYSUFFIX}; \
    101        1.1   lukem 	fi
    102        1.1   lukem .endif
    103        1.8   lukem 
    104        1.8   lukem 
    105        1.8   lukem .endif	# _MAKEFILE_TARFLOPPY_
    106