Makefile.booters revision 1.20
11.20Smatt# $NetBSD: Makefile.booters,v 1.20 2011/02/20 07:59:51 matt Exp $
21.19Sjoerg
31.19Sjoerg# PROG set by parent.
41.19SjoergNOMAN=		# defined
51.10Slukem
61.18Sjoerg.include <bsd.own.mk>
71.10Slukem.include <bsd.sys.mk>		# for HOST_SH
81.1Sthorpej
91.1Sthorpej# $S must correspond to the top of the 'sys' tree
101.1SthorpejS=	${.CURDIR}/../../../..
111.1Sthorpej
121.2SthorpejBINMODE?=	444
131.9Ssimonb
141.9Ssimonb# XXX SHOULD NOT NEED TO DEFINE THESE!
151.9SsimonbLIBCRT0=
161.9SsimonbLIBC=
171.9SsimonbLIBCRTBEGIN=
181.9SsimonbLIBCRTEND=
191.2Sthorpej
201.12Ssekiyarealall: ${PROG}
211.1Sthorpej
221.1Sthorpej.PATH:		${.CURDIR}/../common
231.20Smatt.PATH.S:	${S}/dev/arcbios
241.7SthorpejAFLAGS+=	-D_LOCORE -D_KERNEL -mno-abicalls
251.1SthorpejCPPFLAGS+=	-nostdinc -D_STANDALONE -DNO_ABICALLS -I${.OBJDIR} -I${S}
261.1Sthorpej# compiler flags for smallest code size
271.11SsekiyaCFLAGS=		-ffreestanding -Os -Wall -Werror -mno-abicalls -msoft-float -G 1024
281.17Smatt.if ${MACHINE_ARCH} == "mips64eb"
291.20SmattCPUFLAGS+=	-mips3 -mabi=32
301.20SmattLDFLAGS+=	-mips3 -mabi=32
311.20SmattMACHINE_ARCH=	mipseb
321.17Smatt.endif
331.17SmattCWARNFLAGS+=	-Wall -Werror
341.17SmattCWARNFLAGS+=	-Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith
351.17SmattCWARNFLAGS+=	-Wno-pointer-sign
361.1SthorpejLDBUG=		-T $S/arch/mips/conf/stand.ldscript
371.10SlukemNETBSD_VERS!=	${HOST_SH} ${.CURDIR}/../../../../conf/osrelease.sh
381.1SthorpejCPPFLAGS+=	-DNETBSD_VERS='"${NETBSD_VERS}"'
391.6Sthorpej
401.6SthorpejCPPFLAGS+=	-Dsgimips
411.1Sthorpej
421.20Smatt.include "${S}/dev/arcbios/Makefile.inc"
431.20Smatt
441.3Ssoren# We load the kernel at 420K in from the start of RAM to give the boot
451.2Sthorpej# loader plenty of breathing room.  Load the boot loader starting at
461.2Sthorpej# the second page of RAM.
471.8Spooka# A warm thank-you to SGI for making load addresses different :)
481.2SthorpejLOAD_ADDRESS?=		0x88002000
491.8SpookaLOAD_ADDRESS_IP32?=	0x80002000
501.2Sthorpej
511.2Sthorpej# if there is a 'version' file, add rule for vers.c and add it to SRCS
521.2Sthorpej# and CLEANFILES
531.2Sthorpej.if exists(version)
541.2Sthorpej.PHONY: vers.c
551.2Sthorpejvers.c: ${.CURDIR}/version
561.18Sjoerg	${HOST_SH} ${S}/conf/newvers_stand.sh ${${MKREPRO} == "yes" :?:-D} \
571.18Sjoerg	    ${.CURDIR}/version "sgimips"
581.2Sthorpej
591.1SthorpejSRCS+=	vers.c
601.1SthorpejCLEANFILES+= vers.c
611.2Sthorpej.endif
621.1Sthorpej
631.1Sthorpej### find out what to use for libkern
641.1SthorpejKERN_AS=	library
651.1Sthorpej.include "${S}/lib/libkern/Makefile.inc"
661.1SthorpejLIBKERN=	${KERNLIB}
671.1Sthorpej
681.1Sthorpej### find out what to use for libz
691.1SthorpejZ_AS=		library
701.1Sthorpej.include "${S}/lib/libz/Makefile.inc"
711.1SthorpejLIBZ=		${ZLIB}
721.1Sthorpej
731.1Sthorpej### find out what to use for libsa
741.1SthorpejSA_AS=		library
751.1SthorpejSAMISCMAKEFLAGS+=SA_USE_LOADFILE=yes SA_USE_CREAD=yes
761.1Sthorpej# for now:
771.1SthorpejSAMISCMAKEFLAGS+=SA_INCLUDE_NET=no
781.1Sthorpej.include "${S}/lib/libsa/Makefile.inc"
791.1SthorpejLIBSA=		${SALIB}
801.12Ssekiya
811.1Sthorpej
821.1SthorpejLIBS=		${LIBSA} ${LIBZ} ${LIBSA} ${LIBKERN}
831.1Sthorpej
841.16Stsutsui.include <bsd.klinks.mk>
851.1Sthorpej.include <bsd.prog.mk>
86