1 1.7 christos # $NetBSD: Makefile,v 1.7 2018/06/02 14:31:40 christos Exp $ 2 1.1 maxv 3 1.1 maxv PROG= prekern 4 1.5 maxv SRCS= locore.S trap.S prekern.c mm.c console.c elf.c prng.c 5 1.1 maxv 6 1.1 maxv NOSSP= # defined 7 1.1 maxv NOPIE= # defined 8 1.7 christos NOSANITIZER= # defined 9 1.1 maxv NOMAN= 1 10 1.1 maxv 11 1.1 maxv S= ${.CURDIR}/../../../.. 12 1.1 maxv 13 1.1 maxv .PATH: ${.CURDIR} 14 1.1 maxv 15 1.1 maxv BINDIR= /usr/mdec 16 1.1 maxv BINMODE= 444 17 1.1 maxv 18 1.7 christos .include <bsd.init.mk> 19 1.1 maxv 20 1.2 maxv CPPFLAGS+= -I. -I${S} -I${.OBJDIR} -I${.CURDIR} 21 1.2 maxv CPPFLAGS+= -D_STANDALONE 22 1.1 maxv 23 1.1 maxv .include <bsd.klinks.mk> 24 1.1 maxv 25 1.1 maxv CPPFLAGS+= -DKERNEL -D__x86_64__ 26 1.4 maxv CFLAGS+= -Wall -Werror -Wstrict-prototypes 27 1.4 maxv CFLAGS+= -mno-red-zone -mno-mmx -mno-sse -mno-avx -ffreestanding 28 1.1 maxv STRIPFLAG= 29 1.6 ryoon LINKFLAGS= -X -z max-page-size=0x100000 -Ttext 0x100000 \ 30 1.6 ryoon -T ${S}/arch/amd64/stand/prekern/prekern.ldscript 31 1.1 maxv 32 1.2 maxv KERN_AS= library 33 1.2 maxv .include "${S}/lib/libkern/Makefile.inc" 34 1.2 maxv LIBKERN= ${KERNLIB} 35 1.2 maxv 36 1.1 maxv LIBCRT0= # nothing 37 1.1 maxv LIBCRTI= # nothing 38 1.1 maxv LIBC= # nothing 39 1.1 maxv LIBCRTBEGIN= # nothing 40 1.1 maxv LIBCRTEND= # nothing 41 1.1 maxv 42 1.2 maxv ${PROG}: ${OBJS} ${LIBKERN} 43 1.2 maxv ${_MKTARGET_LINK} 44 1.2 maxv ${LD} ${LINKFLAGS} -o ${.TARGET} ${OBJS} ${LIBKERN} 45 1.1 maxv 46 1.1 maxv all: ${PROG} 47 1.1 maxv 48 1.1 maxv .include <bsd.prog.mk> 49 1.1 maxv 50 1.2 maxv cleandir distclean: .WAIT cleanlibdir 51 1.2 maxv 52 1.2 maxv cleanlibdir: 53 1.2 maxv -rm -rf lib 54