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