Makefile.booters revision 1.1
1# $NetBSD: Makefile.booters,v 1.1 2001/11/21 19:09:06 thorpej Exp $
2
3# $S must correspond to the top of the 'sys' tree
4S=	${.CURDIR}/../../../..
5
6.BEGIN: machine sgimips mips
7${PROG} realdepend realall: machine sgimips mips
8CLEANFILES+= machine sgimips mips
9machine:
10	-rm -f ${.TARGET}
11	ln -s $S/arch/${MACHINE}/include ${.TARGET}
12sgimips:
13	-rm -f ${.TARGET}
14	ln -s $S/arch/${MACHINE}/include ${.TARGET}
15mips:
16	-rm -f ${.TARGET}
17	ln -s $S/arch/mips/include mips
18
19BINMODE?=	444
20
21.PATH:		${.CURDIR}/../common
22AFLAGS+=	-D_LOCORE -D_KERNEL
23# -I${.CURDIR}/../.. done by Makefile.inc
24#CPPFLAGS+=	-nostdinc -D_STANDALONE -DNO_ABICALLS -DHEAP_VARIABLE -I${.OBJDIR} -I${S}
25CPPFLAGS+=	-nostdinc -D_STANDALONE -DNO_ABICALLS -I${.OBJDIR} -I${S}
26# compiler flags for smallest code size
27CFLAGS=		-Os -g -mmemcpy -mno-abicalls -G 128
28LDBUG=		-T $S/arch/mips/conf/stand.ldscript
29
30NETBSD_VERS!=	sh ${.CURDIR}/../../../../conf/osrelease.sh
31CPPFLAGS+=	-DNETBSD_VERS='"${NETBSD_VERS}"'
32
33# PROG set by parent.
34MKMAN=		no
35LOAD_ADDRESS?=	0x89000000
36SRCS+=	vers.c
37CLEANFILES+= vers.c
38
39### find out what to use for libkern
40KERN_AS=	library
41.include "${S}/lib/libkern/Makefile.inc"
42LIBKERN=	${KERNLIB}
43
44### find out what to use for libz
45Z_AS=		library
46.include "${S}/lib/libz/Makefile.inc"
47LIBZ=		${ZLIB}
48
49### find out what to use for libsa
50SA_AS=		library
51SAMISCMAKEFLAGS+=SA_USE_LOADFILE=yes SA_USE_CREAD=yes
52# for now:
53SAMISCMAKEFLAGS+=SA_INCLUDE_NET=no
54.include "${S}/lib/libsa/Makefile.inc"
55LIBSA=		${SALIB}
56
57LIBS=		${LIBSA} ${LIBZ} ${LIBSA} ${LIBKERN}
58
59.PHONY: vers.c
60vers.c: ${.CURDIR}/version
61	sh ${S}/conf/newvers_stand.sh -N ${.CURDIR}/version "sgimips"
62
63${PROG}: machine mips sgimips ${OBJS} ${LIBS}
64	${LD} -Map ${PROG}.map -x -Ttext ${LOAD_ADDRESS} ${LDBUG} \
65	    -e start -o ${PROG} ${OBJS} ${LIBS}
66	@${SIZE} ${PROG}
67.if defined(CHECKSIZE_CMD)
68	@${CHECKSIZE_CMD} ${PROG} ${PRIMARY_MAX_LOAD} ${PRIMARY_MAX_TOTAL} || \
69	    (rm -f ${PROG} ; false)
70.endif
71
72CLEANFILES+=	${PROG}.map
73
74cleandir distclean: cleanlibdir
75
76cleanlibdir:
77	rm -rf lib
78
79.include <bsd.prog.mk>
80