1228753Smm#	$NetBSD: Makefile,v 1.30 2011/01/21 15:59:05 joerg Exp $
2228753Smm
3228753SmmNOMAN= # defined
4228753Smm
5228753Smm.include <bsd.own.mk>
6228753Smm
7228753SmmCOMMON= ${.CURDIR}/../common
8228753SmmCOMMONOBJ!=	cd ${COMMON} && ${PRINTOBJDIR}
9228753Smm
10228753Smm.PATH: ${.CURDIR}/../boot ${COMMONOBJ} ${.CURDIR}/../../../powerpc/powerpc
11228753Smm
12228753SmmS= ${.CURDIR}/../../../..
13228753SmmL= ${COMMONOBJ}/lib
14228753Smm
15228753SmmELF2PEF= ${.CURDIR}/../../../powerpc/stand/mkbootimage
16228753Smm
17228753SmmCOMMONLIBDIR= ${.CURDIR}/../../../../../common
18228753Smm
19228753SmmBASE?=		boot
20228753SmmPROG=		${BASE}
21228753SmmNEWVERSWHAT=	"BOOT"
22228753Smm
23228753SmmSRCS= srt0.s
24228753SmmSRCS+= boot.c clock.c com.c conf.c cons.c cpu.c devopen.c
25228753SmmSRCS+= fd.c filesystem.c inkernel.c io.c kbd.c monitor.c ns16550.c
26228753SmmSRCS+= pci.c prf.c sd.c siop.c tgets.c vers.c vga.c video.c vreset.c wdc.c wd.c
27229592SmmSRCS+= setjmp.S
28228753Smm
29228753SmmCFLAGS= -Wno-main -ffreestanding
30228753SmmAFLAGS= -x assembler-with-cpp
31228753Smm
32228753SmmCPPFLAGS= -nostdinc
33228753SmmCPPFLAGS+= -I${.OBJDIR} -I${S} -I${COMMONLIBDIR}/include -I${S}/lib/libsa
34228753SmmCPPFLAGS+= -I${ELF2PEF}
35228753SmmCPPFLAGS+= -Werror -Wall -Wstrict-prototypes -Wmissing-prototypes
36228753SmmCPPFLAGS+= -D_STANDALONE -DRELOC=${RELOC} -DUSE_SCAN
37228753SmmCPPFLAGS+= -D__daddr_t=int32_t
38228753Smm#CPPFLAGS+= -DDBMONITOR
39228753Smm
40228753Smm.if (${BASE} == "boot")
41228753SmmCPPFLAGS+= -DCONS_BE
42228753Smm.elif (${BASE} == "boot_com0")
43228753SmmCPPFLAGS+= -DCONS_SERIAL -DCOMSPEED=9600 -DCOMPORT=0x3f8
44228753Smm.elif (${BASE} == "boot_vga")
45228753SmmCPPFLAGS+= -DCONS_VGA
46228753Smm.endif
47228753Smm
48228753SmmSTRIPFLAG=
49228753SmmBINMODE= 444
50228753Smm
51228753Smm# XXX SHOULD NOT NEED TO DEFINE THESE!
52228753SmmLIBCRT0=
53228753SmmLIBC=
54228753SmmLIBCRTBEGIN=
55228753SmmLIBCRTEND=
56228753Smm
57228753SmmRELOC= 0x700000
58228753Smm
59228753SmmCLEANFILES+= vers.c machine powerpc ${PROG}.elf
60228753Smm
61228753SmmLIBS= ${L}/sa/libsa.a ${L}/kern/libkern.a ${L}/z/libz.a
62228753Smm
63228753Smm.if !make(obj) && !make(clean) && !make(cleandir)
64228753Smm.BEGIN: machine powerpc
65228753Smm.NOPATH: machine powerpc
66228753Smm
67228753Smmmachine::
68228753Smm	-rm -f $@
69228753Smm	ln -s ${S}/arch/${MACHINE}/include $@
70228753Smm
71228753Smmpowerpc::
72228753Smm	-rm -f $@
73228753Smm	ln -s ${S}/arch/powerpc/include $@
74228753Smm.endif
75228753Smm
76228753Smmvers.c: ${.CURDIR}/../boot/version
77228753Smm	${HOST_SH} ${S}/conf/newvers_stand.sh ${${MKREPRO} == "yes" :?:-D} \
78228753Smm	    ${.CURDIR}/../boot/version "bebox" ${NEWVERSWHAT}
79228753Smm
80228753Smm${PROG}: ${OBJS} ${LIBS}
81228753Smm	${LD} -o ${PROG}.elf -N -T ${.CURDIR}/../boot/ld.script \
82228753Smm		-Ttext ${RELOC} ${OBJS} ${LIBS}
83228753Smm	${STRIP} -o ${PROG} ${PROG}.elf
84228753Smm
85228753Smm.include <bsd.prog.mk>
86228753Smm