1# $NetBSD: Makefile.buildboot,v 1.21 2014/01/12 15:26:28 tsutsui 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 <bsd.own.mk> 35.include <bsd.klinks.mk> 36 37SRCS+= vers.c 38CLEANFILES+= vers.c 39.PHONY: vers.c 40vers.c: ${.CURDIR}/version 41 ${HOST_SH} ${S}/conf/newvers_stand.sh ${${MKREPRO} == "yes" :?:-D} \ 42 ${.CURDIR}/version ${KLINK_MACHINE} ${NEWVERSWHAT} 43 44CPPFLAGS+= -D_STANDALONE 45CPPFLAGS+= -I. -I${.CURDIR}/../../.. -I${.CURDIR}/../../../.. 46CPPFLAGS+= -I${.CURDIR}/../lib 47CPPFLAGS+= ${ARM_APCS_FLAGS} -march=armv3m 48.if ${HAVE_GCC} < 48 49CPPFLAGS+= -mno-thumb -mno-thumb-interwork 50.else 51CPPFLAGS+= -marm 52.endif 53CPUFLAGS= 54CFLAGS= -O2 55CFLAGS+= -ffreestanding -fno-unwind-tables 56CFLAGS+= -Wall -Wstrict-prototypes -Wmissing-prototypes 57 58CLEANFILES+= machine ${MACHINE_ARCH} 59 60### find out what to use for libkern 61KERN_AS= library 62.include "${S}/lib/libkern/Makefile.inc" 63LIBKERN= ${KERNLIB} 64 65### find out what to use for libz 66Z_AS= library 67.include "${S}/lib/libz/Makefile.inc" 68LIBZ= ${ZLIB} 69 70### find out what to use for libsa 71SA_AS= library 72SAMISCMAKEFLAGS+= SA_INCLUDE_NET=no 73CPPFLAGS+= -DLIBSA_NO_RAW_ACCESS \ 74 -DHEAP_VARIABLE 75.include "${S}/lib/libsa/Makefile.inc" 76LIBSA= ${SALIB} 77 78### find out what to use for libriscos 79RISCOS_AS= library 80.include "${S}/arch/acorn32/stand/lib/Makefile.inc" 81LIBRISCOS= ${RISCOSLIB} 82 83${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBRISCOS} 84 ${_MKTARGET_LINK} 85 ${LD} -o ${.TARGET} ${LINKFLAGS} ${OBJS} \ 86 --start-group ${LIBSA} ${LIBZ} ${LIBRISCOS} ${LIBKERN} --end-group 87 ${SIZE} ${.TARGET} 88 89${PROG},${RISCOSTYPE}: ${PROG} 90 ${_MKTARGET_CREATE} 91 ${OBJCOPY} --output-target=binary ${.ALLSRC} ${.TARGET} 92 93realall: ${PROG},${RISCOSTYPE} 94 95CLEANFILES+= ${PROG},${RISCOSTYPE} 96FILES+= ${PROG},${RISCOSTYPE} 97 98.include <bsd.prog.mk> 99