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