Makefile revision 1.12
1#	$NetBSD: Makefile,v 1.12 2000/07/06 19:42:55 dmcmahill Exp $
2
3S=	${.CURDIR}/../../../..
4
5PROG=		ofwboot
6FILES=		${PROG}.elf ${PROG}.xcf
7SRCS=		Locore.c boot.c ofdev.c net.c netif_of.c alloc.c
8XCOFFXTRA=	Xcoffxtra.c
9XCOFFXTRAOBJ=	Xcoffxtra.o
10CFLAGS+=	-msoft-float
11#CFLAGS+=	-DDEBUG -DNETIF_DEBUG
12CPPFLAGS+=	-D_STANDALONE -DSUPPORT_DHCP
13
14.PATH:		${S}/arch/powerpc/powerpc
15SRCS+=		ofwmagic.S
16
17MKMAN=		no
18STRIPFLAG=
19BINMODE=	444
20OBJCOPY?=	objcopy
21
22.if !defined(FIXCOFF)
23.ifnmake(print-objdir)
24FIXCOFFDIR!=	cd ${.CURDIR}/../fixcoff; ${MAKE} print-objdir
25FIXCOFF=	${FIXCOFFDIR}/fixcoff
26FIXCOFFTARG=	${FIXCOFF}
27
28${FIXCOFF}:
29	(cd ${.CURDIR}/../fixcoff; make)
30
31.endif
32.else
33FIXCOFFTARG=
34.endif
35
36NEWVERSWHAT=	"OpenFirmware Boot"
37
38# For now...
39#RELOC=		20000
40RELOC=		6c0000
41COPTS=		-Os
42
43ENTRY=		_start
44
45CLEANFILES+=	vers.c vers.o ${PROG}.elf
46
47CPPFLAGS+=	-I. -I${.CURDIR}/../../.. -I${.CURDIR}/../../../..
48CPPFLAGS+=	-DRELOC=0x${RELOC}
49#CPPFLAGS+=	-DXCOFF_GLUE		# for booting PCI Powermacs
50
51CLEANFILES+= ${XCOFFXTRAOBJ}
52
53.BEGIN:
54	@[ -h machine ] || ln -s ${S}/arch/${MACHINE}/include machine
55	@[ -h powerpc ] || ln -s ${S}/arch/powerpc/include powerpc
56.NOPATH: machine powerpc
57CLEANFILES+= machine powerpc
58
59### find out what to use for libkern
60KERN_AS=	library
61.include "${S}/lib/libkern/Makefile.inc"
62LIBKERN=	${KERNLIB}
63
64### find out what to use for libz
65Z_AS=		library
66.include "${S}/lib/libz/Makefile.inc"
67LIBZ=		${ZLIB}
68
69### find out what to use for libsa
70SA_AS=		library
71SAMISCMAKEFLAGS= SA_USE_CREAD=yes SA_USE_LOADFILE=yes
72.include "${S}/lib/libsa/Makefile.inc"
73LIBSA=		${SALIB}
74
75${PROG}: ${OBJS} ${XCOFFXTRAOBJ} ${LIBSA} ${LIBZ} ${LIBKERN} ${FIXCOFFTARG}
76	sh ${.CURDIR}/../newvers.sh ${.CURDIR}/version ${NEWVERSWHAT}
77	${COMPILE.c} vers.c
78	${LD} -s -N -Ttext ${RELOC} -Bstatic -o ${PROG}.elf \
79	    ${OBJS} vers.o ${LIBSA} ${LIBZ} ${LIBKERN}
80	${OBJCOPY} -O binary ${PROG}.elf ${PROG}
81	${LD} -s -N -T ${.CURDIR}/../fixcoff/elf32_powerpc_merge.x -e _entry \
82	    -Ttext ${RELOC} -Bstatic -o ${PROG}.mrg  ${XCOFFXTRAOBJ} \
83	    ${OBJS} vers.o ${LIBSA} ${LIBZ} ${LIBKERN}
84	${OBJCOPY} -O aixcoff-rs6000 -R .comment -R .note \
85	    ${PROG}.mrg ${PROG}.xcf
86	${FIXCOFF} ${PROG}.xcf
87
88.include <bsd.prog.mk>
89