Makefile revision 1.25
11.25Sphx#	$NetBSD: Makefile,v 1.25 2009/09/11 12:00:12 phx Exp $
21.1Sthorpej
31.19StsutsuiS!=	cd ${.CURDIR}/../../../.. ; pwd
41.1Sthorpej
51.1SthorpejPROG=		ofwboot
61.25SphxSRCS=		ofwstart.S Locore.c boot.c ofdev.c net.c netif_of.c
71.25SphxSRCS+=		mbr.c rdb.c vers.c
81.15SsimonbCFLAGS+=	-msoft-float -Wno-main -ffreestanding
91.24StsutsuiCFLAGS+=	-Wall -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith
101.21Sgarbled#CPPFLAGS+=	-g -DALLOC_TRACE -DDEBUG #-DOFW_DEBUG -DNETIF_DEBUG
111.22Sgarbled#CPPFLAGS+=	-DOFWDUMP
121.10SthorpejCPPFLAGS+=	-D_STANDALONE -DSUPPORT_DHCP -I${.CURDIR}
131.21SgarbledCPPFLAGS+=	-DHEAP_VARIABLE
141.10SthorpejDBG=		-Os -mmultiple
151.10Sthorpej
161.1SthorpejSRCS+=		ofwmagic.S
171.5Ssakamoto.PATH:		${S}/arch/powerpc/powerpc
181.12Sitojun
191.12SitojunSRCS+=		byteorder.c
201.12Sitojun.PATH:		${S}/lib/libsa
211.10Sthorpej
221.11StvNOMAN=		# defined
231.2SthorpejSTRIPFLAG=
241.1SthorpejBINMODE=	444
251.15Ssimonb
261.15Ssimonb# XXX SHOULD NOT NEED TO DEFINE THESE!
271.15SsimonbLIBCRT0=
281.15SsimonbLIBC=
291.15SsimonbLIBCRTBEGIN=
301.15SsimonbLIBCRTEND=
311.1Sthorpej
321.1SthorpejNEWVERSWHAT=	"OpenFirmware Boot"
331.1Sthorpej
341.1Sthorpej# For now...
351.1SthorpejRELOC=		20000
361.1Sthorpej
371.1SthorpejENTRY=		_start
381.1Sthorpej
391.14SchsCLEANFILES+=	vers.c
401.1Sthorpej
411.19StsutsuiCPPFLAGS+=	-I. -I${S} -I${S}/../common/include
421.1SthorpejCPPFLAGS+=	-DRELOC=0x${RELOC}
431.1SthorpejCPPFLAGS+=	-DFIRMWORKSBUGS
441.3SdrochnerCPPFLAGS+=	-DCOMPAT_386BSD_MBRPART
451.1Sthorpej
461.16Smatt.if !make(obj) && !make(clean) && !make(cleandir)
471.7Swrstuden.BEGIN:
481.7Swrstuden	@[ -h machine ] || ln -s ${S}/arch/${MACHINE}/include machine
491.7Swrstuden	@[ -h powerpc ] || ln -s ${S}/arch/powerpc/include powerpc
501.16Smatt.endif
511.8Smycroft.NOPATH: machine powerpc
521.8SmycroftCLEANFILES+= machine powerpc
531.5Ssakamoto
541.1Sthorpej### find out what to use for libkern
551.1SthorpejKERN_AS=	library
561.1Sthorpej.include "${S}/lib/libkern/Makefile.inc"
571.1SthorpejLIBKERN=	${KERNLIB}
581.1Sthorpej
591.1Sthorpej### find out what to use for libz
601.1SthorpejZ_AS=		library
611.1Sthorpej.include "${S}/lib/libz/Makefile.inc"
621.1SthorpejLIBZ=		${ZLIB}
631.1Sthorpej
641.1Sthorpej### find out what to use for libsa
651.1SthorpejSA_AS=		library
661.10SthorpejSAMISCMAKEFLAGS= SA_USE_CREAD=yes SA_USE_LOADFILE=yes
671.1Sthorpej.include "${S}/lib/libsa/Makefile.inc"
681.1SthorpejLIBSA=		${SALIB}
691.1Sthorpej
701.9Sjdolecek.PHONY: vers.c
711.9Sjdolecekvers.c: version
721.17Slukem	${HOST_SH} ${S}/conf/newvers_stand.sh ${.CURDIR}/version "ofppc" ${NEWVERSWHAT}
731.13Schs
741.1Sthorpej${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN}
751.23Sgarbled	${LD} -s -N -T ${.CURDIR}/ldscript -Ttext ${RELOC} -Bstatic \
761.23Sgarbled	    -e ${ENTRY} -o ${PROG}.X ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN}
771.13Schs	mv -f ${PROG}.X ${PROG}
781.1Sthorpej
791.1Sthorpej.include <bsd.prog.mk>
80