Makefile revision 1.42
11.42Schristos#	$NetBSD: Makefile,v 1.42 2017/04/28 13:38:35 christos Exp $
21.1Spk
31.12SchristosSTRIPFLAG=
41.24SuwePROGSOURCE=	boot.c net.c netif_sun.c conf.c openfirm.c bootinfo.c \
51.40Schristos		mmu.c prompatch.c
61.5SmrgNEWVERSWHAT=	"Secondary Boot"
71.32SmartinFILES=		boot.net bootjs.net ${RELOCS:S/^/boot./g}
81.40SchristosCLEANFILES:=	${FILES}
91.17SpkLINKS=		${BINDIR}/boot.${RELOC_DEFAULT} ${BINDIR}/boot
101.27Sthorpej
111.33SmartinCPPFLAGS+=	-DBOOT_AOUT -DBOOT_ELF32 -DSUPPORT_DHCP
121.29SmrgCFLAGS+=	-freestanding
131.1Spk
141.5SmrgINCLUDE_LIBZ=	yes
151.5SmrgSAMISCMAKEFLAGS= SA_USE_CREAD=yes
161.5Smrg
171.5Smrg.include "../Makefile.buildboot"
181.25Smrg
191.36Snakayama.if ${MACHINE} == sparc64
201.25SmrgCFLAGS+=	-m32
211.25SmrgLDFLAGS+=	-m elf32_sparc
221.25SmrgAFLAGS+=	-Wa,-32
231.25Smrg.endif
241.7Spk
251.17Spk.include <bsd.own.mk>
261.12Schristos
271.17SpkOBJS=${SRCS:N*.h:N*.sh:N*.fth:R:S/$/.o/g}
281.15Ssommerfe
291.38SmrgLINKFLAGS=-N -e start -Map $@.map
301.12Schristos
311.17Spk.MAIN: all
321.20Smycroftrealall: ${FILES}
331.5Smrg
341.24Suwe
351.12Schristos# conjure up a magic header that is accepted by all Sun PROMS;
361.12Schristos# see installboot.c for details.
371.21Ssommerfe
381.21SsommerfeSUN_MAGIC_HEADER='\01\03\01\07\060\200\0\07\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0'
391.21Ssommerfe
401.17Spkboot.net: boot.${RELOC_DEFAULT}
411.21Ssommerfe	(printf ${SUN_MAGIC_HEADER}; cat ${.ALLSRC} ) > ${.TARGET}
421.31Smartin
431.42Schristos
441.42Schristos.include "${S}/conf/newvers_stand.mk"
451.42Schristos
461.42Schristos.include <bsd.prog.mk>
471.42Schristos
481.32Smartinbootjs.net: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN}
491.39Smartin	${LD} -S -o ${.TARGET} ${LINKFLAGS} -Ttext 300000 ${OBJS} \
501.31Smartin	    ${LIBSA} ${LIBZ} ${LIBKERN}
511.31Smartin	${SIZE} ${.TARGET}
521.38SmrgCLEANFILES+=	bootjs.net.map
531.1Spk
541.41Schristos.for RELOC in ${RELOCS}
551.41Schristosboot.${RELOC}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN}
561.41Schristos	${LD} -S -o ${.TARGET}.tmp ${LINKFLAGS} -Ttext ${RELOC} ${OBJS} \
571.41Schristos	    ${LIBSA} ${LIBZ} ${LIBKERN}
581.41Schristos	${SIZE} ${.TARGET}.tmp
591.41Schristos	${OBJCOPY} -O binary ${.TARGET}.tmp ${.TARGET}
601.41Schristos	rm -f ${.TARGET}.tmp
611.41SchristosCLEANFILES+=	boot.${RELOC}.map
621.41Schristos.endfor
63