From 61579d74eca12998ce988339dc71566a360309a7 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Mon, 31 Jul 2017 09:14:10 -0700 Subject: llvm-libunwind: Delete build llvm libunwind along with libcxx Signed-off-by: Khem Raj --- classes/clang.bbclass | 5 +- conf/layer.conf | 2 +- ...ackagegroup-core-standalone-sdk-target.bbappend | 2 +- recipes-devtools/clang/compiler-rt_git.bb | 1 - recipes-devtools/clang/libcxx_git.bb | 20 +++++-- recipes-devtools/clang/llvm-libunwind_git.bb | 70 ---------------------- recipes-devtools/clang/openmp_git.bb | 1 - 7 files changed, 18 insertions(+), 83 deletions(-) delete mode 100644 recipes-devtools/clang/llvm-libunwind_git.bb diff --git a/classes/clang.bbclass b/classes/clang.bbclass index f0cd57f..d527b26 100644 --- a/classes/clang.bbclass +++ b/classes/clang.bbclass @@ -38,12 +38,11 @@ OVERRIDES[vardepsexclude] += "TOOLCHAIN" def clang_dep_prepend(d): if not d.getVar('INHIBIT_DEFAULT_DEPS', False): if not oe.utils.inherits(d, 'allarch') : - return " clang-cross-${TARGET_ARCH} compiler-rt libcxx llvm-libunwind" + return " clang-cross-${TARGET_ARCH} compiler-rt libcxx" return "" BASEDEPENDS_remove_toolchain-clang_class-target = "virtual/${TARGET_PREFIX}gcc" -BASEDEPENDS_remove_toolchain-clang_class-target_mipsarch = "llvm-libunwind" BASEDEPENDS_append_toolchain-clang_class-target = "${@clang_dep_prepend(d)}" PREFERRED_PROVIDER_libunwind = "libunwind" -PREFERRED_PROVIDER_libunwind_toolchain-clang = "llvm-libunwind" +PREFERRED_PROVIDER_libunwind_toolchain-clang = "libcxx" diff --git a/conf/layer.conf b/conf/layer.conf index 2834fb4..64c5b1a 100644 --- a/conf/layer.conf +++ b/conf/layer.conf @@ -11,7 +11,7 @@ BBFILE_PRIORITY_clang-layer = "7" #PREFERRED_PROVIDER_gcc-cross-initial-${TARGET_ARCH}_forcevariable = "clang-cross" #PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}gcc-initial_forcevariable = "clang-cross" PREFERRED_PROVIDER_libgcc-initial = "libgcc-initial" -PREFERRED_PROVIDER_libunwind = "llvm-libunwind" +PREFERRED_PROVIDER_libunwind = "libcxx" INHERIT += "clang" diff --git a/recipes-core/packagegroups/packagegroup-core-standalone-sdk-target.bbappend b/recipes-core/packagegroups/packagegroup-core-standalone-sdk-target.bbappend index 299cc25..792b25f 100644 --- a/recipes-core/packagegroups/packagegroup-core-standalone-sdk-target.bbappend +++ b/recipes-core/packagegroups/packagegroup-core-standalone-sdk-target.bbappend @@ -1,6 +1,6 @@ RDEPENDS_${PN}_toolchain-clang += "\ libcxx-dev \ + libcxx-static-dev \ compiler-rt-dev \ compiler-rt-staticdev \ - llvm-libunwind-dev \ " diff --git a/recipes-devtools/clang/compiler-rt_git.bb b/recipes-devtools/clang/compiler-rt_git.bb index 207b8e4..413efd6 100644 --- a/recipes-devtools/clang/compiler-rt_git.bb +++ b/recipes-devtools/clang/compiler-rt_git.bb @@ -28,7 +28,6 @@ SRCREV_FORMAT = "compiler-rt" BASEDEPENDS_remove_toolchain-clang_class-target = "compiler-rt" BASEDEPENDS_remove_toolchain-clang_class-target = "libcxx" -BASEDEPENDS_remove_toolchain-clang_class-target = "llvm-libunwind" DEPENDS += "ninja-native" diff --git a/recipes-devtools/clang/libcxx_git.bb b/recipes-devtools/clang/libcxx_git.bb index 26a14d0..2ab7951 100644 --- a/recipes-devtools/clang/libcxx_git.bb +++ b/recipes-devtools/clang/libcxx_git.bb @@ -14,9 +14,9 @@ PV .= "+git${SRCPV}" DEPENDS += "ninja-native" BASEDEPENDS_remove_toolchain-clang_class-target = "libcxx" -BASEDEPENDS_remove_toolchain-clang_class-target = "llvm-libunwind" -#BASEDEPENDS_remove_toolchain-clang_class-target = "compiler-rt" +PROVIDES = "libunwind" +PROVIDES_remove_mipsarch = "libunwind" LIC_FILES_CHKSUM = "file://projects/libcxx/LICENSE.TXT;md5=7b3a0e1b99822669d630011defe9bfd9; \ " @@ -24,12 +24,13 @@ SRC_URI = "\ ${LLVM_GIT}/llvm.git;protocol=${LLVM_GIT_PROTOCOL};branch=${BRANCH};name=llvm \ ${LLVM_GIT}/libcxx.git;protocol=${LLVM_GIT_PROTOCOL};branch=${BRANCH};name=libcxx;destsuffix=git/projects/libcxx \ ${LLVM_GIT}/libcxxabi.git;protocol=${LLVM_GIT_PROTOCOL};branch=${BRANCH};name=cxxabi;destsuffix=git/projects/libcxxabi \ + ${LLVM_GIT}/libunwind.git;protocol=${LLVM_GIT_PROTOCOL};branch=${BRANCH};name=libunwind;destsuffix=git/projects/libunwind \ ${LLVMPATCHES} \ ${LIBCXXPATCHES} \ ${LIBCXXABIPATCHES} \ " -SRCREV_FORMAT = "llvm_libcxx_cxxabi" +SRCREV_FORMAT = "llvm_libcxx_cxxabi_libunwind" S = "${WORKDIR}/git" @@ -38,26 +39,33 @@ THUMB_TUNE_CCARGS = "" EXTRA_OECMAKE += "\ -DLIBCXX_CXX_ABI=libcxxabi \ - -DLIBCXX_ENABLE_SHARED=ON \ -DLLVM_BUILD_EXTERNAL_COMPILER_RT=ON \ -DCXX_SUPPORTS_CXX11=ON \ -DLIBCXXABI_LIBCXX_INCLUDES=${S}/projects/libcxx/include \ -DLIBCXX_CXX_ABI_INCLUDE_PATHS=${S}/projects/libcxxabi/include \ -DLIBCXX_CXX_ABI_LIBRARY_PATH=${B}/lib \ + -DLIBCXXABI_USE_LLVM_UNWINDER=1 \ -G Ninja \ ${S} \ " +EXTRA_OECMAKE_remove_mipsarch = "-DLIBCXXABI_USE_LLVM_UNWINDER=1" EXTRA_OECMAKE_append_libc-musl = " -DLIBCXX_HAS_MUSL_LIBC=ON " + + do_compile() { - NINJA_STATUS="[%p] " ninja -v ${PARALLEL_MAKE} cxxabi cxx + NINJA_STATUS="[%p] " ninja -v ${PARALLEL_MAKE} unwind cxxabi cxx } do_install() { - NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} install-cxxabi install-cxx + NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} projects/libunwind/install install-cxxabi install-cxx } +PACKAGES =+ "libunwind" + +FILES_libunwind += "${libdir}/libunwind.so.*" + ALLOW_EMPTY_${PN} = "1" BBCLASSEXTEND = "native nativesdk" diff --git a/recipes-devtools/clang/llvm-libunwind_git.bb b/recipes-devtools/clang/llvm-libunwind_git.bb deleted file mode 100644 index cfbff35..0000000 --- a/recipes-devtools/clang/llvm-libunwind_git.bb +++ /dev/null @@ -1,70 +0,0 @@ -# Copyright (C) 2015 Khem Raj -# Released under the MIT license (see COPYING.MIT for the terms) - -DESCRIPTION = "libunwind implements a stack unwinder, needed to perform C++ exception handling." -HOMEPAGE = "http://llvm.org/" -LICENSE = "MIT | NCSA" -SECTION = "base" - -require clang.inc -require common.inc - -inherit cmake -PV .= "+git${SRCPV}" - -DEPENDS += "libcxx ninja-native" -BASEDEPENDS_remove_toolchain-clang_class-target = "llvm-libunwind" -BASEDEPENDS_remove_toolchain-clang_class-target = "compiler-rt" -PROVIDES += "libunwind" - -LIC_FILES_CHKSUM = "file://projects/libcxx/LICENSE.TXT;md5=7b3a0e1b99822669d630011defe9bfd9; \ -" -SRC_URI = "\ - ${LLVM_GIT}/llvm.git;protocol=${LLVM_GIT_PROTOCOL};branch=${BRANCH};name=llvm \ - ${LLVM_GIT}/libcxx.git;protocol=${LLVM_GIT_PROTOCOL};branch=${BRANCH};name=libcxx;destsuffix=git/projects/libcxx \ - ${LLVM_GIT}/libcxxabi.git;protocol=${LLVM_GIT_PROTOCOL};branch=${BRANCH};name=cxxabi;destsuffix=git/projects/libcxxabi \ - ${LLVM_GIT}/libunwind.git;protocol=${LLVM_GIT_PROTOCOL};branch=${BRANCH};name=libunwind;destsuffix=git/projects/libunwind \ - ${LLVMPATCHES} \ - ${LIBCXXPATCHES} \ - ${LIBCXXABIPATCHES} \ -" - -SRCREV_FORMAT = "llvm_libcxx_cxxabi_libunwind" - -S = "${WORKDIR}/git" - -COMPATIBLE_HOST_mips = "null" -COMPATIBLE_HOST_mipsel = "null" -COMPATIBLE_HOST_mips64 = "null" -COMPATIBLE_HOST_mips64el = "null" - -THUMB_TUNE_CCARGS = "" -#TUNE_CCARGS += "-nostdlib" - -EXTRA_OECMAKE += "-DLIBCXXABI_LIBCXX_PATH=${S}/projects/libcxxabi \ - -DLLVM_PATH=${S} \ - -DLLVM_ENABLE_LIBCXX=True \ - -DLLVM_ENABLE_LIBCXXABI=True \ - -DLLVM_BUILD_EXTERNAL_COMPILER_RT=True \ - -DLIBUNWIND_ENABLE_SHARED=ON \ - -DUNIX=True \ - -G Ninja \ - ${S}/projects/libunwind \ -" -do_configure_prepend () { - (cd ${S}/projects/libunwind/include && ln -sf ../../libcxxabi/include/__cxxabi_config.h) -} - -do_compile() { - NINJA_STATUS="[%p] " ninja ${PARALLEL_MAKE} -} - -do_install() { - NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} install -} - -ALLOW_EMPTY_${PN} = "1" - -RPROVIDES_${PN} = "libunwind" - -BBCLASSEXTEND = "native nativesdk" diff --git a/recipes-devtools/clang/openmp_git.bb b/recipes-devtools/clang/openmp_git.bb index 8ca9f32..159a7de 100644 --- a/recipes-devtools/clang/openmp_git.bb +++ b/recipes-devtools/clang/openmp_git.bb @@ -24,7 +24,6 @@ SRCREV_FORMAT = "openmp" BASEDEPENDS_remove_toolchain-clang_class-target = "compiler-rt" BASEDEPENDS_remove_toolchain-clang_class-target = "libcxx" -BASEDEPENDS_remove_toolchain-clang_class-target = "llvm-libunwind" S = "${WORKDIR}/git/runtime" -- cgit v1.2.3-54-g00ecf