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