summaryrefslogtreecommitdiffstats
path: root/recipes-devtools/clang/clang/0018-clang-driver-Add-dyld-prefix-when-checking-sysroot-f.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-devtools/clang/clang/0018-clang-driver-Add-dyld-prefix-when-checking-sysroot-f.patch')
-rw-r--r--recipes-devtools/clang/clang/0018-clang-driver-Add-dyld-prefix-when-checking-sysroot-f.patch67
1 files changed, 67 insertions, 0 deletions
diff --git a/recipes-devtools/clang/clang/0018-clang-driver-Add-dyld-prefix-when-checking-sysroot-f.patch b/recipes-devtools/clang/clang/0018-clang-driver-Add-dyld-prefix-when-checking-sysroot-f.patch
new file mode 100644
index 0000000..70de0a3
--- /dev/null
+++ b/recipes-devtools/clang/clang/0018-clang-driver-Add-dyld-prefix-when-checking-sysroot-f.patch
@@ -0,0 +1,67 @@
1From 26c596cf7f4c3fbac5df62a8f19ebca083fd4d2c Mon Sep 17 00:00:00 2001
2From: Oleksandr Ocheretnyi <oocheret@cisco.com>
3Date: Wed, 15 Apr 2020 00:08:39 +0300
4Subject: [PATCH] clang: driver: Add dyld-prefix when checking sysroot for ldso
5 path
6
7 * the dyld-prefix shall be taken into account when the default
8 path for the dynamic linker has to be checked.
9
10 * this patch shall be used as annex to the next patch:
11 'clang: driver: Check sysroot for ldso path' which includes
12 the usrmerge scenario.
13
14Signed-off-by: Oleksandr Ocheretnyi <oocheret@cisco.com>
15Signed-off-by: Khem Raj <raj.khem@gmail.com>
16---
17 clang/lib/Driver/ToolChains/Linux.cpp | 16 ++++++++--------
18 1 file changed, 8 insertions(+), 8 deletions(-)
19
20diff --git a/clang/lib/Driver/ToolChains/Linux.cpp b/clang/lib/Driver/ToolChains/Linux.cpp
21index f9e233f15dfc..bf73b1ef27db 100644
22--- a/clang/lib/Driver/ToolChains/Linux.cpp
23+++ b/clang/lib/Driver/ToolChains/Linux.cpp
24@@ -493,8 +493,8 @@ std::string Linux::getDynamicLinker(const ArgList &Args) const {
25 LibDir = "lib64";
26 Loader =
27 (tools::ppc::hasPPCAbiArg(Args, "elfv2")) ? "ld64.so.2" : "ld64.so.1";
28- if (!getVFS().exists(getDriver().SysRoot + "/" + LibDir + "/" + Loader) &&
29- getVFS().exists(getDriver().SysRoot + "/lib/" + Loader)) {
30+ if (!getVFS().exists(getDriver().SysRoot + getDriver().DyldPrefix + "/" + LibDir + "/" + Loader) &&
31+ getVFS().exists(getDriver().SysRoot + getDriver().DyldPrefix + "/lib/" + Loader)) {
32 LibDir = "lib";
33 }
34 break;
35@@ -502,8 +502,8 @@ std::string Linux::getDynamicLinker(const ArgList &Args) const {
36 LibDir = "lib64";
37 Loader =
38 (tools::ppc::hasPPCAbiArg(Args, "elfv1")) ? "ld64.so.1" : "ld64.so.2";
39- if (!getVFS().exists(getDriver().SysRoot + "/" + LibDir + "/" + Loader) &&
40- getVFS().exists(getDriver().SysRoot + "/lib/" + Loader)) {
41+ if (!getVFS().exists(getDriver().SysRoot + getDriver().DyldPrefix + "/" + LibDir + "/" + Loader) &&
42+ getVFS().exists(getDriver().SysRoot + getDriver().DyldPrefix + "/lib/" + Loader)) {
43 LibDir = "lib";
44 }
45 break;
46@@ -527,8 +527,8 @@ std::string Linux::getDynamicLinker(const ArgList &Args) const {
47 case llvm::Triple::sparcv9:
48 LibDir = "lib64";
49 Loader = "ld-linux.so.2";
50- if (!getVFS().exists(getDriver().SysRoot + "/" + LibDir + "/" + Loader) &&
51- getVFS().exists(getDriver().SysRoot + "/lib/" + Loader)) {
52+ if (!getVFS().exists(getDriver().SysRoot + getDriver().DyldPrefix + "/" + LibDir + "/" + Loader) &&
53+ getVFS().exists(getDriver().SysRoot + getDriver().DyldPrefix + "/lib/" + Loader)) {
54 LibDir = "lib";
55 }
56 break;
57@@ -545,8 +545,8 @@ std::string Linux::getDynamicLinker(const ArgList &Args) const {
58
59 LibDir = X32 ? "libx32" : "lib64";
60 Loader = X32 ? "ld-linux-x32.so.2" : "ld-linux-x86-64.so.2";
61- if (!getVFS().exists(getDriver().SysRoot + "/" + LibDir + "/" + Loader) &&
62- getVFS().exists(getDriver().SysRoot + "/lib/" + Loader)) {
63+ if (!getVFS().exists(getDriver().SysRoot + getDriver().DyldPrefix + "/" + LibDir + "/" + Loader) &&
64+ getVFS().exists(getDriver().SysRoot + getDriver().DyldPrefix + "/lib/" + Loader)) {
65 LibDir = "lib";
66 }
67 break;