Home | History | Annotate | Line # | Download | only in boot
Makefile revision 1.41
      1  1.41  christos #	$NetBSD: Makefile,v 1.41 2017/04/09 20:51:55 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.24       uwe 
     35  1.12  christos # conjure up a magic header that is accepted by all Sun PROMS;
     36  1.12  christos # see installboot.c for details.
     37  1.21  sommerfe 
     38  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'
     39  1.21  sommerfe 
     40  1.17        pk boot.net: boot.${RELOC_DEFAULT}
     41  1.21  sommerfe 	(printf ${SUN_MAGIC_HEADER}; cat ${.ALLSRC} ) > ${.TARGET}
     42  1.31    martin 
     43  1.32    martin bootjs.net: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN}
     44  1.39    martin 	${LD} -S -o ${.TARGET} ${LINKFLAGS} -Ttext 300000 ${OBJS} \
     45  1.31    martin 	    ${LIBSA} ${LIBZ} ${LIBKERN}
     46  1.31    martin 	${SIZE} ${.TARGET}
     47  1.38       mrg CLEANFILES+=	bootjs.net.map
     48   1.1        pk 
     49  1.40  christos .include "${S}/conf/newvers_stand.mk"
     50  1.40  christos 
     51  1.19        pk .include <bsd.prog.mk>
     52  1.41  christos 
     53  1.41  christos .for RELOC in ${RELOCS}
     54  1.41  christos boot.${RELOC}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN}
     55  1.41  christos 	${LD} -S -o ${.TARGET}.tmp ${LINKFLAGS} -Ttext ${RELOC} ${OBJS} \
     56  1.41  christos 	    ${LIBSA} ${LIBZ} ${LIBKERN}
     57  1.41  christos 	${SIZE} ${.TARGET}.tmp
     58  1.41  christos 	${OBJCOPY} -O binary ${.TARGET}.tmp ${.TARGET}
     59  1.41  christos 	rm -f ${.TARGET}.tmp
     60  1.41  christos CLEANFILES+=	boot.${RELOC}.map
     61  1.41  christos .endfor
     62