diff options
author | Khem Raj <raj.khem@gmail.com> | 2017-09-18 17:27:59 -0700 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2017-09-18 21:01:06 -0700 |
commit | 87c42081202c3cfa64da92bbda28527afb9439b8 (patch) | |
tree | 496f0380c437f661555ced8cdef10a538c8544af | |
parent | 0876f331caae96569ebb4feb360cbd8737490986 (diff) | |
download | meta-clang-87c42081202c3cfa64da92bbda28527afb9439b8.tar.gz |
libcxx: Disable libunwind on all mips
llvm libunwind is still not ported to mips
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r-- | classes/clang.bbclass | 1 | ||||
-rw-r--r-- | conf/layer.conf | 1 | ||||
-rw-r--r-- | conf/nonclangable.conf | 5 | ||||
-rw-r--r-- | recipes-devtools/clang/libcxx_git.bb | 17 |
4 files changed, 17 insertions, 7 deletions
diff --git a/classes/clang.bbclass b/classes/clang.bbclass index e12b492..6d80aa6 100644 --- a/classes/clang.bbclass +++ b/classes/clang.bbclass | |||
@@ -42,4 +42,5 @@ BASEDEPENDS_remove_toolchain-clang_class-target = "virtual/${TARGET_PREFIX}gcc" | |||
42 | BASEDEPENDS_append_toolchain-clang_class-target = "${@clang_dep_prepend(d)}" | 42 | BASEDEPENDS_append_toolchain-clang_class-target = "${@clang_dep_prepend(d)}" |
43 | 43 | ||
44 | PREFERRED_PROVIDER_libunwind = "libunwind" | 44 | PREFERRED_PROVIDER_libunwind = "libunwind" |
45 | PREFERRED_PROVIDER_libunwind_mipsarch = "libunwind" | ||
45 | PREFERRED_PROVIDER_libunwind_toolchain-clang = "libcxx" | 46 | PREFERRED_PROVIDER_libunwind_toolchain-clang = "libcxx" |
diff --git a/conf/layer.conf b/conf/layer.conf index 64c5b1a..daa8e1b 100644 --- a/conf/layer.conf +++ b/conf/layer.conf | |||
@@ -11,7 +11,6 @@ BBFILE_PRIORITY_clang-layer = "7" | |||
11 | #PREFERRED_PROVIDER_gcc-cross-initial-${TARGET_ARCH}_forcevariable = "clang-cross" | 11 | #PREFERRED_PROVIDER_gcc-cross-initial-${TARGET_ARCH}_forcevariable = "clang-cross" |
12 | #PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-initial_forcevariable = "clang-cross" | 12 | #PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-initial_forcevariable = "clang-cross" |
13 | PREFERRED_PROVIDER_libgcc-initial = "libgcc-initial" | 13 | PREFERRED_PROVIDER_libgcc-initial = "libgcc-initial" |
14 | PREFERRED_PROVIDER_libunwind = "libcxx" | ||
15 | 14 | ||
16 | INHERIT += "clang" | 15 | INHERIT += "clang" |
17 | 16 | ||
diff --git a/conf/nonclangable.conf b/conf/nonclangable.conf index d0379ec..afb5ce4 100644 --- a/conf/nonclangable.conf +++ b/conf/nonclangable.conf | |||
@@ -104,6 +104,11 @@ TOOLCHAIN_pn-nodejs_armv7ve = "gcc" | |||
104 | # also see http://lists.llvm.org/pipermail/llvm-dev/2016-October/105997.html | 104 | # also see http://lists.llvm.org/pipermail/llvm-dev/2016-October/105997.html |
105 | TOOLCHAIN_pn-pixman = "gcc" | 105 | TOOLCHAIN_pn-pixman = "gcc" |
106 | 106 | ||
107 | #| ../../pulseaudio-10.0/src/pulsecore/mix_neon.c../../pulseaudio-10.0/src/pulsecore/sconv_neon.c:49::27: error: unknown register name 'q0' in asm | ||
108 | #| : "memory", "cc", "q0" /* clobber list */ | ||
109 | #| ^ | ||
110 | TOOLCHAIN_pn-pulseaudio_aarch64 = "gcc" | ||
111 | |||
107 | # x264 causes a infinite loop when compiling 1 source file | 112 | # x264 causes a infinite loop when compiling 1 source file |
108 | # | 113 | # |
109 | TOOLCHAIN_pn-x264_x86 = "gcc" | 114 | TOOLCHAIN_pn-x264_x86 = "gcc" |
diff --git a/recipes-devtools/clang/libcxx_git.bb b/recipes-devtools/clang/libcxx_git.bb index 9cf6206..0f3b2a8 100644 --- a/recipes-devtools/clang/libcxx_git.bb +++ b/recipes-devtools/clang/libcxx_git.bb | |||
@@ -45,28 +45,33 @@ EXTRA_OECMAKE += "\ | |||
45 | -DLIBCXXABI_LIBCXX_INCLUDES=${S}/projects/libcxx/include \ | 45 | -DLIBCXXABI_LIBCXX_INCLUDES=${S}/projects/libcxx/include \ |
46 | -DLIBCXX_CXX_ABI_INCLUDE_PATHS=${S}/projects/libcxxabi/include \ | 46 | -DLIBCXX_CXX_ABI_INCLUDE_PATHS=${S}/projects/libcxxabi/include \ |
47 | -DLIBCXX_CXX_ABI_LIBRARY_PATH=${B}/lib \ | 47 | -DLIBCXX_CXX_ABI_LIBRARY_PATH=${B}/lib \ |
48 | -DLIBCXXABI_USE_LLVM_UNWINDER=ON \ | 48 | -DLIBCXXABI_USE_LLVM_UNWINDER=${USE_LLVM_UNWINDER} \ |
49 | -G Ninja \ | 49 | -G Ninja \ |
50 | ${S} \ | 50 | ${S} \ |
51 | " | 51 | " |
52 | EXTRA_OECMAKE_remove_mipsarch = "-DLIBCXXABI_USE_LLVM_UNWINDER=ON" | 52 | USE_LLVM_UNWINDER ?= "ON" |
53 | USE_LLVM_UNWINDER_mipsarch = "OFF" | ||
53 | 54 | ||
54 | EXTRA_OECMAKE_append_libc-musl = " -DLIBCXX_HAS_MUSL_LIBC=ON " | 55 | EXTRA_OECMAKE_append_libc-musl = " -DLIBCXX_HAS_MUSL_LIBC=ON " |
55 | 56 | ||
57 | COMPILE_TARGETS ?= "unwind cxxabi" | ||
58 | COMPILE_TARGETS_mipsarch = "cxxabi" | ||
56 | 59 | ||
60 | INSTALL_TARGETS ?= "projects/libunwind/install install-cxxabi" | ||
61 | INSTALL_TARGETS_mipsarch = "install-cxxabi" | ||
57 | 62 | ||
58 | do_compile() { | 63 | do_compile() { |
59 | NINJA_STATUS="[%p] " ninja -v ${PARALLEL_MAKE} unwind | 64 | NINJA_STATUS="[%p] " ninja -v ${PARALLEL_MAKE} ${COMPILE_TARGETS} |
60 | NINJA_STATUS="[%p] " ninja -v ${PARALLEL_MAKE} cxxabi | ||
61 | NINJA_STATUS="[%p] " ninja -v ${PARALLEL_MAKE} cxx | 65 | NINJA_STATUS="[%p] " ninja -v ${PARALLEL_MAKE} cxx |
62 | } | 66 | } |
63 | 67 | ||
64 | do_install() { | 68 | do_install() { |
65 | NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} projects/libunwind/install install-cxxabi install-cxx | 69 | NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} ${INSTALL_TARGETS} |
70 | NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} install-cxx | ||
66 | } | 71 | } |
67 | 72 | ||
68 | PACKAGES =+ "libunwind" | 73 | PACKAGES =+ "libunwind" |
69 | 74 | PACKAGES_remove_mipsarch = "libunwind" | |
70 | FILES_libunwind += "${libdir}/libunwind.so.*" | 75 | FILES_libunwind += "${libdir}/libunwind.so.*" |
71 | 76 | ||
72 | ALLOW_EMPTY_${PN} = "1" | 77 | ALLOW_EMPTY_${PN} = "1" |