Makefile revision 1.26
11.26Sjoerg#	$NetBSD: Makefile,v 1.26 2011/01/22 19:19:21 joerg Exp $
21.1Sthorpej
31.19StsutsuiS!=	cd ${.CURDIR}/../../../.. ; pwd
41.1Sthorpej
51.26Sjoerg.include <bsd.own.mk>
61.26Sjoerg
71.1SthorpejPROG=		ofwboot
81.25SphxSRCS=		ofwstart.S Locore.c boot.c ofdev.c net.c netif_of.c
91.25SphxSRCS+=		mbr.c rdb.c vers.c
101.15SsimonbCFLAGS+=	-msoft-float -Wno-main -ffreestanding
111.24StsutsuiCFLAGS+=	-Wall -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith
121.21Sgarbled#CPPFLAGS+=	-g -DALLOC_TRACE -DDEBUG #-DOFW_DEBUG -DNETIF_DEBUG
131.22Sgarbled#CPPFLAGS+=	-DOFWDUMP
141.10SthorpejCPPFLAGS+=	-D_STANDALONE -DSUPPORT_DHCP -I${.CURDIR}
151.21SgarbledCPPFLAGS+=	-DHEAP_VARIABLE
161.10SthorpejDBG=		-Os -mmultiple
171.10Sthorpej
181.1SthorpejSRCS+=		ofwmagic.S
191.5Ssakamoto.PATH:		${S}/arch/powerpc/powerpc
201.12Sitojun
211.12SitojunSRCS+=		byteorder.c
221.12Sitojun.PATH:		${S}/lib/libsa
231.10Sthorpej
241.11StvNOMAN=		# defined
251.2SthorpejSTRIPFLAG=
261.1SthorpejBINMODE=	444
271.15Ssimonb
281.15Ssimonb# XXX SHOULD NOT NEED TO DEFINE THESE!
291.15SsimonbLIBCRT0=
301.15SsimonbLIBC=
311.15SsimonbLIBCRTBEGIN=
321.15SsimonbLIBCRTEND=
331.1Sthorpej
341.1SthorpejNEWVERSWHAT=	"OpenFirmware Boot"
351.1Sthorpej
361.1Sthorpej# For now...
371.1SthorpejRELOC=		20000
381.1Sthorpej
391.1SthorpejENTRY=		_start
401.1Sthorpej
411.14SchsCLEANFILES+=	vers.c
421.1Sthorpej
431.19StsutsuiCPPFLAGS+=	-I. -I${S} -I${S}/../common/include
441.1SthorpejCPPFLAGS+=	-DRELOC=0x${RELOC}
451.1SthorpejCPPFLAGS+=	-DFIRMWORKSBUGS
461.3SdrochnerCPPFLAGS+=	-DCOMPAT_386BSD_MBRPART
471.1Sthorpej
481.16Smatt.if !make(obj) && !make(clean) && !make(cleandir)
491.7Swrstuden.BEGIN:
501.7Swrstuden	@[ -h machine ] || ln -s ${S}/arch/${MACHINE}/include machine
511.7Swrstuden	@[ -h powerpc ] || ln -s ${S}/arch/powerpc/include powerpc
521.16Smatt.endif
531.8Smycroft.NOPATH: machine powerpc
541.8SmycroftCLEANFILES+= machine powerpc
551.5Ssakamoto
561.1Sthorpej### find out what to use for libkern
571.1SthorpejKERN_AS=	library
581.1Sthorpej.include "${S}/lib/libkern/Makefile.inc"
591.1SthorpejLIBKERN=	${KERNLIB}
601.1Sthorpej
611.1Sthorpej### find out what to use for libz
621.1SthorpejZ_AS=		library
631.1Sthorpej.include "${S}/lib/libz/Makefile.inc"
641.1SthorpejLIBZ=		${ZLIB}
651.1Sthorpej
661.1Sthorpej### find out what to use for libsa
671.1SthorpejSA_AS=		library
681.10SthorpejSAMISCMAKEFLAGS= SA_USE_CREAD=yes SA_USE_LOADFILE=yes
691.1Sthorpej.include "${S}/lib/libsa/Makefile.inc"
701.1SthorpejLIBSA=		${SALIB}
711.1Sthorpej
721.9Sjdolecek.PHONY: vers.c
731.9Sjdolecekvers.c: version
741.26Sjoerg	${HOST_SH} ${S}/conf/newvers_stand.sh ${${MKREPRO} == "yes" :?:-D} \
751.26Sjoerg	    ${.CURDIR}/version "ofppc" ${NEWVERSWHAT}
761.13Schs
771.1Sthorpej${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN}
781.23Sgarbled	${LD} -s -N -T ${.CURDIR}/ldscript -Ttext ${RELOC} -Bstatic \
791.23Sgarbled	    -e ${ENTRY} -o ${PROG}.X ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN}
801.13Schs	mv -f ${PROG}.X ${PROG}
811.1Sthorpej
821.1Sthorpej.include <bsd.prog.mk>
83