From 88b27cc6bda3e09d873c48b935d747eedaafe659 Mon Sep 17 00:00:00 2001 From: Fredrik Fornwall Date: Tue, 5 Jan 2016 09:15:12 -0500 Subject: [PATCH] clang: Fix aarch64 build --- packages/clang/build.sh | 3 +++ packages/clang/compiler-rt-android.patch.disabled | 13 +++++++++++++ .../clang/compiler-rt-clear_cache.c.patch.disabled | 14 ++++++++++++++ 3 files changed, 30 insertions(+) create mode 100644 packages/clang/compiler-rt-android.patch.disabled create mode 100644 packages/clang/compiler-rt-clear_cache.c.patch.disabled diff --git a/packages/clang/build.sh b/packages/clang/build.sh index 47bab5da7..ae0ac546f 100644 --- a/packages/clang/build.sh +++ b/packages/clang/build.sh @@ -43,6 +43,9 @@ termux_step_configure () { LLVM_DEFAULT_TARGET_TRIPLE="armv7a-linux-androideabihf" elif [ $TERMUX_ARCH = "i686" ]; then LLVM_TARGET_ARCH=X86 + elif [ $TERMUX_ARCH = "aarch64" ]; then + LLVM_TARGET_ARCH=AArch64 + LLVM_DEFAULT_TARGET_TRIPLE="aarch64-linux-android" fi # see CMakeLists.txt and tools/clang/CMakeLists.txt cmake -G "Unix Makefiles" .. \ diff --git a/packages/clang/compiler-rt-android.patch.disabled b/packages/clang/compiler-rt-android.patch.disabled new file mode 100644 index 000000000..f45b0dfcf --- /dev/null +++ b/packages/clang/compiler-rt-android.patch.disabled @@ -0,0 +1,13 @@ +diff -u -r ../pristine/projects/compiler-rt/CMakeLists.txt ./projects/compiler-rt/CMakeLists.txt +--- ../pristine/projects/compiler-rt/CMakeLists.txt 2015-07-27 12:42:42.000000000 -0400 ++++ ./projects/compiler-rt/CMakeLists.txt 2015-12-08 11:07:26.899747723 -0500 +@@ -147,9 +147,7 @@ + set(COMPILER_RT_HAS_EXPLICIT_TEST_TARGET_TRIPLE FALSE) + endif() + +-if ("${COMPILER_RT_TEST_TARGET_ABI}" STREQUAL "androideabi") + set(ANDROID 1) +-endif() + + string(TOLOWER ${CMAKE_SYSTEM_NAME} COMPILER_RT_OS_DIR) + set(COMPILER_RT_LIBRARY_OUTPUT_DIR diff --git a/packages/clang/compiler-rt-clear_cache.c.patch.disabled b/packages/clang/compiler-rt-clear_cache.c.patch.disabled new file mode 100644 index 000000000..8102a452d --- /dev/null +++ b/packages/clang/compiler-rt-clear_cache.c.patch.disabled @@ -0,0 +1,14 @@ +See http://reviews.llvm.org/D14115 + +diff -u -r ../pristine/projects/compiler-rt/lib/builtins/clear_cache.c ./projects/compiler-rt/lib/builtins/clear_cache.c +--- ../pristine/projects/compiler-rt/lib/builtins/clear_cache.c 2015-03-11 18:06:53.000000000 -0400 ++++ ./projects/compiler-rt/lib/builtins/clear_cache.c 2015-12-27 07:34:11.519445662 -0500 +@@ -104,7 +104,7 @@ + const register int flags __asm("r2") = 0; + const register int syscall_nr __asm("r7") = __ARM_NR_cacheflush; + __asm __volatile("svc 0x0" : "=r"(start_reg) +- : "r"(syscall_nr), "r"(start_reg), "r"(end_reg), "r"(flags) : "r0"); ++ : "r"(syscall_nr), "r"(start_reg), "r"(end_reg), "r"(flags)); + if (start_reg != 0) { + compilerrt_abort(); + }