11.11Snia# $NetBSD: Makefile.installimage,v 1.11 2024/04/25 11:56:51 nia Exp $ 21.1Stsutsui# 31.1Stsutsui# Common Makefile to create a bootable installation image for USB flash etc. 41.1Stsutsui# 51.1Stsutsui 61.1Stsutsui# 71.1Stsutsui# Required variables: 81.1Stsutsui# INSTIMGBASE 91.1Stsutsui# Basename of the liveimage 101.1Stsutsui# 111.4Stsutsui# Optional variables: 121.4Stsutsui# INSTIMAGEMB 131.4Stsutsui# target image size in MB 141.4Stsutsui# (if empty default IMAGEMB in Makefile.bootimage is used) 151.4Stsutsui# 161.1Stsutsui# See Makefile.bootimage for other variables. 171.1Stsutsui# 181.1Stsutsui 191.2Stsutsui.if !target(check_INSTIMGBASE) 201.2Stsutsuicheck_INSTIMGBASE: .PHONY .NOTMAIN 211.2Stsutsui.if !defined(INSTIMGBASE) 221.1Stsutsui @echo "Error: INSTIMGBASE is not set" 231.1Stsutsui @false 241.2Stsutsui.else 251.2Stsutsui @true 261.1Stsutsui.endif 271.1Stsutsui.endif 281.1Stsutsui 291.4Stsutsui.if defined(INSTIMAGEMB) 301.4StsutsuiIMAGEMB= ${INSTIMAGEMB} 311.4Stsutsui.endif 321.1StsutsuiSWAPMB= 0 # no swap 331.1Stsutsui 341.1StsutsuiKERN_SET?= kern-GENERIC 351.10SmayaSETS?= gpufw modules base etc 361.1Stsutsui 371.1StsutsuiFSTAB_IN?= ${NETBSDSRCDIR}/distrib/common/bootimage/fstab.install.in 381.1Stsutsui 391.7SjmcneillUSE_MBR?= no 401.7Sjmcneill 411.1Stsutsui.if ${USE_MBR} != "no" 421.1StsutsuiDISKPROTO_IN?= ${NETBSDSRCDIR}/distrib/common/bootimage/diskproto.noswap.mbr.in 431.1Stsutsui.else 441.1StsutsuiDISKPROTO_IN?= ${NETBSDSRCDIR}/distrib/common/bootimage/diskproto.noswap.in 451.1Stsutsui.endif 461.1Stsutsui 471.3Stsutsui# XXX: no permission info for makefs(8) 481.1StsutsuiIMGDIR_EXTRA= ${RELEASEDIR}/${RELEASEMACHINEDIR} ${RELEASEMACHINEDIR} 491.11SniaIMGDIR_EXCLUDE+= -s ',./installation/floppy/.*,,gp' 501.11SniaIMGDIR_EXCLUDE+= -s ',./installation/cdrom.*,,gp' 511.1StsutsuiIMGDIR_EXCLUDE+= -s ',./installation/liveimage.*,,gp' 521.1StsutsuiIMGDIR_EXCLUDE+= -s ',./installation/installimage.*,,gp' 531.8Sjmcneill.if defined(MD_IMGDIR_EXCLUDE) 541.8SjmcneillIMGDIR_EXCLUDE+= ${MD_IMGDIR_EXCLUDE} 551.8Sjmcneill.endif 561.1Stsutsui 571.1StsutsuiIMGBASE= ${INSTIMGBASE} 581.1Stsutsui 591.1Stsutsui.include "${NETBSDSRCDIR}/distrib/common/bootimage/Makefile.bootimage" 601.1Stsutsui 611.1Stsutsui# INSTIMG_RELEASEDIR specifies where to install ${INSTIMGBASE}.img.gz. 621.1Stsutsui# This should be passed from etc/Makefile or etc/etc.${MACHINE}/Makefile.inc 631.1Stsutsui# but also set default here for manual builds. 641.1StsutsuiINSTIMG_RELEASEDIR?= ${RELEASEMACHINEDIR}/installation/installimage 651.1Stsutsui 661.1Stsutsui# should be defined elsewhere? 671.1StsutsuiMKDIR?= mkdir -p 681.1Stsutsui 691.2Stsutsuiinstall_image: check_INSTIMGBASE check_RELEASEDIR ${IMGBASE}.img.gz 701.5Schristos ${MKDIR} ${MKDIRPERM} ${INSTIMG_RELEASEDIR} 711.1Stsutsui ${RELEASE_INSTALL} ${IMGBASE}.img.gz ${INSTIMG_RELEASEDIR} 721.1Stsutsui # note ${MAKESUM} will be calculated in src/etc/Makefile 731.1Stsutsui 741.1Stsutsuirelease: 751.1Stsutsui 76