# $NetBSD: Makefile.buildboot,v 1.15 2013/05/01 22:30:39 matt Exp $ S?= ${.CURDIR}/../../../.. .PATH: ${.CURDIR}/../lib MACHINE= acorn32 SRCS= ${PROGSOURCE} NOMAN=# defined BINDIR=/usr/mdec BINMODE=444 FILESDIR=/usr/mdec # XXX SHOULD NOT NEED TO DEFINE THESE! LIBCRT0= LIBC= LIBCRTBEGIN= LIBCRTEND= MKMODULE?=no .if ${MKMODULE} == "yes" RISCOSTYPE ?= ffa LINKFLAGS+=-shared -Bsymbolic --no-undefined -T ${.CURDIR}/../module.ldscript CFLAGS+=-DRISCOS_MODULE .else RISCOSTYPE ?= ff8 RELOC=8000 # -N (OMAGIC) since we don't need a gap between text and data. LINKFLAGS+=-N -Ttext ${RELOC} .endif .include SRCS+= vers.c CLEANFILES+= vers.c .PHONY: vers.c vers.c: ${.CURDIR}/version ${HOST_SH} ${S}/conf/newvers_stand.sh ${${MKREPRO} == "yes" :?:-D} \ ${.CURDIR}/version ${MACHINE} ${NEWVERSWHAT} CPPFLAGS+= -D_STANDALONE CPPFLAGS+= -I. -I${.CURDIR}/../../.. -I${.CURDIR}/../../../.. CPPFLAGS+= -I${.CURDIR}/../lib CPPFLAGS+= -mabi=apcs-gnu -mfloat-abi=soft -march=armv3m CPUFLAGS= CFLAGS= -O2 CFLAGS+= -ffreestanding CFLAGS+= -Wall -Wstrict-prototypes -Wmissing-prototypes .if !make(obj) && !make(clean) && !make(cleandir) .BEGIN: -rm -f machine ${MACHINE_ARCH} ln -s $S/arch/${MACHINE}/include machine ln -s $S/arch/${MACHINE_ARCH}/include ${MACHINE_ARCH} .endif CLEANFILES+= machine ${MACHINE_ARCH} ### find out what to use for libkern KERN_AS= library .include "${S}/lib/libkern/Makefile.inc" LIBKERN= ${KERNLIB} ### find out what to use for libz Z_AS= library .include "${S}/lib/libz/Makefile.inc" LIBZ= ${ZLIB} ### find out what to use for libsa SA_AS= library SAMISCMAKEFLAGS+= SA_INCLUDE_NET=no CPPFLAGS+= -DLIBSA_NO_RAW_ACCESS \ -DHEAP_VARIABLE .include "${S}/lib/libsa/Makefile.inc" LIBSA= ${SALIB} ### find out what to use for libriscos RISCOS_AS= library .include "${S}/arch/acorn32/stand/lib/Makefile.inc" LIBRISCOS= ${RISCOSLIB} ${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBRISCOS} ${_MKTARGET_LINK} ${LD} -o ${.TARGET} ${LINKFLAGS} ${OBJS} \ --start-group ${LIBSA} ${LIBZ} ${LIBRISCOS} ${LIBKERN} --end-group ${SIZE} ${.TARGET} ${PROG},${RISCOSTYPE}: ${PROG} ${_MKTARGET_CREATE} ${OBJCOPY} --output-target=binary ${.ALLSRC} ${.TARGET} realall: ${PROG},${RISCOSTYPE} CLEANFILES+= ${PROG},${RISCOSTYPE} FILES+= ${PROG},${RISCOSTYPE} .include