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