Makefile.buildboot revision 1.25
1# $NetBSD: Makefile.buildboot,v 1.25 2019/10/24 18:46:20 christos Exp $ 2 3S?= ${.CURDIR}/../../../.. 4 5.PATH: ${.CURDIR}/../lib 6 7KLINK_MACHINE= acorn32 8 9SRCS= ${PROGSOURCE} 10NOMAN=# defined 11BINDIR=/usr/mdec 12BINMODE=444 13FILESDIR=/usr/mdec 14 15# XXX SHOULD NOT NEED TO DEFINE THESE! 16LIBCRT0= 17LIBCRTI= 18LIBC= 19LIBCRTBEGIN= 20LIBCRTEND= 21 22MKMODULE?=no 23.if ${MKMODULE} == "yes" 24RISCOSTYPE ?= ffa 25LINKFLAGS+=-shared -Bsymbolic --no-undefined -T ${.CURDIR}/../module.ldscript 26CFLAGS+=-DRISCOS_MODULE 27.else 28RISCOSTYPE ?= ff8 29RELOC=8000 30# -N (OMAGIC) since we don't need a gap between text and data. 31LINKFLAGS+=-N -Ttext ${RELOC} 32.endif 33 34.include "${S}/conf/newvers_stand.mk" 35 36.include <bsd.own.mk> 37.include <bsd.klinks.mk> 38 39CPPFLAGS+= -D_STANDALONE 40CPPFLAGS+= -I. -I${.CURDIR}/../../.. -I${.CURDIR}/../../../.. 41CPPFLAGS+= -I${.CURDIR}/../lib 42CPPFLAGS+= ${ARM_APCS_FLAGS} -march=armv3m 43CPUFLAGS= 44CFLAGS= -O2 45CFLAGS+= -ffreestanding -fno-unwind-tables 46CFLAGS+= -Wall -Wstrict-prototypes -Wmissing-prototypes 47 48CLEANFILES+= machine ${MACHINE_ARCH} 49 50### find out what to use for libkern 51KERN_AS= library 52.include "${S}/lib/libkern/Makefile.inc" 53LIBKERN= ${KERNLIB} 54 55### find out what to use for libz 56Z_AS= library 57.include "${S}/lib/libz/Makefile.inc" 58LIBZ= ${ZLIB} 59 60### find out what to use for libsa 61SA_AS= library 62SAMISCMAKEFLAGS+= SA_INCLUDE_NET=no 63CPPFLAGS+= -DLIBSA_NO_RAW_ACCESS \ 64 -DHEAP_VARIABLE 65.include "${S}/lib/libsa/Makefile.inc" 66LIBSA= ${SALIB} 67 68### find out what to use for libriscos 69RISCOS_AS= library 70.include "${S}/arch/acorn32/stand/lib/Makefile.inc" 71LIBRISCOS= ${RISCOSLIB} 72 73${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBRISCOS} 74 ${_MKTARGET_LINK} 75 ${LD} -o ${.TARGET} ${LINKFLAGS} ${OBJS} \ 76 --start-group ${LIBSA} ${LIBZ} ${LIBRISCOS} ${LIBKERN} --end-group 77 ${SIZE} ${.TARGET} 78 79${PROG},${RISCOSTYPE}: ${PROG} 80 ${_MKTARGET_CREATE} 81 ${OBJCOPY} --output-target=binary ${.ALLSRC} ${.TARGET} 82 83realall: ${PROG},${RISCOSTYPE} 84 85CLEANFILES+= ${PROG},${RISCOSTYPE} 86FILES+= ${PROG},${RISCOSTYPE} 87 88.include <bsd.prog.mk> 89