xref: /netbsd-src/sys/arch/amd64/stand/prekern/Makefile (revision ec27090fae73a8da90cdcfb6b942a198ea31f261)
1*ec27090fSriastradh#	$NetBSD: Makefile,v 1.9 2024/06/24 18:00:32 riastradh Exp $
2c9759921Smaxv
3c9759921SmaxvPROG=		prekern
449d35b9cSmaxvSRCS=		locore.S trap.S prekern.c mm.c console.c elf.c prng.c
5c9759921Smaxv
6c9759921SmaxvNOSSP=		# defined
7c9759921SmaxvNOPIE=		# defined
89044b7f3SkamilNOLIBCSANITIZER=# defined
9ee80b447SchristosNOSANITIZER=	# defined
10c9759921SmaxvNOMAN=		1
11c9759921Smaxv
12c9759921SmaxvS=	${.CURDIR}/../../../..
13c9759921Smaxv
14c9759921Smaxv.PATH: ${.CURDIR}
15c9759921Smaxv
16c9759921SmaxvBINDIR=		/usr/mdec
17c9759921SmaxvBINMODE=	444
18c9759921Smaxv
19ee80b447Schristos.include <bsd.init.mk>
20c9759921Smaxv
2149ec9d0fSmaxvCPPFLAGS+=	-I. -I${S} -I${.OBJDIR} -I${.CURDIR}
2249ec9d0fSmaxvCPPFLAGS+=	-D_STANDALONE
23c9759921Smaxv
24c9759921Smaxv.include <bsd.klinks.mk>
25c9759921Smaxv
26c9759921SmaxvCPPFLAGS+=	-DKERNEL -D__x86_64__
27fe436c9bSmaxvCFLAGS+=	-Wall -Werror -Wstrict-prototypes
28fe436c9bSmaxvCFLAGS+=	-mno-red-zone -mno-mmx -mno-sse -mno-avx -ffreestanding
29c9759921SmaxvSTRIPFLAG=
3011415a10SryoonLINKFLAGS=	-X -z max-page-size=0x100000 -Ttext 0x100000 \
3111415a10Sryoon		-T ${S}/arch/amd64/stand/prekern/prekern.ldscript
32*ec27090fSriastradhDPADD+=		prekern.ldscript
33c9759921Smaxv
3449ec9d0fSmaxvKERN_AS=	library
3549ec9d0fSmaxv.include	"${S}/lib/libkern/Makefile.inc"
3649ec9d0fSmaxvLIBKERN=	${KERNLIB}
3749ec9d0fSmaxv
38c9759921SmaxvLIBCRT0=	# nothing
39c9759921SmaxvLIBCRTI=	# nothing
40c9759921SmaxvLIBC=		# nothing
41c9759921SmaxvLIBCRTBEGIN=	# nothing
42c9759921SmaxvLIBCRTEND=	# nothing
43c9759921Smaxv
4449ec9d0fSmaxv${PROG}: ${OBJS} ${LIBKERN}
4549ec9d0fSmaxv	${_MKTARGET_LINK}
4649ec9d0fSmaxv	${LD} ${LINKFLAGS} -o ${.TARGET} ${OBJS} ${LIBKERN}
47c9759921Smaxv
48c9759921Smaxvall:	${PROG}
49c9759921Smaxv
50c9759921Smaxv.include <bsd.prog.mk>
51c9759921Smaxv
5249ec9d0fSmaxvcleandir distclean: .WAIT cleanlibdir
5349ec9d0fSmaxv
5449ec9d0fSmaxvcleanlibdir:
5549ec9d0fSmaxv	-rm -rf lib
56