1 1.7 mrg # $NetBSD: Makefile.buildboot,v 1.7 2023/08/03 08:16:31 mrg Exp $ 2 1.1 skrll 3 1.4 christos NOPIE=yes 4 1.4 christos NOSSP=yes 5 1.2 christos NODEBUG=yes 6 1.1 skrll RELOC= 120000 7 1.1 skrll HEAP_LIMIT=0x1c0000 8 1.1 skrll #DEBUGFLAGS=-DDEBUG 9 1.1 skrll #DEBUGFLAGS+=-DDEBUGBUG 10 1.1 skrll #DEBUGFLAGS+=-DPDCDEBUG 11 1.1 skrll #DEBUGFLAGS+=-DLIFDEBUG 12 1.1 skrll #DEBUGFLAGS+=-DEXEC_DEBUG 13 1.1 skrll #DEBUGFLAGS+=-DALLOC_TRACE 14 1.1 skrll #DEBUGLIBS= no 15 1.1 skrll 16 1.1 skrll LIBCRT0= # nothing 17 1.1 skrll LIBCRTI= # nothing 18 1.1 skrll LIBCRTBEGIN= # nothing 19 1.1 skrll LIBCRTEND= # nothing 20 1.1 skrll LIBC= # nothing 21 1.1 skrll 22 1.1 skrll S= ${.CURDIR}/../../../.. 23 1.1 skrll 24 1.1 skrll .PATH: ${.CURDIR}/../common 25 1.1 skrll 26 1.1 skrll SRCS= ${PROGSOURCE} ${COMMONSOURCE} ${DRIVERSOURCE} 27 1.5 skrll NOMAN= 28 1.1 skrll STRIPFLAG= 29 1.1 skrll BINMODE= 444 30 1.1 skrll 31 1.1 skrll .include <bsd.own.mk> 32 1.1 skrll 33 1.1 skrll CPPFLAGS+= -nostdinc -I${.CURDIR}/../../.. -I${.CURDIR}/../../../.. \ 34 1.1 skrll -I${.OBJDIR} 35 1.6 skrll CFLAGS+= -Os -fno-delete-null-pointer-checks -msoft-float -Wno-main 36 1.1 skrll CFLAGS+= -fno-builtin 37 1.1 skrll CFLAGS+= -mdisable-fpregs -mfast-indirect-calls -mpa-risc-1-0 38 1.1 skrll 39 1.3 christos .include "${S}/conf/newvers_stand.mk" 40 1.1 skrll 41 1.1 skrll CPPFLAGS+= -D_STANDALONE -Dhppa ${DEBUGFLAGS} 42 1.1 skrll CPPFLAGS+= -DRELOC=0x${RELOC} -DHEAP_LIMIT=${HEAP_LIMIT} 43 1.1 skrll CPPFLAGS+= -DNO_NET 44 1.1 skrll 45 1.1 skrll COMMONSOURCE= cons.c dev_hppa.c dk.c itecons.c \ 46 1.1 skrll machdep.c milli_tiny.S pdc.c time.c 47 1.5 skrll DRIVERSOURCE= 48 1.1 skrll 49 1.1 skrll ### find out what to use for libkern 50 1.1 skrll KERN_AS= library 51 1.1 skrll .include "${S}/lib/libkern/Makefile.inc" 52 1.1 skrll LIBKERN= ${KERNLIB} 53 1.1 skrll 54 1.1 skrll ### find out what to use for libz 55 1.1 skrll Z_AS= library 56 1.1 skrll .include "${S}/lib/libz/Makefile.inc" 57 1.1 skrll LIBZ= ${ZLIB} 58 1.1 skrll 59 1.1 skrll ### find out what to use for libsa 60 1.1 skrll SA_AS= library 61 1.1 skrll SAMISCMAKEFLAGS+="SA_USE_LOADFILE=yes" 62 1.1 skrll .include "${S}/lib/libsa/Makefile.inc" 63 1.1 skrll LIBSA= ${SALIB} 64 1.1 skrll 65 1.1 skrll LDFLAGS+= -static -nostdlib -Wl,-N -Wl,-Ttext,$(RELOC) 66 1.1 skrll LDFLAGS+= -Wl,-T,${.CURDIR}/ld.script -Wl,-Map,${PROG}.map 67 1.1 skrll 68 1.1 skrll ${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 69 1.1 skrll ${CC} ${LDFLAGS} -o ${PROG} ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 70 1.1 skrll @${SIZE} ${PROG} 71 1.1 skrll @echo ${PROG} total size should not exceed XXXX bytes 72 1.1 skrll 73 1.7 mrg # GCC 12 and newer thinks this is bad (accessing page 0?) 74 1.7 mrg COPTS.itecons.c+= -Wno-array-bounds 75 1.7 mrg 76 1.1 skrll .include <bsd.prog.mk> 77 1.1 skrll .include <bsd.klinks.mk> 78