Makefile.booters revision 1.18
11.18Sscw#	$NetBSD: Makefile.booters,v 1.18 2009/04/11 10:56:12 scw Exp $
21.1Sjdolecek
31.1SjdolecekS?=		${.CURDIR}/../../../..
41.1SjdolecekMDEC_DIR?=	/usr/mdec
51.1SjdolecekRELOC?=		0x3F0000
61.18SscwCOPTS?=		-Os -Wall -Wno-main -Wmissing-prototypes -Wstrict-prototypes \
71.18Sscw		-ffreestanding -fomit-frame-pointer
81.1SjdolecekDEFS?= 
91.1SjdolecekSTRIPFLAG?=
101.1Sjdolecek
111.8StvNOMAN=  # defined
121.8StvNOMAN=	# defined
131.8StvNOLINT= # defined
141.8StvNOLINT=	# defined
151.8StvNOPIC=	# defined
161.8StvNOPROFILE=# defined
171.8StvNOLINT=# defined
181.1Sjdolecek
191.1SjdolecekINCPATH=-I${.OBJDIR} -I${.CURDIR} -I${.CURDIR}/../libsa -I${.CURDIR}/../libbug \
201.1Sjdolecek        -I${.CURDIR}/../../include -I${S} -I${S}/lib/libsa
211.14StsutsuiCFLAGS= -nostdinc -m68020-60 -Wa,-m68030
221.14StsutsuiCPPFLAGS+= -D__daddr_t=int32_t
231.17StsutsuiCPPFLAGS+= -D_STANDALONE
241.14StsutsuiCPPFLAGS+= ${INCPATH} ${DEFS}
251.1SjdolecekBINDIR= ${MDEC_DIR}
261.1Sjdolecek
271.15Stsutsui# XXX SHOULD NOT NEED TO DEFINE THESE!
281.15StsutsuiLIBCRT0=
291.15StsutsuiLIBC=
301.15StsutsuiLIBCRTBEGIN=
311.15StsutsuiLIBCRTEND=
321.15Stsutsui
331.1Sjdolecek.if exists(${.CURDIR}/version)
341.1SjdolecekSRCS+= vers.c
351.1SjdolecekCLEANFILES+= vers.c
361.1Sjdolecek
371.1Sjdolecekvers.c: version
381.12Slukem	${HOST_SH} ${S}/conf/newvers_stand.sh -DM ${.CURDIR}/version "mvme68k"
391.1Sjdolecek.endif
401.1Sjdolecek
411.1SjdolecekCLEANFILES+= machine m68k
421.1Sjdolecek
431.16Stsutsui.if !make(obj) && !make(clean) && !make(cleandir)
441.16Stsutsui.NOPATH: machine m68k
451.16Stsutsui.BEGIN: machine m68k
461.16Stsutsui
471.1Sjdolecekmachine :
481.1Sjdolecek	-rm -f ${.TARGET}
491.1Sjdolecek	ln -s $S/arch/mvme68k/include machine
501.1Sjdolecek
511.1Sjdolecekm68k :
521.1Sjdolecek	-rm -f ${.TARGET}
531.1Sjdolecek	ln -s $S/arch/m68k/include m68k
541.16Stsutsui.endif
551.1Sjdolecek
561.1Sjdolecek.if defined(LIB)
571.1Sjdolecek
581.1Sjdoleceklib${LIB}.a:: machine m68k ${OBJS}
591.2Sscwbeforedepend:	machine m68k
601.1Sjdolecek
611.1Sjdolecek.else
621.1Sjdolecek
631.5SscwPROGDEPENDS?=	${SRTOBJ} ${BUGCRT} ${OBJS} ${LIBS}
641.5SscwPROGLINKOBJS?=	${PROGDEPENDS}
651.5Sscw
661.5Sscw${PROG}: machine m68k ${PROGDEPENDS}
671.5Sscw	${LD} -N -Ttext ${RELOC} -o $@ ${PROGLINKOBJS}
681.1Sjdolecek
691.9Sbjh21.include <bsd.own.mk>
701.9Sbjh21
711.1SjdolecekLIB_SA_DIR=	${.CURDIR}/../libsa
721.9Sbjh21LIBSA_DIR!=	cd ${LIB_SA_DIR} && ${PRINTOBJDIR}
731.1SjdolecekLIBSA=${LIBSA_DIR}/libsa.a
741.1Sjdolecek
751.1Sjdolecek.PHONY: ${LIBSA}
761.1Sjdolecek${LIBSA}:
771.1Sjdolecek	@echo making sure the libsa is up to date...
781.1Sjdolecek	@cd ${LIB_SA_DIR} && ${MAKE}
791.1Sjdolecek
801.1SjdolecekSRTOBJ?= ${LIBSA_DIR}/SRT0.o
811.1Sjdolecek.PHONY: ${SRTOBJ}
821.1Sjdolecek${SRTOBJ}:
831.1Sjdolecek	@echo making sure the libsa is up to date...
841.1Sjdolecek	@cd ${LIB_SA_DIR} && ${MAKE} SRT0.o
851.1Sjdolecek
861.1SjdolecekLIB_BUG_DIR=	${.CURDIR}/../libbug
871.9Sbjh21LIBBUG_DIR!=	cd ${LIB_BUG_DIR} && ${PRINTOBJDIR}
881.1SjdolecekLIBBUG=${LIBBUG_DIR}/libbug.a
891.1Sjdolecek
901.1Sjdolecek.PHONY: ${LIBBUG}
911.1Sjdolecek${LIBBUG}:
921.1Sjdolecek	@echo making sure the libbug is up to date...
931.1Sjdolecek	@(cd ${LIB_BUG_DIR}; ${MAKE})
941.1Sjdolecek
951.6SscwBUGCRT=${LIBBUG_DIR}/bugstart.o
961.1Sjdolecek
971.1Sjdolecek.PHONY: ${BUGCRT}
981.1Sjdolecek$(BUGCRT):
991.1Sjdolecek	@echo making sure the bugcrt is up to date...
1001.6Sscw	@(cd ${LIB_BUG_DIR}; ${MAKE} bugstart.o)
1011.1Sjdolecek
1021.1SjdolecekWRTVID_BOOT_DIR=  ${.CURDIR}/../wrtvid
1031.9Sbjh21WRTVID_DIR!=	cd ${WRTVID_BOOT_DIR} && ${PRINTOBJDIR}
1041.1SjdolecekWRTVID=${WRTVID_DIR}/wrtvid
1051.1Sjdolecek
1061.1Sjdolecek.PHONY: ${WRTVID}
1071.1Sjdolecek${WRTVID}:
1081.1Sjdolecek	@echo making sure the wrtvid is up to date...
1091.7Sscw	@(cd ${WRTVID_BOOT_DIR}; ${MAKE} dependall)
1101.1Sjdolecek
1111.1Sjdolecek.endif
112