From: Kamil Rytarowski Date: Tue, 19 Dec 2017 07:10:33 +0000 (+0000) Subject: Teach clang/NetBSD about additional dependencies for sanitizers X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=51bc5395c247b7318278be03615f8e4ef26ea5e0;p=clang Teach clang/NetBSD about additional dependencies for sanitizers Summary: Sanitizers on NetBSD require additional linkage: - libutil for forkpty(3) - libexecinfo for backtrace(3) Sponsored by Reviewers: joerg, eugenis, vitalybuka, kcc Reviewed By: eugenis Subscribers: #sanitizers, cfe-commits Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D41054 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@321060 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Driver/ToolChains/CommonArgs.cpp b/lib/Driver/ToolChains/CommonArgs.cpp index ab51a8c3cc..60f96d03c9 100644 --- a/lib/Driver/ToolChains/CommonArgs.cpp +++ b/lib/Driver/ToolChains/CommonArgs.cpp @@ -549,6 +549,12 @@ void tools::linkSanitizerRuntimeDeps(const ToolChain &TC, TC.getTriple().getOS() != llvm::Triple::NetBSD && TC.getTriple().getOS() != llvm::Triple::RTEMS) CmdArgs.push_back("-ldl"); + // Required for forkpty on some OSes + if (TC.getTriple().getOS() == llvm::Triple::NetBSD) + CmdArgs.push_back("-lutil"); + // Required for backtrace on some OSes + if (TC.getTriple().getOS() == llvm::Triple::NetBSD) + CmdArgs.push_back("-lexecinfo"); } static void