1# $NetBSD: Makefile,v 1.34 2005/12/11 12:19:08 christos Exp $ 2 3STRIPFLAG= 4PROGSOURCE= boot.c net.c netif_sun.c conf.c openfirm.c bootinfo.c \ 5 mmu.c prompatch.c vers.c 6NEWVERSWHAT= "Secondary Boot" 7FILES= boot.net bootjs.net ${RELOCS:S/^/boot./g} 8CLEANFILES:= vers.c ${FILES} 9LINKS= ${BINDIR}/boot.${RELOC_DEFAULT} ${BINDIR}/boot 10 11CPPFLAGS+= -DBOOT_AOUT -DBOOT_ELF32 -DSUPPORT_DHCP 12CFLAGS+= -freestanding 13 14INCLUDE_LIBZ= yes 15SAMISCMAKEFLAGS= SA_USE_CREAD=yes 16 17.include "../Makefile.buildboot" 18 19.if ${MACHINE} == sparc64 20CFLAGS+= -m32 21LDFLAGS+= -m elf32_sparc 22AFLAGS+= -Wa,-32 23.endif 24 25.include <bsd.own.mk> 26 27OBJS=${SRCS:N*.h:N*.sh:N*.fth:R:S/$/.o/g} 28 29LINKFLAGS=-N -e start 30 31.MAIN: all 32realall: ${FILES} 33 34.PHONY: vers.c 35vers.c: version 36 ${HOST_SH} ${S}/conf/newvers_stand.sh ${.CURDIR}/version "sparc" ${NEWVERSWHAT} 37 38.for RELOC in ${RELOCS} 39boot.${RELOC}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 40 ${LD} -o ${.TARGET}.tmp ${LINKFLAGS} -Ttext ${RELOC} ${OBJS} \ 41 ${LIBSA} ${LIBZ} ${LIBKERN} 42 ${SIZE} ${.TARGET}.tmp 43 ${OBJCOPY} -O binary ${.TARGET}.tmp ${.TARGET} 44 rm -f ${.TARGET}.tmp 45.endfor 46 47# conjure up a magic header that is accepted by all Sun PROMS; 48# see installboot.c for details. 49 50SUN_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' 51 52boot.net: boot.${RELOC_DEFAULT} 53 (printf ${SUN_MAGIC_HEADER}; cat ${.ALLSRC} ) > ${.TARGET} 54 55bootjs.net: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 56 ${LD} -o ${.TARGET} ${LINKFLAGS} -Ttext 300000 ${OBJS} \ 57 ${LIBSA} ${LIBZ} ${LIBKERN} 58 ${SIZE} ${.TARGET} 59 60.include <bsd.prog.mk> 61