Makefile revision 1.52
11.52Srillig# $NetBSD: Makefile,v 1.52 2023/04/01 09:08:11 rillig Exp $ 21.5Scgd# from: @(#)Makefile 8.1 (Berkeley) 6/4/93 31.1Scgd 41.49SmattWARNS= 3 51.49Smatt 61.44StlsUSE_FORT?= yes # used primarily by setgid programs 71.44Stls 81.38SlukemUSE_SHLIBDIR= yes 91.38Slukem 101.1ScgdLIB= kvm 111.47SmattCPPFLAGS+=-DLIBC_SCCS -I${NETBSDSRCDIR}/sys -D_KMEMUSER 121.6Schopps 131.12SgwrSRCS= kvm.c kvm_file.c kvm_getloadavg.c kvm_proc.c 141.12Sgwr 151.12Sgwr# This library should compile to the same thing on all variants of 161.12Sgwr# ${MACHINE} with the same ${MACHINE_ARCH} so shared /usr works. 171.13Sgwr# If it is necessary to run different code based on ${MACHINE} then 181.12Sgwr# the dispatch on ${MACHINE} should be done at run time (see m68k). 191.12Sgwr 201.34Sitojun.include <bsd.own.mk> 211.45Smrg.if exists(kvm_${KVM_MACHINE_ARCH}.c) 221.45SmrgSRCS+= kvm_${KVM_MACHINE_ARCH}.c 231.50Smatt.elif exists(kvm_${KVM_MACHINE_CPU}.c) 241.50SmattSRCS+= kvm_${KVM_MACHINE_CPU}.c 251.45Smrg.elif exists(kvm_${MACHINE_ARCH}.c) 261.34SitojunSRCS+= kvm_${MACHINE_ARCH}.c 271.34Sitojun.elif exists(kvm_${MACHINE_CPU}.c) 281.34SitojunSRCS+= kvm_${MACHINE_CPU}.c 291.28Sdrochner.else 301.34Sitojun.BEGIN: 311.34Sitojun @echo no kvm_xx.c for ${MACHINE_ARCH} nor ${MACHINE_CPU} 321.34Sitojun @false 331.28Sdrochner.endif 341.12Sgwr 351.46Sjym.if ${MACHINE_ARCH} == "i386" 361.46SjymLINTFLAGS+=-w 371.52SrilligLINTFLAGS+= -X 351 # 'extern' declaration outside header 381.52SrilligLINTFLAGS+= -X 352 # 'extern' declaration in function body 391.46SjymSRCS+= kvm_i386pae.c # Hook PAE support in the i386 build 401.46Sjym.endif 411.46Sjym 421.12Sgwr# Additional modules needed for m68k 431.36Sfredette.if (${MACHINE_ARCH} == "m68k" || ${MACHINE_CPU} == "m68k") 441.36SfredetteSRCS+= kvm_m68k_cmn.c kvm_sun2.c kvm_sun3.c kvm_sun3x.c 451.14Smrg.endif 461.4Scgd 471.10SleoMAN= kvm.3 kvm_dump.3 kvm_geterr.3 kvm_getfiles.3 kvm_getloadavg.3 \ 481.48Schristos kvm_getkernelname.3 \ 491.39Sthorpej kvm_getprocs.3 kvm_nlist.3 kvm_open.3 kvm_read.3 kvm_getlwps.3 501.4Scgd 511.4ScgdMLINKS+=kvm_getprocs.3 kvm_getargv.3 kvm_getprocs.3 kvm_getenvv.3 521.32SsimonbMLINKS+=kvm_getprocs.3 kvm_getproc2.3 531.32SsimonbMLINKS+=kvm_getprocs.3 kvm_getargv2.3 kvm_getprocs.3 kvm_getenvv2.3 541.4ScgdMLINKS+=kvm_open.3 kvm_openfiles.3 kvm_open.3 kvm_close.3 551.4ScgdMLINKS+=kvm_read.3 kvm_write.3 561.10SleoMLINKS+=kvm_dump.3 kvm_dump_mkheader.3 kvm_dump.3 kvm_dump_wrtheader.3 571.10SleoMLINKS+=kvm_dump.3 kvm_dump_inval.3 581.40Slukem 591.40Slukem# This fixes building with MACHINE==sparc64, MACHINE_ARCH==sparc 601.40Slukem# XXX: this is a hack, but until the sparc MD headers are separated 611.40Slukem# out from the sparc AD headers, it's the easiest solution. 621.40Slukem# 631.40Slukem.if (${MACHINE_ARCH} == "sparc") # { 641.40Slukem.if !make(obj) && !make(clean) && !make(cleandir) 651.40Slukem.BEGIN: 661.40Slukem @([ -h machine ] || \ 671.40Slukem ln -fs ${NETBSDSRCDIR}/sys/arch/sparc/include machine) 681.40Slukem @([ -h sparc ] || ln -fs ${NETBSDSRCDIR}/sys/arch/sparc/include sparc) 691.40Slukem.NOPATH: machine sparc 701.40Slukem.endif 711.40SlukemCLEANFILES+= machine sparc 721.40SlukemCPPFLAGS+= -I. 731.40Slukem.endif # } 741.40Slukem 751.51Schristos.if (${MACHINE_ARCH} == "mips") 761.51SchristosCPPFLAGS+= -D_KMEMUSER 771.51Schristos.endif 781.51Schristos 791.1Scgd 801.1Scgd.include <bsd.lib.mk> 81