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