Makefile revision 1.2
11.2Smrg#	$NetBSD: Makefile,v 1.2 2001/03/04 14:50:05 mrg Exp $
21.1Smrg
31.1SmrgCURDIR=	${.CURDIR}
41.1SmrgS=	${CURDIR}/../../../..
51.1Smrg
61.1Smrg#
71.1Smrg# Override normal settings
81.1Smrg#
91.1Smrg
101.1SmrgWARNS=		0
111.1Smrg
121.1SmrgPROG?=		ofwboot
131.1SmrgSRCS=		srt0.s Locore.c boot.c ofdev.c alloc.c net.c netif_of.c vers.c
141.1Smrg.PATH:		${S}/arch/sparc64/sparc64
151.1Smrg
161.1SmrgCWARNFLAGS+=	-Wno-main
171.2SmrgCFLAGS+=	${COPTS} ${CEXTRAFLAGS}
181.2SmrgCPPFLAGS+=	-D_STANDALONE -DSUN4U
191.1Smrg#CPPFLAGS+=	-DNETIF_DEBUG 
201.1Smrg
211.1SmrgMKMAN=		no
221.1SmrgSTRIPFLAG=
231.1SmrgBINMODE=	444
241.1SmrgOBJCOPY?=	objcopy
251.1Smrg
261.1SmrgNEWVERSWHAT=	"OpenFirmware Boot"
271.1Smrg
281.1Smrg#
291.1Smrg# Elf64 defaults to 1MB
301.1Smrg#
311.1Smrg# We may get address conflicts with other bootloaders, say
321.1Smrg# Sun's ufsboot, so we'll pick a reasonably empty address.
331.1Smrg#
341.1SmrgRELOC=		800000
351.1Smrg
361.1SmrgENTRY=		_start
371.1Smrg
381.1SmrgCLEANFILES+=	vers.c sparc machine
391.1Smrg
401.1SmrgCPPFLAGS+=	-I${CURDIR}/../../.. -I${CURDIR}/../../../.. -I${CURDIR} -I.
411.1SmrgCPPFLAGS+=	-DRELOC=0x${RELOC}
421.1Smrg
431.1Smrg#
441.1Smrg# XXXXX FIXME
451.1Smrg#
461.1SmrgCPPFLAGS+=	-DSPARC_BOOT_AOUT
471.1SmrgCPPFLAGS+=	-DSPARC_BOOT_ELF
481.1SmrgCPPFLAGS+=	-DSPARC_BOOT_UFS
491.1SmrgCPPFLAGS+=	-DSPARC_BOOT_NFS
501.1Smrg#CPPFLAGS+=	-DSPARC_BOOT_HSFS
511.1Smrg
521.1Smrg### find out what to use for libkern
531.1SmrgKERN_AS=	library
541.1Smrg.include "${S}/lib/libkern/Makefile.inc"
551.1SmrgLIBKERN=	${KERNLIB}
561.1Smrg
571.1Smrg### find out what to use for libz
581.1SmrgZ_AS=		library
591.1Smrg.include "${S}/lib/libz/Makefile.inc"
601.1SmrgLIBZ=		${ZLIB}
611.1Smrg
621.1Smrg### find out what to use for libsa
631.1SmrgSA_AS=		library
641.1SmrgSAMISCMAKEFLAGS= SA_USE_CREAD=yes
651.1Smrg.include "${S}/lib/libsa/Makefile.inc"
661.1SmrgLIBSA=		${SALIB}
671.1Smrg
681.2Smrg.NOPATH: machine sparc64
691.2Smrg${SRCS}: machine sparc64
701.1Smrg
711.1Smrgmachine:
721.1Smrg	rm -f machine
731.2Smrg	ln -s sparc64 machine
741.1Smrg
751.2Smrgsparc64:
761.2Smrg	rm -f sparc64
771.2Smrg	ln -s ${.CURDIR}/../../../sparc64/include sparc64
781.1Smrg
791.1Smrgvers.c: version
801.1Smrg	sh ${S}/conf/newvers_stand.sh ${CURDIR}/version "sparc64" ${NEWVERSWHAT}
811.1Smrg
821.1Smrg.if CROSS
831.1Smrg${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN}
841.1Smrg	${LD} -N -p -Ttext ${RELOC} -e ${ENTRY} >lderr -o ${PROG} \
851.1Smrg	    ${OBJS} -L${SADST} -lsa -L${ZDST} -lz -L${KERNDST} -lkern # solaris linker
861.1Smrg.else
871.1Smrg${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN}
881.1Smrg	${LD} -X -N -Ttext ${RELOC} -e ${ENTRY} -o ${PROG} \
891.1Smrg	    ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN}	# native linker
901.1Smrg.endif
911.1Smrg
921.1Smrg.include <bsd.prog.mk>
931.1Smrg
941.2Smrg.if ${MACHINE_ARCH} == "sparc64"
951.2SmrgAFLAGS+=		-Wa,-Av9a
961.2SmrgCEXTRAFLAGS?=		-D_LP64
971.2Smrg.else
981.2SmrgAFLAGS+=		-Wa,-Av8plusa
991.2Smrg.endif
1001.2Smrg
1011.1Smrg.if CROSS
1021.2SmrgAFLAGS+=		-x assembler-with-cpp -traditional-cpp -D_LOCORE -D__ELF__
1031.2SmrgCEXTRAFLAGS?=		-D_LP64
1041.1Smrg.else
1051.2SmrgAFLAGS+=		-x assembler-with-cpp -traditional-cpp -D_LOCORE -D__ELF__ ${CEXTRAFLAGS}
1061.1Smrg.endif
1071.2Smrg
1081.1SmrgNORMAL_S=	${CC} ${AFLAGS} ${CPPFLAGS} -c $<
1091.1Smrgsrt0.o: srt0.s
1101.1Smrg	${NORMAL_S}
1111.1Smrg
1121.1Smrg# Explicit dependency for this.
1131.1Smrgboot.o: boot.c elfXX_exec.c
114