Makefile.buildboot revision 1.19
11.19Schristos#	$NetBSD: Makefile.buildboot,v 1.19 2013/11/04 21:25:22 christos Exp $
21.1Sreinoud
31.1SreinoudS?=	${.CURDIR}/../../../..
41.1Sreinoud
51.1Sreinoud.PATH: ${.CURDIR}/../lib
61.1Sreinoud
71.16SmattKLINK_MACHINE=	acorn32
81.15Smatt
91.1SreinoudSRCS=	${PROGSOURCE}
101.1SreinoudNOMAN=# defined
111.1SreinoudBINDIR=/usr/mdec
121.1SreinoudBINMODE=444
131.1SreinoudFILESDIR=/usr/mdec
141.4Ssimonb
151.4Ssimonb# XXX SHOULD NOT NEED TO DEFINE THESE!
161.4SsimonbLIBCRT0=
171.4SsimonbLIBC=
181.4SsimonbLIBCRTBEGIN=
191.4SsimonbLIBCRTEND=
201.1Sreinoud
211.10Sbjh21MKMODULE?=no
221.9Sbjh21.if ${MKMODULE} == "yes"
231.9Sbjh21RISCOSTYPE ?= ffa
241.9Sbjh21LINKFLAGS+=-shared -Bsymbolic --no-undefined -T ${.CURDIR}/../module.ldscript
251.9Sbjh21CFLAGS+=-DRISCOS_MODULE
261.9Sbjh21.else
271.1SreinoudRISCOSTYPE ?= ff8
281.9Sbjh21RELOC=8000
291.9Sbjh21# -N (OMAGIC) since we don't need a gap between text and data.
301.9Sbjh21LINKFLAGS+=-N -Ttext ${RELOC}
311.9Sbjh21.endif
321.1Sreinoud
331.14Sjoerg.include <bsd.own.mk>
341.16Smatt.include <bsd.klinks.mk>
351.14Sjoerg
361.1SreinoudSRCS+=		vers.c
371.1SreinoudCLEANFILES+=	vers.c
381.1Sreinoud.PHONY: vers.c
391.1Sreinoudvers.c: ${.CURDIR}/version
401.14Sjoerg	${HOST_SH} ${S}/conf/newvers_stand.sh ${${MKREPRO} == "yes" :?:-D} \
411.16Smatt	    ${.CURDIR}/version ${KLINK_MACHINE} ${NEWVERSWHAT}
421.1Sreinoud
431.1SreinoudCPPFLAGS+=	-D_STANDALONE 
441.7Sbjh21CPPFLAGS+=	-I. -I${.CURDIR}/../../.. -I${.CURDIR}/../../../..
451.1SreinoudCPPFLAGS+=	-I${.CURDIR}/../lib
461.15SmattCPPFLAGS+=	-mabi=apcs-gnu -mfloat-abi=soft -march=armv3m
471.18Schristos.if ${HAVE_GCC} < 48
481.17SmattCPPFLAGS+=	-mno-thumb -mno-thumb-interwork
491.19Schristos.else
501.19SchristosCPPFLAGS+=	-marm
511.18Schristos.endif
521.15SmattCPUFLAGS=
531.1SreinoudCFLAGS=		-O2
541.17SmattCFLAGS+=	-ffreestanding -fno-unwind-tables
551.1SreinoudCFLAGS+=	-Wall -Wstrict-prototypes -Wmissing-prototypes
561.1Sreinoud
571.2Sbjh21CLEANFILES+= machine ${MACHINE_ARCH}
581.1Sreinoud
591.1Sreinoud### find out what to use for libkern
601.1SreinoudKERN_AS=	library
611.1Sreinoud.include "${S}/lib/libkern/Makefile.inc"
621.1SreinoudLIBKERN=	${KERNLIB}
631.1Sreinoud
641.1Sreinoud### find out what to use for libz
651.1SreinoudZ_AS=		library
661.1Sreinoud.include "${S}/lib/libz/Makefile.inc"
671.1SreinoudLIBZ=		${ZLIB}
681.1Sreinoud
691.1Sreinoud### find out what to use for libsa
701.1SreinoudSA_AS=		library
711.11Sbjh21SAMISCMAKEFLAGS+= SA_INCLUDE_NET=no
721.1SreinoudCPPFLAGS+=	-DLIBSA_NO_RAW_ACCESS \
731.1Sreinoud		-DHEAP_VARIABLE
741.1Sreinoud.include "${S}/lib/libsa/Makefile.inc"
751.1SreinoudLIBSA=		${SALIB}
761.1Sreinoud
771.1Sreinoud### find out what to use for libriscos
781.1SreinoudRISCOS_AS=		library
791.1Sreinoud.include "${S}/arch/acorn32/stand/lib/Makefile.inc"
801.1SreinoudLIBRISCOS=		${RISCOSLIB}
811.1Sreinoud
821.1Sreinoud${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} ${LIBRISCOS}
831.9Sbjh21	${_MKTARGET_LINK}
841.9Sbjh21	${LD} -o ${.TARGET} ${LINKFLAGS} ${OBJS} \
851.12Sbjh21	    --start-group ${LIBSA} ${LIBZ} ${LIBRISCOS} ${LIBKERN} --end-group
861.1Sreinoud	${SIZE} ${.TARGET}
871.1Sreinoud
881.1Sreinoud${PROG},${RISCOSTYPE}: ${PROG}
891.9Sbjh21	${_MKTARGET_CREATE}
901.1Sreinoud	${OBJCOPY} --output-target=binary ${.ALLSRC} ${.TARGET}
911.1Sreinoud
921.1Sreinoudrealall: ${PROG},${RISCOSTYPE}
931.1Sreinoud
941.1SreinoudCLEANFILES+=	${PROG},${RISCOSTYPE}
951.1SreinoudFILES+=		${PROG},${RISCOSTYPE}
961.1Sreinoud
971.1Sreinoud.include <bsd.prog.mk>
98