-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathllvm-pld.patch
More file actions
115 lines (103 loc) · 5.96 KB
/
llvm-pld.patch
File metadata and controls
115 lines (103 loc) · 5.96 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
diff -urNp -x '*.orig' llvm-project.src.orig/clang/include/clang/Driver/Distro.h llvm-project.src/clang/include/clang/Driver/Distro.h
--- llvm-project.src.orig/clang/include/clang/Driver/Distro.h 2020-12-18 20:57:38.000000000 +0100
+++ llvm-project.src/clang/include/clang/Driver/Distro.h 2021-03-25 22:27:39.173689051 +0100
@@ -30,5 +30,6 @@
AlpineLinux,
ArchLinux,
+ PLDLinux,
DebianJessie,
DebianStretch,
DebianBuster,
@@ -132,6 +133,10 @@
bool IsGentoo() const { return DistroVal == Gentoo; }
+ bool IsPLD() {
+ return DistroVal == PLDLinux;
+ }
+
/// @}
};
diff -urNp -x '*.orig' llvm-project.src.orig/clang/lib/Driver/Distro.cpp llvm-project.src/clang/lib/Driver/Distro.cpp
--- llvm-project.src.orig/clang/lib/Driver/Distro.cpp 2020-12-18 20:57:38.000000000 +0100
+++ llvm-project.src/clang/lib/Driver/Distro.cpp 2021-03-25 22:27:39.173689051 +0100
@@ -165,6 +165,9 @@ static Distro::DistroType DetectDistro(l
if (VFS.exists("/etc/gentoo-release"))
return Distro::Gentoo;
+ if (VFS.exists("/etc/pld-release"))
+ return Distro::PLDLinux;
+
return Distro::UnknownDistro;
}
diff -urNp -x '*.orig' llvm-project.src.orig/clang/lib/Driver/ToolChains/Gnu.cpp llvm-project.src/clang/lib/Driver/ToolChains/Gnu.cpp
--- llvm-project.src.orig/clang/lib/Driver/ToolChains/Gnu.cpp 2020-12-18 20:57:38.000000000 +0100
+++ llvm-project.src/clang/lib/Driver/ToolChains/Gnu.cpp 2021-03-25 22:27:39.173689051 +0100
@@ -2048,6 +2048,7 @@ void Generic_GCC::GCCInstallationDetecto
// lists should shrink over time. Please don't add more elements to *Triples.
static const char *const AArch64LibDirs[] = {"/lib64", "/lib"};
static const char *const AArch64Triples[] = {
+ "aarch64-pld-linux",
"aarch64-none-linux-gnu", "aarch64-redhat-linux", "aarch64-suse-linux"};
static const char *const AArch64beLibDirs[] = {"/lib"};
static const char *const AArch64beTriples[] = {"aarch64_be-none-linux-gnu"};
@@ -2055,8 +2056,13 @@ void Generic_GCC::GCCInstallationDetecto
static const char *const AArch64beTriples[] = {"aarch64_be-none-linux-gnu"};
static const char *const ARMLibDirs[] = {"/lib"};
- static const char *const ARMTriples[] = {"arm-linux-gnueabi"};
- static const char *const ARMHFTriples[] = {"arm-linux-gnueabihf",
+ static const char *const ARMTriples[] = {"arm-pld-linux-gnueabi",
+ "arm-linux-gnueabi"};
+ static const char *const ARMHFTriples[] = {"arm-pld-linux-gnueabihf",
+ "armv6hl-pld-linux-gnueabi",
+ "armv7hl-pld-linux-gnueabi",
+ "armv7hnl-pld-linux-gnueabi",
+ "arm-linux-gnueabihf",
"armv7hl-redhat-linux-gnueabi",
"armv6hl-suse-linux-gnueabi",
"armv7hl-suse-linux-gnueabi"};
@@ -2072,6 +2077,7 @@ void Generic_GCC::GCCInstallationDetecto
static const char *const X86_64LibDirs[] = {"/lib64", "/lib"};
static const char *const X86_64Triples[] = {
+ "x86_64-pld-linux", "amd64-pld-linux",
"x86_64-linux-gnu", "x86_64-unknown-linux-gnu",
"x86_64-pc-linux-gnu", "x86_64-redhat-linux6E",
"x86_64-redhat-linux", "x86_64-suse-linux",
@@ -2081,6 +2087,7 @@ void Generic_GCC::GCCInstallationDetecto
static const char *const X32LibDirs[] = {"/libx32", "/lib"};
static const char *const X86LibDirs[] = {"/lib32", "/lib"};
static const char *const X86Triples[] = {
+ "i686-pld-linux", "i586-pld-linux", "i486-pld-linux", "i386-pld-linux", "athlon-pld-linux",
"i586-linux-gnu", "i686-linux-gnu", "i686-pc-linux-gnu",
"i386-redhat-linux6E", "i686-redhat-linux", "i386-redhat-linux",
"i586-suse-linux", "i686-montavista-linux",
@@ -2121,6 +2128,7 @@ void Generic_GCC::GCCInstallationDetecto
static const char *const PPCLibDirs[] = {"/lib32", "/lib"};
static const char *const PPCTriples[] = {
+ "powerpc-pld-linux",
"powerpc-unknown-linux-gnu",
// On 32-bit PowerPC systems running SUSE Linux, gcc is configured as a
// 64-bit compiler which defaults to "-m32", hence "powerpc64-suse-linux".
@@ -2146,14 +2154,14 @@ void Generic_GCC::GCCInstallationDetecto
"riscv64-unknown-elf"};
static const char *const SPARCv8LibDirs[] = {"/lib32", "/lib"};
- static const char *const SPARCv8Triples[] = {"sparc-linux-gnu",
+ static const char *const SPARCv8Triples[] = {"sparc-pld-linux", "sparc-linux-gnu",
"sparcv8-linux-gnu"};
static const char *const SPARCv9LibDirs[] = {"/lib64", "/lib"};
- static const char *const SPARCv9Triples[] = {"sparc64-linux-gnu",
+ static const char *const SPARCv9Triples[] = {"sparc64-pld-linux", "sparc64-linux-gnu",
"sparcv9-linux-gnu"};
static const char *const SystemZLibDirs[] = {"/lib64", "/lib"};
- static const char *const SystemZTriples[] = {
+ static const char *const SystemZTriples[] = {"s390x-pld-linux",
"s390x-unknown-linux-gnu", "s390x-ibm-linux-gnu", "s390x-suse-linux",
"s390x-redhat-linux"};
diff -urNp -x '*.orig' llvm-project.src.orig/clang/lib/Driver/ToolChains/Linux.cpp llvm-project.src/clang/lib/Driver/ToolChains/Linux.cpp
--- llvm-project.src.orig/clang/lib/Driver/ToolChains/Linux.cpp 2020-12-18 20:57:38.000000000 +0100
+++ llvm-project.src/clang/lib/Driver/ToolChains/Linux.cpp 2021-03-25 22:27:39.173689051 +0100
@@ -226,7 +226,7 @@ Linux::Linux(const Driver &D, const llvm
ExtraOpts.push_back("now");
}
- if (Distro.IsOpenSUSE() || Distro.IsUbuntu() || Distro.IsAlpineLinux() ||
+ if (Distro.IsOpenSUSE() || Distro.IsUbuntu() || Distro.IsAlpineLinux() || Distro.IsPLD() ||
Triple.isAndroid()) {
ExtraOpts.push_back("-z");
ExtraOpts.push_back("relro");