From: Kamil Rytarowski Date: Sat, 20 Jan 2018 01:03:45 +0000 (+0000) Subject: Link sanitized programs on NetBSD with -lkvm X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d708604f14579e08854da5978099926d3f7403da;p=clang Link sanitized programs on NetBSD with -lkvm Summary: kvm - kernel memory interface The kvm(3) functions like kvm_open(), kvm_getargv() or kvm_getenvv() are used in programs that can request information about a kernel and its processes. The LLVM sanitizers will make use of them on NetBSD. Sponsored by Reviewers: joerg, vitalybuka, dvyukov Reviewed By: vitalybuka Subscribers: llvm-commits, cfe-commits, #sanitizers Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D42017 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@323022 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Driver/ToolChains/CommonArgs.cpp b/lib/Driver/ToolChains/CommonArgs.cpp index f26880123d..1ba17ab857 100644 --- a/lib/Driver/ToolChains/CommonArgs.cpp +++ b/lib/Driver/ToolChains/CommonArgs.cpp @@ -555,6 +555,9 @@ void tools::linkSanitizerRuntimeDeps(const ToolChain &TC, // Required for backtrace on some OSes if (TC.getTriple().getOS() == llvm::Triple::NetBSD) CmdArgs.push_back("-lexecinfo"); + // Required for kvm (kernel memory interface) on some OSes + if (TC.getTriple().getOS() == llvm::Triple::NetBSD) + CmdArgs.push_back("-lkvm"); } static void