1# $NetBSD: Makefile,v 1.49 2012/03/21 10:08:30 matt Exp $ 2# from: @(#)Makefile 8.1 (Berkeley) 6/4/93 3 4WARNS= 3 5 6USE_FORT?= yes # used primarily by setgid programs 7 8USE_SHLIBDIR= yes 9 10LIB= kvm 11CPPFLAGS+=-DLIBC_SCCS -I${NETBSDSRCDIR}/sys -D_KMEMUSER 12 13SRCS= kvm.c kvm_file.c kvm_getloadavg.c kvm_proc.c 14 15# This library should compile to the same thing on all variants of 16# ${MACHINE} with the same ${MACHINE_ARCH} so shared /usr works. 17# If it is necessary to run different code based on ${MACHINE} then 18# the dispatch on ${MACHINE} should be done at run time (see m68k). 19 20.include <bsd.own.mk> 21.if exists(kvm_${KVM_MACHINE_ARCH}.c) 22SRCS+= kvm_${KVM_MACHINE_ARCH}.c 23.elif exists(kvm_${MACHINE_ARCH}.c) 24SRCS+= kvm_${MACHINE_ARCH}.c 25.elif exists(kvm_${MACHINE_CPU}.c) 26SRCS+= kvm_${MACHINE_CPU}.c 27.else 28.BEGIN: 29 @echo no kvm_xx.c for ${MACHINE_ARCH} nor ${MACHINE_CPU} 30 @false 31.endif 32 33.if ${MACHINE_ARCH} == "i386" 34LINTFLAGS+=-w 35SRCS+= kvm_i386pae.c # Hook PAE support in the i386 build 36.endif 37 38# Additional modules needed for m68k 39.if (${MACHINE_ARCH} == "m68k" || ${MACHINE_CPU} == "m68k") 40SRCS+= kvm_m68k_cmn.c kvm_sun2.c kvm_sun3.c kvm_sun3x.c 41.endif 42 43MAN= kvm.3 kvm_dump.3 kvm_geterr.3 kvm_getfiles.3 kvm_getloadavg.3 \ 44 kvm_getkernelname.3 \ 45 kvm_getprocs.3 kvm_nlist.3 kvm_open.3 kvm_read.3 kvm_getlwps.3 46 47MLINKS+=kvm_getprocs.3 kvm_getargv.3 kvm_getprocs.3 kvm_getenvv.3 48MLINKS+=kvm_getprocs.3 kvm_getproc2.3 49MLINKS+=kvm_getprocs.3 kvm_getargv2.3 kvm_getprocs.3 kvm_getenvv2.3 50MLINKS+=kvm_open.3 kvm_openfiles.3 kvm_open.3 kvm_close.3 51MLINKS+=kvm_read.3 kvm_write.3 52MLINKS+=kvm_dump.3 kvm_dump_mkheader.3 kvm_dump.3 kvm_dump_wrtheader.3 53MLINKS+=kvm_dump.3 kvm_dump_inval.3 54 55# This fixes building with MACHINE==sparc64, MACHINE_ARCH==sparc 56# XXX: this is a hack, but until the sparc MD headers are separated 57# out from the sparc AD headers, it's the easiest solution. 58# 59.if (${MACHINE_ARCH} == "sparc") # { 60.if !make(obj) && !make(clean) && !make(cleandir) 61.BEGIN: 62 @([ -h machine ] || \ 63 ln -fs ${NETBSDSRCDIR}/sys/arch/sparc/include machine) 64 @([ -h sparc ] || ln -fs ${NETBSDSRCDIR}/sys/arch/sparc/include sparc) 65.NOPATH: machine sparc 66.endif 67CLEANFILES+= machine sparc 68CPPFLAGS+= -I. 69.endif # } 70 71 72.include <bsd.lib.mk> 73