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