Home | History | Annotate | Line # | Download | only in bootimage
Makefile.installimage revision 1.7
      1 #	$NetBSD: Makefile.installimage,v 1.7 2020/05/28 15:12:03 jmcneill Exp $
      2 #
      3 # Common Makefile to create a bootable installation image for USB flash etc.
      4 #
      5 
      6 #
      7 # Required variables:
      8 #	INSTIMGBASE
      9 #		Basename of the liveimage
     10 #
     11 # Optional variables:
     12 #	INSTIMAGEMB
     13 #		target image size in MB
     14 #		(if empty default IMAGEMB in Makefile.bootimage is used)
     15 #
     16 # See Makefile.bootimage for other variables.
     17 #
     18 
     19 .if !target(check_INSTIMGBASE)
     20 check_INSTIMGBASE: .PHONY .NOTMAIN
     21 .if !defined(INSTIMGBASE)
     22 	@echo "Error: INSTIMGBASE is not set"
     23 	@false
     24 .else
     25 	@true
     26 .endif
     27 .endif
     28 
     29 .if defined(INSTIMAGEMB)
     30 IMAGEMB=	${INSTIMAGEMB}
     31 .endif
     32 SWAPMB=		0			# no swap
     33 
     34 KERN_SET?=	kern-GENERIC
     35 SETS?=		modules base etc
     36 
     37 FSTAB_IN?=	${NETBSDSRCDIR}/distrib/common/bootimage/fstab.install.in
     38 
     39 USE_MBR?=	no
     40 
     41 .if ${USE_MBR} != "no"
     42 DISKPROTO_IN?=	${NETBSDSRCDIR}/distrib/common/bootimage/diskproto.noswap.mbr.in
     43 .else
     44 DISKPROTO_IN?=	${NETBSDSRCDIR}/distrib/common/bootimage/diskproto.noswap.in
     45 .endif
     46 
     47 # XXX: no permission info for makefs(8)
     48 IMGDIR_EXTRA=	${RELEASEDIR}/${RELEASEMACHINEDIR}	${RELEASEMACHINEDIR}
     49 IMGDIR_EXCLUDE= 	-s ',./installation/cdrom.*,,gp'
     50 IMGDIR_EXCLUDE+=	-s ',./installation/liveimage.*,,gp'
     51 IMGDIR_EXCLUDE+=	-s ',./installation/installimage.*,,gp'
     52 
     53 IMGBASE=        ${INSTIMGBASE}
     54 
     55 .include "${NETBSDSRCDIR}/distrib/common/bootimage/Makefile.bootimage"
     56 
     57 # INSTIMG_RELEASEDIR specifies where to install ${INSTIMGBASE}.img.gz.
     58 # This should be passed from etc/Makefile or etc/etc.${MACHINE}/Makefile.inc
     59 # but also set default here for manual builds.
     60 INSTIMG_RELEASEDIR?=	${RELEASEMACHINEDIR}/installation/installimage
     61 
     62 # should be defined elsewhere? 
     63 MKDIR?=		mkdir -p
     64 
     65 install_image: check_INSTIMGBASE check_RELEASEDIR ${IMGBASE}.img.gz
     66 	${MKDIR} ${MKDIRPERM} ${INSTIMG_RELEASEDIR}
     67 	${RELEASE_INSTALL} ${IMGBASE}.img.gz ${INSTIMG_RELEASEDIR}
     68 	# note ${MAKESUM} will be calculated in src/etc/Makefile
     69 
     70 release:
     71 
     72