From 607c21be93ef467d9f88a831a84b829c99e6ee1a Mon Sep 17 00:00:00 2001 From: Gluzskiy Alexandr Date: Fri, 22 May 2015 13:34:27 +0300 Subject: clang from gentoo repo --- .../clang-3.0-freebsd-runtime-gcc-detection.patch | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 sys-devel/clang/files/clang-3.0-freebsd-runtime-gcc-detection.patch (limited to 'sys-devel/clang/files/clang-3.0-freebsd-runtime-gcc-detection.patch') diff --git a/sys-devel/clang/files/clang-3.0-freebsd-runtime-gcc-detection.patch b/sys-devel/clang/files/clang-3.0-freebsd-runtime-gcc-detection.patch new file mode 100644 index 0000000..5c016f5 --- /dev/null +++ b/sys-devel/clang/files/clang-3.0-freebsd-runtime-gcc-detection.patch @@ -0,0 +1,20 @@ +diff -upNr a/llvm-3.0.src/tools/clang/lib/Driver/ToolChains.cpp b/llvm-3.0.src/tools/clang/lib/Driver/ToolChains.cpp +--- a/llvm-3.0.src/tools/clang/lib/Driver/ToolChains.cpp 2012-05-23 15:45:01.333127000 -0400 ++++ b/llvm-3.0.src/tools/clang/lib/Driver/ToolChains.cpp 2012-05-23 16:16:26.023642076 -0400 +@@ -1215,6 +1215,16 @@ FreeBSD::FreeBSD(const HostInfo &Host, c + } else { + getFilePaths().push_back("/usr/lib"); + } ++ ++ llvm::OwningPtr File; ++ if (!llvm::MemoryBuffer::getFile("/etc/env.d/gcc/config-" + getDriver().DefaultHostTriple, File)) ++ { ++ bool Exists; ++ StringRef Version = File.get()->getBuffer().rsplit('-').second.substr(0,5); ++ const std::string GentooPath = "/usr/lib/gcc/" + getDriver().DefaultHostTriple + "/" + Version.str(); ++ if (!llvm::sys::fs::exists(GentooPath + "/crtbegin.o", Exists) && Exists) ++ getFilePaths().push_back(GentooPath); ++ } + } + + Tool &FreeBSD::SelectTool(const Compilation &C, const JobAction &JA, -- cgit v1.2.3