summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Davis <michael.davis@essvote.com>2018-07-09 16:51:34 -0500
committerKhem Raj <raj.khem@gmail.com>2018-09-12 09:13:21 -0700
commit1784b06e6b1a83748438b4bec7e079d735d5b608 (patch)
tree7531bad01cd4965b1e6cd6a08f8a4aad8f866f52
parent98a262ae5b5a7bfbb97afb29c6ae36571c8a45f2 (diff)
downloadmeta-clang-1784b06e6b1a83748438b4bec7e079d735d5b608.tar.gz
libcxx: Add libunwind to PACKAGECONFIGsumo
Allow libunwind to be turned off and on using PACKAGECONFIG Default to ON Signed-off-by: Michael Davis <michael.davis@essvote.com>
-rw-r--r--recipes-devtools/clang/libcxx_git.bb32
1 files changed, 16 insertions, 16 deletions
diff --git a/recipes-devtools/clang/libcxx_git.bb b/recipes-devtools/clang/libcxx_git.bb
index 9647152..a88b46d 100644
--- a/recipes-devtools/clang/libcxx_git.bb
+++ b/recipes-devtools/clang/libcxx_git.bb
@@ -16,8 +16,11 @@ DEPENDS += "ninja-native"
16BASEDEPENDS_remove_toolchain-clang_class-target = "libcxx" 16BASEDEPENDS_remove_toolchain-clang_class-target = "libcxx"
17TARGET_CXXFLAGS_remove_toolchain-clang = " -stdlib=libc++ " 17TARGET_CXXFLAGS_remove_toolchain-clang = " -stdlib=libc++ "
18 18
19PROVIDES = "libunwind" 19PACKAGECONFIG ??= "unwind"
20PROVIDES_remove_mipsarch = "libunwind" 20PACKAGECONFIG_mipsarch = ""
21PACKAGECONFIG[unwind] = "-DLIBCXXABI_USE_LLVM_UNWINDER=ON -DLIBCXXABI_LIBUNWIND_INCLUDES=${S}/projects/libunwind/include, -DLIBCXXABI_USE_LLVM_UNWINDER=OFF,"
22
23PROVIDES = "${@bb.utils.contains('PACKAGECONFIG', 'unwind', 'libunwind', '', d)}"
21 24
22LIC_FILES_CHKSUM = "file://projects/libcxx/LICENSE.TXT;md5=7b3a0e1b99822669d630011defe9bfd9; \ 25LIC_FILES_CHKSUM = "file://projects/libcxx/LICENSE.TXT;md5=7b3a0e1b99822669d630011defe9bfd9; \
23" 26"
@@ -42,37 +45,34 @@ EXTRA_OECMAKE += "\
42 -DLIBCXX_CXX_ABI=libcxxabi \ 45 -DLIBCXX_CXX_ABI=libcxxabi \
43 -DLLVM_BUILD_EXTERNAL_COMPILER_RT=ON \ 46 -DLLVM_BUILD_EXTERNAL_COMPILER_RT=ON \
44 -DCXX_SUPPORTS_CXX11=ON \ 47 -DCXX_SUPPORTS_CXX11=ON \
45 -DLIBCXXABI_LIBUNWIND_INCLUDES=${S}/projects/libunwind/include \
46 -DLIBCXXABI_LIBCXX_INCLUDES=${S}/projects/libcxx/include \ 48 -DLIBCXXABI_LIBCXX_INCLUDES=${S}/projects/libcxx/include \
47 -DLIBCXX_CXX_ABI_INCLUDE_PATHS=${S}/projects/libcxxabi/include \ 49 -DLIBCXX_CXX_ABI_INCLUDE_PATHS=${S}/projects/libcxxabi/include \
48 -DLIBCXX_CXX_ABI_LIBRARY_PATH=${B}/lib \ 50 -DLIBCXX_CXX_ABI_LIBRARY_PATH=${B}/lib \
49 -DLIBCXXABI_USE_LLVM_UNWINDER=${USE_LLVM_UNWINDER} \
50 -G Ninja \ 51 -G Ninja \
51 ${S} \ 52 ${S} \
52" 53"
53USE_LLVM_UNWINDER ?= "ON"
54USE_LLVM_UNWINDER_mipsarch = "OFF"
55 54
56EXTRA_OECMAKE_append_libc-musl = " -DLIBCXX_HAS_MUSL_LIBC=ON " 55EXTRA_OECMAKE_append_libc-musl = " -DLIBCXX_HAS_MUSL_LIBC=ON "
57 56
58COMPILE_TARGETS ?= "unwind cxxabi"
59COMPILE_TARGETS_mipsarch = "cxxabi"
60
61INSTALL_TARGETS ?= "install-unwind install-cxxabi"
62INSTALL_TARGETS_mipsarch = "install-cxxabi"
63
64do_compile() { 57do_compile() {
65 ninja -v ${PARALLEL_MAKE} ${COMPILE_TARGETS} 58
59 ninja -v ${PARALLEL_MAKE} cxxabi
66 ninja -v ${PARALLEL_MAKE} cxx 60 ninja -v ${PARALLEL_MAKE} cxx
61 if ${@bb.utils.contains('PACKAGECONFIG', 'unwind', 'true', 'false', d)}; then
62 ninja -v ${PARALLEL_MAKE} unwind
63 fi
64
67} 65}
68 66
69do_install() { 67do_install() {
70 DESTDIR=${D} ninja ${PARALLEL_MAKE} ${INSTALL_TARGETS} 68 DESTDIR=${D} ninja ${PARALLEL_MAKE} install-cxxabi
71 DESTDIR=${D} ninja ${PARALLEL_MAKE} install-cxx 69 DESTDIR=${D} ninja ${PARALLEL_MAKE} install-cxx
70 if ${@bb.utils.contains('PACKAGECONFIG', 'unwind', 'true', 'false', d)}; then
71 DESTDIR=${D} ninja ${PARALLEL_MAKE} install-unwind
72 fi
72} 73}
73 74
74PACKAGES =+ "libunwind" 75PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'unwind', 'libunwind', '', d)}"
75PACKAGES_remove_mipsarch = "libunwind"
76FILES_libunwind += "${libdir}/libunwind.so.*" 76FILES_libunwind += "${libdir}/libunwind.so.*"
77 77
78ALLOW_EMPTY_${PN} = "1" 78ALLOW_EMPTY_${PN} = "1"