From 8d40ce03b1dcbef9de94892a51cbe881f26a85f1 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Mon, 2 Sep 2019 12:07:58 +0200 Subject: [PATCH] rebase of the patch --- debian/changelog | 6 +++ debian/patches/fix-clang-path-and-build.diff | 41 +++++++++++--------- 2 files changed, 28 insertions(+), 19 deletions(-) diff --git a/debian/changelog b/debian/changelog index 0aeeded2..5fb4cee3 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +llvm-toolchain-snapshot (1:10~svn370632-1~exp1) experimental; urgency=medium + + * New snapshot release + + -- Sylvestre Ledru Mon, 02 Sep 2019 11:30:08 +0200 + llvm-toolchain-snapshot (1:10~svn370407-1~exp1) experimental; urgency=medium * New snapshot release diff --git a/debian/patches/fix-clang-path-and-build.diff b/debian/patches/fix-clang-path-and-build.diff index c2793e95..3b399fcb 100644 --- a/debian/patches/fix-clang-path-and-build.diff +++ b/debian/patches/fix-clang-path-and-build.diff @@ -1,7 +1,7 @@ -Index: llvm-toolchain-9-9~+rc3/clang/lib/Driver/ToolChains/Linux.cpp +Index: llvm-toolchain-snapshot_10~svn370632/clang/lib/Driver/ToolChains/Linux.cpp =================================================================== ---- llvm-toolchain-9-9~+rc3.orig/clang/lib/Driver/ToolChains/Linux.cpp -+++ llvm-toolchain-9-9~+rc3/clang/lib/Driver/ToolChains/Linux.cpp +--- llvm-toolchain-snapshot_10~svn370632.orig/clang/lib/Driver/ToolChains/Linux.cpp ++++ llvm-toolchain-snapshot_10~svn370632/clang/lib/Driver/ToolChains/Linux.cpp @@ -12,6 +12,7 @@ #include "Arch/PPC.h" #include "Arch/RISCV.h" @@ -10,21 +10,24 @@ Index: llvm-toolchain-9-9~+rc3/clang/lib/Driver/ToolChains/Linux.cpp #include "clang/Config/config.h" #include "clang/Driver/Distro.h" #include "clang/Driver/Driver.h" -@@ -665,7 +666,16 @@ void Linux::AddClangSystemIncludeArgs(co - if (!DriverArgs.hasArg(options::OPT_nobuiltininc)) { - SmallString<128> P(D.ResourceDir); - llvm::sys::path::append(P, "include"); -- addSystemInclude(DriverArgs, CC1Args, P); -+ if (llvm::sys::fs::exists(P)) { -+ /* Include the build include directory only -+ * Otherwise, it fails with stage2 when clang headers are available on the system -+ * they usually fail because of the include_next. Two llvm/clang headers are found -+ * while we are waiting for the lib C++ (std or not) -+ */ -+ addSystemInclude(DriverArgs, CC1Args, P); -+ } else { -+ addSystemInclude(DriverArgs, CC1Args, "/usr/include/clang/" + std::string(CLANG_VERSION_STRING) + "/include/"); -+ } - } +@@ -661,8 +662,18 @@ void Linux::AddClangSystemIncludeArgs(co + SmallString<128> ResourceDirInclude(D.ResourceDir); + llvm::sys::path::append(ResourceDirInclude, "include"); + if (!DriverArgs.hasArg(options::OPT_nobuiltininc) && +- (!getTriple().isMusl() || DriverArgs.hasArg(options::OPT_nostdlibinc))) +- addSystemInclude(DriverArgs, CC1Args, ResourceDirInclude); ++ (!getTriple().isMusl() || DriverArgs.hasArg(options::OPT_nostdlibinc))) { ++ if (llvm::sys::fs::exists(P)) { ++ /* Include the build include directory only ++ * Otherwise, it fails with stage2 when clang headers are available on the system ++ * they usually fail because of the include_next. Two llvm/clang headers are found ++ * while we are waiting for the lib C++ (std or not) ++ */ ++ addSystemInclude(DriverArgs, CC1Args, P); ++ } else { ++ addSystemInclude(DriverArgs, CC1Args, "/usr/include/clang/" + std::string(CLANG_VERSION_STRING) + "/include/"); ++ } ++ } if (DriverArgs.hasArg(options::OPT_nostdlibinc)) + return;