From e6966fe563654422468e12db1abc3aad69fd78fd Mon Sep 17 00:00:00 2001 From: Jonas Devlieghere Date: Mon, 12 Nov 2018 16:59:50 +0000 Subject: Revert "Make clang-based tools find libc++ on MacOS" This breaks the LLDB bots. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@346675 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Frontend/CreateInvocationFromCommandLine.cpp | 8 ++------ lib/Frontend/InitHeaderSearch.cpp | 11 ++++++++--- 2 files changed, 10 insertions(+), 9 deletions(-) (limited to 'lib/Frontend') diff --git a/lib/Frontend/CreateInvocationFromCommandLine.cpp b/lib/Frontend/CreateInvocationFromCommandLine.cpp index 3a5e1e8b15..2d4c40f8b9 100644 --- a/lib/Frontend/CreateInvocationFromCommandLine.cpp +++ b/lib/Frontend/CreateInvocationFromCommandLine.cpp @@ -11,18 +11,17 @@ // //===----------------------------------------------------------------------===// +#include "clang/Frontend/Utils.h" #include "clang/Basic/DiagnosticOptions.h" -#include "clang/Driver/Action.h" #include "clang/Driver/Compilation.h" #include "clang/Driver/Driver.h" +#include "clang/Driver/Action.h" #include "clang/Driver/Options.h" #include "clang/Driver/Tool.h" #include "clang/Frontend/CompilerInstance.h" #include "clang/Frontend/FrontendDiagnostic.h" -#include "clang/Frontend/Utils.h" #include "llvm/Option/ArgList.h" #include "llvm/Support/Host.h" -#include "llvm/Support/Path.h" using namespace clang; using namespace llvm::opt; @@ -103,8 +102,5 @@ std::unique_ptr clang::createInvocationFromCommandLine( CCArgs.size(), *Diags)) return nullptr; - // Patch up the install dir, so we find the same standard library as the - // original compiler on MacOS. - CI->getHeaderSearchOpts().InstallDir = TheDriver.getInstalledDir(); return CI; } diff --git a/lib/Frontend/InitHeaderSearch.cpp b/lib/Frontend/InitHeaderSearch.cpp index 2f62ad3faf..deedb22f3e 100644 --- a/lib/Frontend/InitHeaderSearch.cpp +++ b/lib/Frontend/InitHeaderSearch.cpp @@ -476,9 +476,14 @@ void InitHeaderSearch::AddDefaultIncludePaths(const LangOptions &Lang, if (triple.isOSDarwin()) { // On Darwin, libc++ may be installed alongside the compiler in // include/c++/v1. - if (!HSOpts.InstallDir.empty()) { - // Get from foo/bin to foo. - SmallString<128> P(llvm::sys::path::parent_path(HSOpts.InstallDir)); + if (!HSOpts.ResourceDir.empty()) { + // Remove version from foo/lib/clang/version + StringRef NoVer = llvm::sys::path::parent_path(HSOpts.ResourceDir); + // Remove clang from foo/lib/clang + StringRef Lib = llvm::sys::path::parent_path(NoVer); + // Remove lib from foo/lib + SmallString<128> P = llvm::sys::path::parent_path(Lib); + // Get foo/include/c++/v1 llvm::sys::path::append(P, "include", "c++", "v1"); AddUnmappedPath(P, CXXSystem, false); -- cgit v1.2.3