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