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