Makefile.booters revision 1.17
1#	$NetBSD: Makefile.booters,v 1.17 2009/04/03 10:38:13 tsutsui Exp $
2
3S?=		${.CURDIR}/../../../..
4MDEC_DIR?=	/usr/mdec
5RELOC?=		0x3F0000
6COPTS?=		-O2 -Wall -Wno-main -Wmissing-prototypes -Wstrict-prototypes \
7		-ffreestanding
8DEFS?= 
9STRIPFLAG?=
10
11NOMAN=  # defined
12NOMAN=	# defined
13NOLINT= # defined
14NOLINT=	# defined
15NOPIC=	# defined
16NOPROFILE=# defined
17NOLINT=# defined
18
19INCPATH=-I${.OBJDIR} -I${.CURDIR} -I${.CURDIR}/../libsa -I${.CURDIR}/../libbug \
20        -I${.CURDIR}/../../include -I${S} -I${S}/lib/libsa
21CFLAGS= -nostdinc -m68020-60 -Wa,-m68030
22CPPFLAGS+= -D__daddr_t=int32_t
23CPPFLAGS+= -D_STANDALONE
24CPPFLAGS+= ${INCPATH} ${DEFS}
25BINDIR= ${MDEC_DIR}
26
27# XXX SHOULD NOT NEED TO DEFINE THESE!
28LIBCRT0=
29LIBC=
30LIBCRTBEGIN=
31LIBCRTEND=
32
33.if exists(${.CURDIR}/version)
34SRCS+= vers.c
35CLEANFILES+= vers.c
36
37vers.c: version
38	${HOST_SH} ${S}/conf/newvers_stand.sh -DM ${.CURDIR}/version "mvme68k"
39.endif
40
41CLEANFILES+= machine m68k
42
43.if !make(obj) && !make(clean) && !make(cleandir)
44.NOPATH: machine m68k
45.BEGIN: machine m68k
46
47machine :
48	-rm -f ${.TARGET}
49	ln -s $S/arch/mvme68k/include machine
50
51m68k :
52	-rm -f ${.TARGET}
53	ln -s $S/arch/m68k/include m68k
54.endif
55
56.if defined(LIB)
57
58lib${LIB}.a:: machine m68k ${OBJS}
59beforedepend:	machine m68k
60
61.else
62
63PROGDEPENDS?=	${SRTOBJ} ${BUGCRT} ${OBJS} ${LIBS}
64PROGLINKOBJS?=	${PROGDEPENDS}
65
66${PROG}: machine m68k ${PROGDEPENDS}
67	${LD} -N -Ttext ${RELOC} -o $@ ${PROGLINKOBJS}
68
69.include <bsd.own.mk>
70
71LIB_SA_DIR=	${.CURDIR}/../libsa
72LIBSA_DIR!=	cd ${LIB_SA_DIR} && ${PRINTOBJDIR}
73LIBSA=${LIBSA_DIR}/libsa.a
74
75.PHONY: ${LIBSA}
76${LIBSA}:
77	@echo making sure the libsa is up to date...
78	@cd ${LIB_SA_DIR} && ${MAKE}
79
80SRTOBJ?= ${LIBSA_DIR}/SRT0.o
81.PHONY: ${SRTOBJ}
82${SRTOBJ}:
83	@echo making sure the libsa is up to date...
84	@cd ${LIB_SA_DIR} && ${MAKE} SRT0.o
85
86LIB_BUG_DIR=	${.CURDIR}/../libbug
87LIBBUG_DIR!=	cd ${LIB_BUG_DIR} && ${PRINTOBJDIR}
88LIBBUG=${LIBBUG_DIR}/libbug.a
89
90.PHONY: ${LIBBUG}
91${LIBBUG}:
92	@echo making sure the libbug is up to date...
93	@(cd ${LIB_BUG_DIR}; ${MAKE})
94
95BUGCRT=${LIBBUG_DIR}/bugstart.o
96
97.PHONY: ${BUGCRT}
98$(BUGCRT):
99	@echo making sure the bugcrt is up to date...
100	@(cd ${LIB_BUG_DIR}; ${MAKE} bugstart.o)
101
102WRTVID_BOOT_DIR=  ${.CURDIR}/../wrtvid
103WRTVID_DIR!=	cd ${WRTVID_BOOT_DIR} && ${PRINTOBJDIR}
104WRTVID=${WRTVID_DIR}/wrtvid
105
106.PHONY: ${WRTVID}
107${WRTVID}:
108	@echo making sure the wrtvid is up to date...
109	@(cd ${WRTVID_BOOT_DIR}; ${MAKE} dependall)
110
111.endif
112