Makefile.installimage revision 1.5
1# $NetBSD: Makefile.installimage,v 1.5 2017/02/10 16:43:59 christos 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) 20check_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) 30IMAGEMB= ${INSTIMAGEMB} 31.endif 32SWAPMB= 0 # no swap 33OMIT_SWAPIMG= yes # nothing to write 34 35KERN_SET?= kern-GENERIC 36SETS?= modules base etc 37 38FSTAB_IN?= ${NETBSDSRCDIR}/distrib/common/bootimage/fstab.install.in 39 40.if ${USE_MBR} != "no" 41DISKPROTO_IN?= ${NETBSDSRCDIR}/distrib/common/bootimage/diskproto.noswap.mbr.in 42.else 43DISKPROTO_IN?= ${NETBSDSRCDIR}/distrib/common/bootimage/diskproto.noswap.in 44.endif 45 46# XXX: no permission info for makefs(8) 47IMGDIR_EXTRA= ${RELEASEDIR}/${RELEASEMACHINEDIR} ${RELEASEMACHINEDIR} 48IMGDIR_EXCLUDE= -s ',./installation/cdrom.*,,gp' 49IMGDIR_EXCLUDE+= -s ',./installation/liveimage.*,,gp' 50IMGDIR_EXCLUDE+= -s ',./installation/installimage.*,,gp' 51 52IMGBASE= ${INSTIMGBASE} 53 54.include "${NETBSDSRCDIR}/distrib/common/bootimage/Makefile.bootimage" 55 56# INSTIMG_RELEASEDIR specifies where to install ${INSTIMGBASE}.img.gz. 57# This should be passed from etc/Makefile or etc/etc.${MACHINE}/Makefile.inc 58# but also set default here for manual builds. 59INSTIMG_RELEASEDIR?= ${RELEASEMACHINEDIR}/installation/installimage 60 61# should be defined elsewhere? 62MKDIR?= mkdir -p 63 64install_image: check_INSTIMGBASE check_RELEASEDIR ${IMGBASE}.img.gz 65 ${MKDIR} ${MKDIRPERM} ${INSTIMG_RELEASEDIR} 66 ${RELEASE_INSTALL} ${IMGBASE}.img.gz ${INSTIMG_RELEASEDIR} 67 # note ${MAKESUM} will be calculated in src/etc/Makefile 68 69release: 70 71