xref: /netbsd-src/distrib/amd64/cdroms/Makefile.cdrom (revision aef5eb5f59cdfe8314f1b5f78ac04eb144e44010)
1# $NetBSD: Makefile.cdrom,v 1.27 2021/09/25 08:54:29 maya Exp $
2
3.include <bsd.own.mk>
4.include <bsd.endian.mk>
5
6SYSINSTDIR!= cd ${.CURDIR}/../../../../usr.sbin/sysinst/arch/${MACHINE} && ${PRINTOBJDIR}
7
8EFIBOOTIMG=	efiboot.img
9CLEANFILES+=	${EFIBOOTIMG}
10.if ${MKREPRO_TIMESTAMP:Uno} != "no"
11MAKEFS_TIMESTAMP=-T "${MKREPRO_TIMESTAMP}"
12.endif
13
14# Need multidot for the boot loader to read kernel modules as it doesn't
15# understand rockridge.
16CDMAKEFSOPTIONS= bootimage=i386;bootxx.${MACHINE},no-emul-boot,allow-multidot,bootimage=i386;${EFIBOOTIMG},platformid=efi,no-emul-boot
17CDINSTKERNEL=	../../instkernel
18CDKERNELS=	netbsd-GENERIC.gz       netbsd
19CDRELEASE_NOISOS=	true
20CD_SETS=	base etc gpufw
21.if ${MKKMOD} != "no"
22CD_SETS+=	modules
23.endif
24
25${EFIBOOTIMG}: ${DESTDIR}/usr/mdec/bootx64.efi ${DESTDIR}/usr/mdec/bootia32.efi
26	${RM} -f ${EFIBOOTIMG}
27	${RM} -rf efiboot/EFI/boot
28	${MKDIR} ${MKDIRPERM} efiboot/EFI/boot
29	${INSTALL} ${COPY} -m 0444 ${.ALLSRC} efiboot/EFI/boot/
30.if defined(CDBOOTOPTIONS)
31	${CHMOD} +w efiboot/EFI/boot/bootx64.efi efiboot/EFI/boot/bootia32.efi
32	${TOOL_INSTALLBOOT} -m${MACHINE} -e ${CDBOOTOPTIONS} efiboot/EFI/boot/bootx64.efi
33	${TOOL_INSTALLBOOT} -m${MACHINE} -e ${CDBOOTOPTIONS} efiboot/EFI/boot/bootia32.efi
34	${CHMOD} -w efiboot/EFI/boot/bootx64.efi efiboot/EFI/boot/bootia32.efi
35.endif
36	${TOOL_MAKEFS} -M 1m -m 1m -B ${TARGET_ENDIANNESS} ${MAKEFS_TIMESTAMP} \
37		-t msdos -o F=12,c=1 ${EFIBOOTIMG} efiboot
38
39image_md_pre: ${EFIBOOTIMG}
40	${RM} -f cdrom/etc/gettytab cdrom/etc/ttys cdrom/etc/rc
41	${HOST_LN} -fs /tmp/gettytab cdrom/etc/gettytab
42	${INSTALL} ${COPY} ${.CURDIR}/../etc.ttys cdrom/etc/ttys
43	${INSTALL} ${COPY} ${.CURDIR}/../etc.rc cdrom/etc/rc
44	${INSTALL} ${COPY} -m 0555 ${.CURDIR}/../install.sh cdrom/install.sh
45	${MKDIR} ${MKDIRPERM} cdrom/mnt2 cdrom/targetroot
46	${INSTALL} ${COPY} ${SYSINSTDIR}/sysinstmsgs.?? cdrom/usr/share/sysinst/catalog/
47	${MKDIR} ${MKDIRPERM} cdrom/var
48