diff options
| -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" |
