Makefile.booters revision 1.19
1#	$NetBSD: Makefile.booters,v 1.19 2009/12/06 13:28:04 tsutsui Exp $
2
3S?=		${.CURDIR}/../../../..
4MDEC_DIR?=	/usr/mdec
5RELOC?=		0x3F0000
6COPTS?=		-Os -Wall -Wno-main -Wmissing-prototypes -Wstrict-prototypes \
7		-ffreestanding -fomit-frame-pointer
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.BEGIN:
45	@rm -f machine && \
46	    ln -s $S/arch/${MACHINE}/include machine
47	@rm -f ${MACHINE_CPU} && \
48	    ln -s $S/arch/${MACHINE_CPU}/include ${MACHINE_CPU}
49.endif
50
51.if defined(LIB)
52
53lib${LIB}.a:: ${OBJS}
54
55.else
56
57PROGDEPENDS?=	${SRTOBJ} ${BUGCRT} ${OBJS} ${LIBS}
58PROGLINKOBJS?=	${PROGDEPENDS}
59
60${PROG}: machine m68k ${PROGDEPENDS}
61	${LD} -N -Ttext ${RELOC} -o $@ ${PROGLINKOBJS}
62
63.include <bsd.own.mk>
64
65LIB_SA_DIR=	${.CURDIR}/../libsa
66LIBSA_DIR!=	cd ${LIB_SA_DIR} && ${PRINTOBJDIR}
67LIBSA=${LIBSA_DIR}/libsa.a
68
69.PHONY: ${LIBSA}
70${LIBSA}:
71	@echo making sure the libsa is up to date...
72	@cd ${LIB_SA_DIR} && ${MAKE}
73
74SRTOBJ?= ${LIBSA_DIR}/SRT0.o
75.PHONY: ${SRTOBJ}
76${SRTOBJ}:
77	@echo making sure the libsa is up to date...
78	@cd ${LIB_SA_DIR} && ${MAKE} SRT0.o
79
80LIB_BUG_DIR=	${.CURDIR}/../libbug
81LIBBUG_DIR!=	cd ${LIB_BUG_DIR} && ${PRINTOBJDIR}
82LIBBUG=${LIBBUG_DIR}/libbug.a
83
84.PHONY: ${LIBBUG}
85${LIBBUG}:
86	@echo making sure the libbug is up to date...
87	@(cd ${LIB_BUG_DIR}; ${MAKE})
88
89BUGCRT=${LIBBUG_DIR}/bugstart.o
90
91.PHONY: ${BUGCRT}
92$(BUGCRT):
93	@echo making sure the bugcrt is up to date...
94	@(cd ${LIB_BUG_DIR}; ${MAKE} bugstart.o)
95
96WRTVID_BOOT_DIR=  ${.CURDIR}/../wrtvid
97WRTVID_DIR!=	cd ${WRTVID_BOOT_DIR} && ${PRINTOBJDIR}
98WRTVID=${WRTVID_DIR}/wrtvid
99
100.PHONY: ${WRTVID}
101${WRTVID}:
102	@echo making sure the wrtvid is up to date...
103	@(cd ${WRTVID_BOOT_DIR}; ${MAKE} dependall)
104
105.endif
106