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