summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTristan Van Berkom <tristan.vanberkom@codethink.co.uk>2016-05-01 19:51:39 -0400
committerAlexander Larsson <alexl@redhat.com>2016-05-17 09:52:16 +0200
commit9927fb93c89505a967283bed3bc1fcd2fa768ad6 (patch)
tree5cb106f929ece33211ae8b0757ac77de846a6103
parent9c4064223be75ee9d8cf318110e15ce290ccae1b (diff)
clang: Detect gcc linkers on some different platforms
clang has this hard coded table of host triples it uses to detect which gcc tooling to use for the linker; this table needs to be updated for the type of host triples used by the yocto compilers. This replaces the previous aarch64 specific patch. https://bugs.freedesktop.org/show_bug.cgi?id=95443
-rw-r--r--clang-detect-aarch64-gcc.patch11
-rw-r--r--clang-detect-arches.patch33
-rw-r--r--org.freedesktop.Sdk.json.in8
3 files changed, 37 insertions, 15 deletions
diff --git a/clang-detect-aarch64-gcc.patch b/clang-detect-aarch64-gcc.patch
deleted file mode 100644
index 18e7247..0000000
--- a/clang-detect-aarch64-gcc.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- clang-1/lib/Driver/ToolChains.cpp 2016-04-15 20:36:37.825903494 +0100
-+++ /home/tristan/clang-copy/lib/Driver/ToolChains.cpp 2016-04-15 20:34:02.980104915 +0100
-@@ -1418,7 +1418,7 @@ bool Generic_GCC::GCCInstallationDetecto
- static const char *const AArch64LibDirs[] = {"/lib64", "/lib"};
- static const char *const AArch64Triples[] = {
- "aarch64-none-linux-gnu", "aarch64-linux-gnu", "aarch64-linux-android",
-- "aarch64-redhat-linux"};
-+ "aarch64-redhat-linux", "aarch64-unknown-linux"};
- static const char *const AArch64beLibDirs[] = {"/lib"};
- static const char *const AArch64beTriples[] = {"aarch64_be-none-linux-gnu",
- "aarch64_be-linux-gnu"};
diff --git a/clang-detect-arches.patch b/clang-detect-arches.patch
new file mode 100644
index 0000000..4a29b03
--- /dev/null
+++ b/clang-detect-arches.patch
@@ -0,0 +1,33 @@
+diff -rup cfe-3.8.0.src/lib/Driver/ToolChains.cpp cfe-3.8.0.src-modified/lib/Driver/ToolChains.cpp
+--- cfe-3.8.0.src/lib/Driver/ToolChains.cpp 2016-02-16 14:56:48.000000000 -0500
++++ cfe-3.8.0.src-modified/lib/Driver/ToolChains.cpp 2016-05-09 11:43:42.981145217 -0400
+@@ -1418,16 +1418,17 @@ bool Generic_GCC::GCCInstallationDetecto
+ static const char *const AArch64LibDirs[] = {"/lib64", "/lib"};
+ static const char *const AArch64Triples[] = {
+ "aarch64-none-linux-gnu", "aarch64-linux-gnu", "aarch64-linux-android",
+- "aarch64-redhat-linux"};
++ "aarch64-redhat-linux", "aarch64-unknown-linux"};
+ static const char *const AArch64beLibDirs[] = {"/lib"};
+ static const char *const AArch64beTriples[] = {"aarch64_be-none-linux-gnu",
+ "aarch64_be-linux-gnu"};
+
+ static const char *const ARMLibDirs[] = {"/lib"};
+- static const char *const ARMTriples[] = {"arm-linux-gnueabi",
++ static const char *const ARMTriples[] = {"arm-linux-gnueabi", "arm-unknown-linux-gnueabi",
+ "arm-linux-androideabi"};
+ static const char *const ARMHFTriples[] = {"arm-linux-gnueabihf",
+- "armv7hl-redhat-linux-gnueabi"};
++ "armv7hl-redhat-linux-gnueabi",
++ "arm-unknown-linux-gnueabi" };
+ static const char *const ARMebLibDirs[] = {"/lib"};
+ static const char *const ARMebTriples[] = {"armeb-linux-gnueabi",
+ "armeb-linux-androideabi"};
+@@ -1449,7 +1450,7 @@ bool Generic_GCC::GCCInstallationDetecto
+ "i386-linux-gnu", "i386-redhat-linux6E", "i686-redhat-linux",
+ "i586-redhat-linux", "i386-redhat-linux", "i586-suse-linux",
+ "i486-slackware-linux", "i686-montavista-linux", "i686-linux-android",
+- "i586-linux-gnu"};
++ "i586-linux-gnu", "i586-unknown-linux"};
+
+ static const char *const MIPSLibDirs[] = {"/lib"};
+ static const char *const MIPSTriples[] = {"mips-linux-gnu", "mips-mti-linux",
diff --git a/org.freedesktop.Sdk.json.in b/org.freedesktop.Sdk.json.in
index 197dd91..7495c9f 100644
--- a/org.freedesktop.Sdk.json.in
+++ b/org.freedesktop.Sdk.json.in
@@ -1082,10 +1082,10 @@
"type": "archive",
"url": "http://llvm.org/releases/3.8.0/cfe-3.8.0.src.tar.xz",
"sha256": "04149236de03cf05232d68eb7cb9c50f03062e339b68f4f8a03b650a11536cf9"
- },
- {
- "type": "patch",
- "path": "clang-detect-aarch64-gcc.patch"
+ },
+ {
+ "type": "patch",
+ "path": "clang-detect-arches.patch"
}
]
},