1 # $NetBSD: Makefile,v 1.31 2014/08/10 17:44:26 joerg Exp $ 2 3 S!= cd ${.CURDIR}/../../../.. ; pwd 4 5 PROG= ofwboot 6 NOMAN= # defined 7 SRCS= ofwstart.S Locore.c boot.c ofdev.c net.c netif_of.c 8 SRCS+= mbr.c rdb.c vers.c 9 CFLAGS+= ${${ACTIVE_CC} == "gcc":? -msoft-float :} 10 CFLAGS+= -Wno-main -ffreestanding 11 CFLAGS+= -Wall -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith 12 #CPPFLAGS+= -g -DALLOC_TRACE -DDEBUG #-DOFW_DEBUG -DNETIF_DEBUG 13 #CPPFLAGS+= -DOFWDUMP 14 CPPFLAGS+= -D_STANDALONE -DSUPPORT_DHCP -I${.CURDIR} 15 CPPFLAGS+= -DHEAP_VARIABLE 16 17 .include <bsd.own.mk> 18 .include <bsd.klinks.mk> 19 20 DBG= -Os 21 22 SRCS+= ofwmagic.S 23 .PATH: ${S}/arch/powerpc/powerpc 24 25 SRCS+= byteorder.c 26 .PATH: ${S}/lib/libsa 27 28 STRIPFLAG= 29 BINMODE= 444 30 31 # XXX SHOULD NOT NEED TO DEFINE THESE! 32 LIBCRT0= 33 LIBCRTI= 34 LIBC= 35 LIBCRTBEGIN= 36 LIBCRTEND= 37 38 NEWVERSWHAT= "OpenFirmware Boot" 39 40 # For now... 41 RELOC= 20000 42 43 ENTRY= _start 44 45 CLEANFILES+= vers.c 46 47 CPPFLAGS+= -I. -I${S} -I${S}/../common/include 48 CPPFLAGS+= -DRELOC=0x${RELOC} 49 CPPFLAGS+= -DFIRMWORKSBUGS 50 CPPFLAGS+= -DCOMPAT_386BSD_MBRPART 51 52 ### find out what to use for libkern 53 KERN_AS= library 54 .include "${S}/lib/libkern/Makefile.inc" 55 LIBKERN= ${KERNLIB} 56 57 ### find out what to use for libz 58 Z_AS= library 59 .include "${S}/lib/libz/Makefile.inc" 60 LIBZ= ${ZLIB} 61 62 ### find out what to use for libsa 63 SA_AS= library 64 SAMISCMAKEFLAGS= SA_USE_CREAD=yes SA_USE_LOADFILE=yes 65 .include "${S}/lib/libsa/Makefile.inc" 66 LIBSA= ${SALIB} 67 68 .PHONY: vers.c 69 vers.c: version 70 ${HOST_SH} ${S}/conf/newvers_stand.sh ${${MKREPRO} == "yes" :?:-D} \ 71 ${.CURDIR}/version "ofppc" ${NEWVERSWHAT} 72 73 ${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 74 ${_MKTARGET_LINK} 75 ${LD} -s -N -T ${.CURDIR}/ldscript -Ttext ${RELOC} -Bstatic \ 76 -e ${ENTRY} -o ${PROG}.X ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 77 mv -f ${PROG}.X ${PROG} 78 79 .include <bsd.prog.mk> 80