Makefile.booters revision 1.12
11.12Ssekiya# $NetBSD: Makefile.booters,v 1.12 2003/11/17 09:32:58 sekiya Exp $
21.10Slukem
31.10Slukem.include <bsd.sys.mk>		# for HOST_SH
41.1Sthorpej
51.1Sthorpej# $S must correspond to the top of the 'sys' tree
61.1SthorpejS=	${.CURDIR}/../../../..
71.1Sthorpej
81.2SthorpejBINMODE?=	444
91.9Ssimonb
101.9Ssimonb# XXX SHOULD NOT NEED TO DEFINE THESE!
111.9SsimonbLIBCRT0=
121.9SsimonbLIBC=
131.9SsimonbLIBCRTBEGIN=
141.9SsimonbLIBCRTEND=
151.2Sthorpej
161.12Ssekiyarealall: ${PROG}
171.1Sthorpej
181.1Sthorpej.PATH:		${.CURDIR}/../common
191.7SthorpejAFLAGS+=	-D_LOCORE -D_KERNEL -mno-abicalls
201.1SthorpejCPPFLAGS+=	-nostdinc -D_STANDALONE -DNO_ABICALLS -I${.OBJDIR} -I${S}
211.1Sthorpej# compiler flags for smallest code size
221.11SsekiyaCFLAGS=		-ffreestanding -Os -Wall -Werror -mno-abicalls -msoft-float -G 1024
231.1SthorpejLDBUG=		-T $S/arch/mips/conf/stand.ldscript
241.10SlukemNETBSD_VERS!=	${HOST_SH} ${.CURDIR}/../../../../conf/osrelease.sh
251.1SthorpejCPPFLAGS+=	-DNETBSD_VERS='"${NETBSD_VERS}"'
261.6Sthorpej
271.6SthorpejCPPFLAGS+=	-Dsgimips
281.1Sthorpej
291.1Sthorpej# PROG set by parent.
301.5StvNOMAN=		# defined
311.2Sthorpej
321.3Ssoren# We load the kernel at 420K in from the start of RAM to give the boot
331.2Sthorpej# loader plenty of breathing room.  Load the boot loader starting at
341.2Sthorpej# the second page of RAM.
351.8Spooka# A warm thank-you to SGI for making load addresses different :)
361.2SthorpejLOAD_ADDRESS?=		0x88002000
371.8SpookaLOAD_ADDRESS_IP32?=	0x80002000
381.2Sthorpej
391.2Sthorpej# if there is a 'version' file, add rule for vers.c and add it to SRCS
401.2Sthorpej# and CLEANFILES
411.2Sthorpej.if exists(version)
421.2Sthorpej.PHONY: vers.c
431.2Sthorpejvers.c: ${.CURDIR}/version
441.10Slukem	${HOST_SH} ${S}/conf/newvers_stand.sh -N ${.CURDIR}/version "sgimips"
451.2Sthorpej
461.1SthorpejSRCS+=	vers.c
471.1SthorpejCLEANFILES+= vers.c
481.2Sthorpej.endif
491.1Sthorpej
501.1Sthorpej### find out what to use for libkern
511.1SthorpejKERN_AS=	library
521.1Sthorpej.include "${S}/lib/libkern/Makefile.inc"
531.1SthorpejLIBKERN=	${KERNLIB}
541.1Sthorpej
551.1Sthorpej### find out what to use for libz
561.1SthorpejZ_AS=		library
571.1Sthorpej.include "${S}/lib/libz/Makefile.inc"
581.1SthorpejLIBZ=		${ZLIB}
591.1Sthorpej
601.1Sthorpej### find out what to use for libsa
611.1SthorpejSA_AS=		library
621.1SthorpejSAMISCMAKEFLAGS+=SA_USE_LOADFILE=yes SA_USE_CREAD=yes
631.1Sthorpej# for now:
641.1SthorpejSAMISCMAKEFLAGS+=SA_INCLUDE_NET=no
651.1Sthorpej.include "${S}/lib/libsa/Makefile.inc"
661.1SthorpejLIBSA=		${SALIB}
671.12Ssekiya
681.12Ssekiya.if !make(obj) && !make(clean) && !make(cleandir)
691.12Ssekiya.BEGIN:
701.12Ssekiya	@([ -h machine ] || ln -s ${S}/arch/${MACHINE}/include machine)
711.12Ssekiya	@([ -h mips ] || ln -s ${S}/arch/mips/include mips)
721.12Ssekiya.NOPATH: machine mips
731.12Ssekiya.endif
741.12SsekiyaCLEANFILES+= machine mips
751.12Ssekiya
761.1Sthorpej
771.1SthorpejLIBS=		${LIBSA} ${LIBZ} ${LIBSA} ${LIBKERN}
781.1Sthorpej
791.1Sthorpej.include <bsd.prog.mk>
80