Makefile.buildboot revision 1.15
1#	$NetBSD: Makefile.buildboot,v 1.15 2001/05/27 05:35:11 gmcgarry Exp $
2
3# RELOC=FFF00000 allows for boot prog up to FF000 (1044480) bytes long
4RELOC=	FFF00000
5
6S=		${.CURDIR}/../../../..
7
8.PATH: ${.CURDIR}/../common
9
10PROG=		${PROGAOUT}.lif
11
12SRCS=		${COMMONSOURCE} ${DRIVERSOURCE} ${PROGSOURCE}
13MKMAN=		no
14STRIPFLAG=
15BINMODE=	444
16
17CLEANFILES+=	${PROGAOUT} vers.c vers.o
18
19CPPFLAGS+=	-I${.CURDIR}/../../.. -I${.CURDIR}/../../../..  -I${.OBJDIR}
20CPPFLAGS+=	-Wno-main
21CFLAGS=		-Os -msoft-float
22
23SRCS+=		vers.c
24CLEANFILES+=	vers.c
25
26.PHONY: vers.c
27vers.c: ${.CURDIR}/version
28	sh ${S}/conf/newvers_stand.sh ${.CURDIR}/version hp300 ${NEWVERSWHAT}
29
30${PROG}: ${PROGAOUT} ${MKBOOT_PROG}
31	${OBJCOPY} --output-target=binary ${PROGAOUT} ${PROGAOUT}.bin
32	${MKBOOT_PROG} -l 0x${RELOC} ${PROGAOUT}.bin ${PROG}
33	rm -f ${PROGAOUT}.bin
34
35CPPFLAGS+=		-DDCACONSOLE -DAPCICONSOLE -DITECONSOLE -DDCMCONSOLE
36CPPFLAGS+=		-DHIL_KEYBOARD -DUK_KEYBOARD
37CPPFLAGS+=		-DDOMAIN_KEYBOARD
38CPPFLAGS+=		-D_STANDALONE -DCOMPAT_NOLABEL -Dhp300
39CPPFLAGS+=		-DCOMPAT_UFS -DNO_LSEEK
40
41# Limit the alloc() heap to below the msgbuf and ROM scratch pages.
42CPPFLAGS+=		-DHEAP_LIMIT="0xffffdfff"
43
44COMMONSOURCE=		srt0.S autoconf.c clock.c conf.c cons.c devopen.c \
45			machdep.c prf.c rawfs.c netio.c
46DRIVERSOURCE=		apci.c ct.c dca.c dcm.c dnkbd.c fhpib.c hil.c \
47			hpib.c if_le.c ite.c ite_dv.c ite_gb.c ite_rb.c \
48			ite_subr.c ite_tc.c ite_hy.c kbd.c kbdconf.c \
49			nhpib.c rd.c scsi.c sd.c
50
51.ifnmake(print-objdir)
52MKBOOTOBJDIR!=		cd ${.CURDIR}/../mkboot ; ${MAKE} print-objdir
53MKBOOT_PROG=		${MKBOOTOBJDIR}/mkboot
54.endif
55
56# Make sure ${MKBOOT_PROG} is always available
57${MKBOOT_PROG}:
58	@cd ${MKBOOTDIR} && ${MAKE} depend && ${MAKE}
59
60.include <bsd.prog.mk>
61
62### find out what to use for libkern
63KERN_AS=	library
64.include "${S}/lib/libkern/Makefile.inc"
65LIBKERN=	${KERNLIB}
66
67### find out what to use for libz
68Z_AS=		library
69.include "${S}/lib/libz/Makefile.inc"
70LIBZ=		${ZLIB}
71
72### find out what to use for libsa
73SA_AS=		library
74SAMISCMAKEFLAGS+="SA_USE_CREAD=yes"
75SAMISCMAKEFLAGS+="SA_USE_LOADFILE=yes"
76.include "${S}/lib/libsa/Makefile.inc"
77LIBSA=		${SALIB}
78
79${PROGAOUT}: ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN}
80	${LD} -N -Ttext ${RELOC} -e begin -o ${PROGAOUT} \
81	    ${OBJS} ${LIBSA} ${LIBZ} ${LIBKERN}
82	@${SIZE} ${PROGAOUT}
83	@echo ${PROGAOUT} total size should not exceed 1044480 bytes
84