Makefile revision 1.3
1#	$NetBSD: Makefile,v 1.3 2013/08/20 18:06:03 matt Exp $
2
3WITHOUT_MAN=true  # defined
4
5.include <bsd.obj.mk>		# Pull in OBJDIR name rules.
6.include <bsd.own.mk>
7
8LIB=	kern
9LIBISPRIVATE?=	yes
10DBG=	-Os
11
12MKDEBUGLIB:=    no
13MKLINT:=        no
14MKPICINSTALL:=  no
15MKPIC:=         no
16MKPROFILE:=     no
17
18S= ${NETBSDSRCDIR}/sys
19CPPFLAGS+= -nostdinc -I${.OBJDIR} -I${S} -I${S}/arch
20
21CPPFLAGS+= -D_STANDALONE
22
23COPTS+=	-ffreestanding
24COPTS+=	-fno-stack-protector
25COPTS+=	-fno-unwind-tables
26CWARNFLAGS+= -Werror
27CWARNFLAGS+= -Wall -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith
28
29.if !make(obj) && !make(clean) && !make(cleandir)
30.NOPATH: machine
31.endif
32
33realdepend realall: machine .WAIT
34CLEANFILES+= ${MACHINE_CPU} machine
35
36machine::
37.if ${MACHINE_CPU} == "arm"
38	ln -sf ${S}/arch/${MACHINE_CPU}/include machine
39.else
40	ln -sf ${S}/arch/${MACHINE}/include machine
41.endif
42	ln -sf ${S}/arch/${MACHINE_CPU}/include ${MACHINE_CPU}
43
44${OBJS}: machine
45
46### find out what to use for libkern
47KERN_AS=	library
48KERNDIR=	${S}/lib/libkern
49
50.include "${S}/lib/libkern/Makefile.libkern"
51.ifndef ARCHSUBDIR
52.BEGIN:
53	@echo no ARCHSUBDIR for ${MACHINE_ARCH} nor ${MACHINE_CPU}
54	@false
55.endif
56
57.include <bsd.lib.mk>
58
59lib${LIB}.o:: ${OBJS}
60	@echo building standard ${LIB} library
61	@rm -f lib${LIB}.o
62	@${LD} -r -o lib${LIB}.o `NM=${NM} ${LORDER} ${OBJS} | ${TSORT}`
63
64lib${LIB}.po:: ${POBJS}
65	@echo building profiled ${LIB} library
66	@rm -f lib${LIB}.po
67	@${LD} -r -o lib${LIB}.po `NM=${NM} ${LORDER} ${POBJS} | ${TSORT}`
68
69showsources: ${SRCS}
70	@echo ${.ALLSRC}
71