1 1.27 joerg # $NetBSD: Makefile,v 1.27 2011/01/24 19:27:18 joerg Exp $ 2 1.1 thorpej 3 1.19 tsutsui S!= cd ${.CURDIR}/../../../.. ; pwd 4 1.1 thorpej 5 1.1 thorpej PROG= ofwboot 6 1.27 joerg NOMAN= # defined 7 1.25 phx SRCS= ofwstart.S Locore.c boot.c ofdev.c net.c netif_of.c 8 1.25 phx SRCS+= mbr.c rdb.c vers.c 9 1.15 simonb CFLAGS+= -msoft-float -Wno-main -ffreestanding 10 1.24 tsutsui CFLAGS+= -Wall -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith 11 1.21 garbled #CPPFLAGS+= -g -DALLOC_TRACE -DDEBUG #-DOFW_DEBUG -DNETIF_DEBUG 12 1.22 garbled #CPPFLAGS+= -DOFWDUMP 13 1.10 thorpej CPPFLAGS+= -D_STANDALONE -DSUPPORT_DHCP -I${.CURDIR} 14 1.21 garbled CPPFLAGS+= -DHEAP_VARIABLE 15 1.27 joerg 16 1.27 joerg .include <bsd.own.mk> 17 1.27 joerg 18 1.10 thorpej DBG= -Os -mmultiple 19 1.10 thorpej 20 1.1 thorpej SRCS+= ofwmagic.S 21 1.5 sakamoto .PATH: ${S}/arch/powerpc/powerpc 22 1.12 itojun 23 1.12 itojun SRCS+= byteorder.c 24 1.12 itojun .PATH: ${S}/lib/libsa 25 1.10 thorpej 26 1.2 thorpej STRIPFLAG= 27 1.1 thorpej BINMODE= 444 28 1.15 simonb 29 1.15 simonb # XXX SHOULD NOT NEED TO DEFINE THESE! 30 1.15 simonb LIBCRT0= 31 1.15 simonb LIBC= 32 1.15 simonb LIBCRTBEGIN= 33 1.15 simonb LIBCRTEND= 34 1.1 thorpej 35 1.1 thorpej NEWVERSWHAT= "OpenFirmware Boot" 36 1.1 thorpej 37 1.1 thorpej # For now... 38 1.1 thorpej RELOC= 20000 39 1.1 thorpej 40 1.1 thorpej ENTRY= _start 41 1.1 thorpej 42 1.14 chs CLEANFILES+= vers.c 43 1.1 thorpej 44 1.19 tsutsui CPPFLAGS+= -I. -I${S} -I${S}/../common/include 45 1.1 thorpej CPPFLAGS+= -DRELOC=0x${RELOC} 46 1.1 thorpej CPPFLAGS+= -DFIRMWORKSBUGS 47 1.3 drochner CPPFLAGS+= -DCOMPAT_386BSD_MBRPART 48 1.1 thorpej 49 1.16 matt .if !make(obj) && !make(clean) && !make(cleandir) 50 1.7 wrstuden .BEGIN: 51 1.7 wrstuden @[ -h machine ] || ln -s ${S}/arch/${MACHINE}/include machine 52 1.7 wrstuden @[ -h powerpc ] || ln -s ${S}/arch/powerpc/include powerpc 53 1.16 matt .endif 54 1.8 mycroft .NOPATH: machine powerpc 55 1.8 mycroft CLEANFILES+= machine powerpc 56 1.5 sakamoto 57 1.1 thorpej ### find out what to use for libkern 58 1.1 thorpej KERN_AS= library 59 1.1 thorpej .include "${S}/lib/libkern/Makefile.inc" 60 1.1 thorpej LIBKERN= ${KERNLIB} 61 1.1 thorpej 62 1.1 thorpej ### find out what to use for libz 63 1.1 thorpej Z_AS= library 64 1.1 thorpej .include "${S}/lib/libz/Makefile.inc" 65 1.1 thorpej LIBZ= ${ZLIB} 66 1.1 thorpej 67 1.1 thorpej ### find out what to use for libsa 68 1.1 thorpej SA_AS= library 69 1.10 thorpej SAMISCMAKEFLAGS= SA_USE_CREAD=yes SA_USE_LOADFILE=yes 70 1.1 thorpej .include "${S}/lib/libsa/Makefile.inc" 71 1.1 thorpej LIBSA= ${SALIB} 72 1.1 thorpej 73 1.9 jdolecek .PHONY: vers.c 74 1.9 jdolecek vers.c: version 75 1.26 joerg ${HOST_SH} ${S}/conf/newvers_stand.sh ${${MKREPRO} == "yes" :?:-D} \ 76 1.26 joerg ${.CURDIR}/version "ofppc" ${NEWVERSWHAT} 77 1.13 chs 78 1.1 thorpej ${PROG}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 79 1.23 garbled ${LD} -s -N -T ${.CURDIR}/ldscript -Ttext ${RELOC} -Bstatic \ 80 1.23 garbled -e ${ENTRY} -o ${PROG}.X ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN} 81 1.13 chs mv -f ${PROG}.X ${PROG} 82 1.1 thorpej 83 1.1 thorpej .include <bsd.prog.mk> 84