summaryrefslogtreecommitdiff
path: root/user/clang
diff options
context:
space:
mode:
Diffstat (limited to 'user/clang')
-rw-r--r--user/clang/APKBUILD6
-rw-r--r--user/clang/ppc-dirwatcher.patch10
-rw-r--r--user/clang/ppc-interp.patch25
3 files changed, 39 insertions, 2 deletions
diff --git a/user/clang/APKBUILD b/user/clang/APKBUILD
index 51c167189..af8550375 100644
--- a/user/clang/APKBUILD
+++ b/user/clang/APKBUILD
@@ -20,6 +20,8 @@ source="https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver/$
https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver/llvm-$pkgver.src.tar.xz
0001-Add-support-for-Ad-lie-Linux.patch
cfe-005-ppc64-dynamic-linker-path.patch
+ ppc-dirwatcher.patch
+ ppc-interp.patch
ppc64-elfv2.patch
use-llvm-lit.patch
"
@@ -59,8 +61,6 @@ check() {
}
package() {
- local _dir _file
-
make DESTDIR="$pkgdir" -C build install
install -m 644 build/lib/libclang.a "$pkgdir"/usr/lib
@@ -109,5 +109,7 @@ sha512sums="5f5497b57dd116225e90f321902f1015beb50c0b1bb90d0fc6c026f13aa748feabe4
6461bdde27aac17fa44c3e99a85ec47ffb181d0d4e5c3ef1c4286a59583e3b0c51af3c8081a300f45b99524340773a3011380059e3b3a571c3b0a8733e96fc1d llvm-14.0.6.src.tar.xz
7f422f671167498102789e8c0b3ab4e46d6a4433d89f0f6b2cf0736ad257146e5eeb04b6f1d9431cce4635c9691d0cc80e643f852269bf7119ce312ae9bb8068 0001-Add-support-for-Ad-lie-Linux.patch
b3c999ef1e380b02a25f1ebca4811f1c696b88309b73af0c19865e3b92084becc9529b910d24b4fb7133606c1e105860104017406d876f95e9260c716348bd1c cfe-005-ppc64-dynamic-linker-path.patch
+0032fdd3864870d345caff9c4ff44f58bebc802bddf06c4b3bf30276c89e237167e6dea03456d322d3f6e2ee5e3a2ecf9f649ed033f0ab078b80bda44371b3ce ppc-dirwatcher.patch
+0d8f77100cd8550be0dc251704081574b0cdc46169df1428ad8cc9f689cdaa47adcd9ff45a816e238ee279395036c7548bf1033307aabbb3a62cce9f360698eb ppc-interp.patch
4f534e72cf3ec9134d9f77a1a787c84859a5ee84b52da529d47745eb7d75d383070573018588bfbf622e826fcb281fdf20fa79217024df5cb824e6ae1ea1d7bf ppc64-elfv2.patch
1f93918d512849e8bf7eb4e71d2b623c0ae3361e4b6ed5b50b76b0fe78e3d70f8773061b1ea0f327950a4f7c2ffdcdaafcb224301732df2a7469c742e8f5883f use-llvm-lit.patch"
diff --git a/user/clang/ppc-dirwatcher.patch b/user/clang/ppc-dirwatcher.patch
new file mode 100644
index 000000000..35587152f
--- /dev/null
+++ b/user/clang/ppc-dirwatcher.patch
@@ -0,0 +1,10 @@
+Doesn't work on PowerPC.
+
+--- clang-14.0.6.src/unittests/DirectoryWatcher/CMakeLists.txt.old 2022-06-22 16:46:24.000000000 +0000
++++ clang-14.0.6.src/unittests/DirectoryWatcher/CMakeLists.txt 2022-12-05 01:14:23.863133395 +0000
+@@ -1,4 +1,4 @@
+-if(APPLE OR CMAKE_SYSTEM_NAME MATCHES "Linux" OR CMAKE_SYSTEM_NAME STREQUAL Windows)
++if(APPLE OR (CMAKE_SYSTEM_NAME MATCHES "Linux" AND NOT (CMAKE_SYSTEM_PROCESSOR STREQUAL "ppc")) OR CMAKE_SYSTEM_NAME STREQUAL Windows)
+
+ set(LLVM_LINK_COMPONENTS
+ Support
diff --git a/user/clang/ppc-interp.patch b/user/clang/ppc-interp.patch
new file mode 100644
index 000000000..a8cb6bc90
--- /dev/null
+++ b/user/clang/ppc-interp.patch
@@ -0,0 +1,25 @@
+PPC32 doesn't support some of the clang-repl due to R_PPC_REL24 not being
+implemented in RuntimeDyld.
+
+--- clang-14.0.6.src/test/Interpreter/execute.cpp.old 2022-06-22 16:46:24.000000000 +0000
++++ clang-14.0.6.src/test/Interpreter/execute.cpp 2022-12-05 01:04:26.517960246 +0000
+@@ -1,7 +1,7 @@
+ // RUN: clang-repl "int i = 10;" 'extern "C" int printf(const char*,...);' \
+ // RUN: 'auto r1 = printf("i = %d\n", i);' | FileCheck --check-prefix=CHECK-DRIVER %s
+ // REQUIRES: host-supports-jit
+-// UNSUPPORTED: system-aix
++// UNSUPPORTED: system-aix, powerpc-
+ // CHECK-DRIVER: i = 10
+ // RUN: cat %s | clang-repl | FileCheck %s
+ extern "C" int printf(const char *, ...);
+--- clang-14.0.6.src/unittests/Interpreter/InterpreterTest.cpp.old 2022-06-22 16:46:24.000000000 +0000
++++ clang-14.0.6.src/unittests/Interpreter/InterpreterTest.cpp 2022-12-05 01:53:47.058187317 +0000
+@@ -205,7 +205,7 @@
+ return R.getFoundDecl();
+ }
+
+-#ifdef _AIX
++#if defined(_AIX) || (!defined(__powerpc64__) && defined(__powerpc__))
+ TEST(IncrementalProcessing, DISABLED_InstantiateTemplate) {
+ #else
+ TEST(IncrementalProcessing, InstantiateTemplate) {