1#         $NetBSD: Makefile.ramdisk,v 1.16 2024/03/20 13:51:35 riastradh Exp $
2
3NOSANITIZER=        # defined
4
5.include <bsd.own.mk>
6.include "${NETBSDSRCDIR}/distrib/common/Makefile.distrib"
7
8I386COMMON=         ${.CURDIR}/../common
9
10.PATH:              ${I386COMMON}
11
12WARNS=              1
13DBG=                -Os
14
15CRUNCHBIN=          ramdiskbin
16
17# Use ${.CURDIR}/list only if LISTS was not already defined by the caller.
18LISTS?=             ${.CURDIR}/list
19LISTS+=             ${I386COMMON}/list.ramdisk
20MTREECONF=          ${DISTRIBDIR}/common/mtree.common
21IMAGEENDIAN=        le
22IMAGEDEPENDS+=      ${CRUNCHBIN} \
23                    dot.profile \
24                    ${DESTDIR}/usr/mdec/boot \
25                    ${DESTDIR}/usr/mdec/bootxx_ffsv1 \
26                    ${DESTDIR}/usr/mdec/mbr \
27                    ${DESTDIR}/usr/mdec/mbr_ext \
28                    ${DESTDIR}/usr/mdec/mbr_bootsel \
29                    ${DESTDIR}/usr/mdec/gptmbr.bin \
30                    ${NETBSDSRCDIR}/etc/group ${NETBSDSRCDIR}/etc/master.passwd \
31                    ${NETBSDSRCDIR}/etc/netconfig ${DISTRIBDIR}/common/protocols \
32                    ${DISTRIBDIR}/common/services
33PARSELISTENV+=      BOOTMODEL=${BOOTMODEL:Q}
34
35# This propagates through to the link of ramdiskbin
36# The map file is useful when trying to prune the image
37LDFLAGS+= -Wl,-Map,${CRUNCHBIN}.map,--cref
38CRUNCHENV+=         LDFLAGS=${LDFLAGS:Q}
39CLEANFILES+=        ${CRUNCHBIN}.map
40
41.if defined(USE_SYSINST)
42.if ${USE_SYSINST} != yes
43LISTS+=             ${DISTRIBDIR}/common/list.sysinst.${USE_SYSINST}
44.else
45LISTS+=             ${DISTRIBDIR}/common/list.sysinst
46.endif
47MAKEFS_FLAGS+=      -f 14
48.endif
49
50# Use stubs to eliminate some large stuff from libc
51HACKSRC=  ${DISTRIBDIR}/utils/libhack
52.include  "${HACKSRC}/Makefile.inc"
53${CRUNCHBIN}:       libhack.o
54
55.include "${DISTRIBDIR}/common/Makefile.crunch"
56.include "${DISTRIBDIR}/common/Makefile.makedev"
57.include "${DISTRIBDIR}/common/Makefile.image"
58
59release:  ${IMAGE}
60          ${HOST_INSTALL_FILE} -m ${NONBINMODE} ${IMAGE} \
61                    ${RELEASEDIR}/${RELEASEMACHINEDIR}/installation/ramdisk/
62
63.include <bsd.prog.mk>
64