From caf39e95fedcd346cf3a72db260e35fcb4ee343d Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Sat, 29 Jul 2017 12:48:51 -0700 Subject: recipes: Use ninja generator on top of cmake ninja is in OE-Core now Signed-off-by: Khem Raj --- recipes-devtools/clang/clang_git.bb | 11 ++++++++++- recipes-devtools/clang/compiler-rt_git.bb | 12 ++++++++++++ recipes-devtools/clang/libcxx_git.bb | 11 ++++++++++- recipes-devtools/clang/libcxxabi_git.bb | 11 ++++++++++- recipes-devtools/clang/lld_git.bb | 12 +++++++----- recipes-devtools/clang/lldb_git.bb | 16 ++++++++-------- recipes-devtools/clang/llvm-libunwind_git.bb | 11 ++++++++++- recipes-devtools/clang/openmp_git.bb | 12 ++++++++++++ 8 files changed, 79 insertions(+), 17 deletions(-) diff --git a/recipes-devtools/clang/clang_git.bb b/recipes-devtools/clang/clang_git.bb index 0b1aa49..e0e9c21 100644 --- a/recipes-devtools/clang/clang_git.bb +++ b/recipes-devtools/clang/clang_git.bb @@ -72,6 +72,7 @@ EXTRA_OECMAKE="-DLLVM_ENABLE_RTTI=True \ -DCMAKE_SYSTEM_NAME=Linux \ -DCMAKE_BUILD_TYPE=Release \ -DLLVM_BUILD_EXTERNAL_COMPILER_RT=True \ + -G Ninja \ " EXTRA_OECMAKE_append_class-native = "\ @@ -94,13 +95,21 @@ EXTRA_OECMAKE_append_class-target = "\ " EXTRA_OEMAKE += "REQUIRES_RTTI=1 VERBOSE=1" -DEPENDS = "zlib libffi libxml2" +DEPENDS = "zlib libffi libxml2 ninja-native" DEPENDS_remove_class-nativesdk = "nativesdk-binutils nativesdk-compiler-rt nativesdk-libcxx nativesdk-llvm-unwind" DEPENDS_append_class-nativesdk = " clang-native virtual/${TARGET_PREFIX}binutils-crosssdk virtual/${TARGET_PREFIX}gcc-crosssdk virtual/${TARGET_PREFIX}g++-crosssdk" DEPENDS_append_class-target = " clang-cross-${TARGET_ARCH} ${@bb.utils.contains('TOOLCHAIN', 'gcc', 'virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++', '', d)}" RRECOMMENDS_${PN} = "binutils" +do_compile() { + NINJA_STATUS="[%p] " ninja ${PARALLEL_MAKE} +} + +do_install() { + NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} install +} + do_install_append_class-native () { install -Dm 0755 ${B}/bin/clang-tblgen ${D}${bindir}/clang-tblgen for f in `find ${D}${bindir} -executable -type f -not -type l`; do diff --git a/recipes-devtools/clang/compiler-rt_git.bb b/recipes-devtools/clang/compiler-rt_git.bb index 0cfe603..207b8e4 100644 --- a/recipes-devtools/clang/compiler-rt_git.bb +++ b/recipes-devtools/clang/compiler-rt_git.bb @@ -30,6 +30,8 @@ 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" + S = "${WORKDIR}/git" inherit cmake pkgconfig pythonnative @@ -42,6 +44,7 @@ HF[vardepvalue] = "${HF}" EXTRA_OECMAKE += "-DCOMPILER_RT_STANDALONE_BUILD=ON \ -DCOMPILER_RT_DEFAULT_TARGET_TRIPLE=${HOST_ARCH}${HF}${HOST_VENDOR}-${HOST_OS} \ -DCOMPILER_RT_BUILD_XRAY=OFF \ + -G Ninja \ " EXTRA_OECMAKE_append_class-nativesdk = "\ @@ -51,6 +54,15 @@ EXTRA_OECMAKE_append_class-nativesdk = "\ EXTRA_OECMAKE_append_libc-musl = " -DCOMPILER_RT_BUILD_SANITIZERS=OFF -DCOMPILER_RT_BUILD_XRAY=OFF " +do_compile() { + NINJA_STATUS="[%p] " ninja ${PARALLEL_MAKE} +} + +do_install() { + NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} install +} + + do_install_append () { install -d ${D}${libdir}/clang/${PV}/lib/linux if [ -d ${D}${libdir}/linux ]; then diff --git a/recipes-devtools/clang/libcxx_git.bb b/recipes-devtools/clang/libcxx_git.bb index 2cbcf62..da0d44c 100644 --- a/recipes-devtools/clang/libcxx_git.bb +++ b/recipes-devtools/clang/libcxx_git.bb @@ -12,7 +12,7 @@ require common.inc inherit cmake pythonnative PV .= "+git${SRCPV}" -DEPENDS += "libcxxabi" +DEPENDS += "libcxxabi 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" @@ -41,11 +41,20 @@ EXTRA_OECMAKE += "-DLIBCXX_CXX_ABI=libcxxabi \ -DLLVM_PATH=${S} \ -DLIBCXX_ENABLE_SHARED=ON \ -DLIBCXX_ENABLE_EXCEPTIONS=ON \ + -G Ninja \ ${S}/projects/libcxx \ " EXTRA_OECMAKE_append_libc-musl = " -DLIBCXX_HAS_MUSL_LIBC=True " +do_compile() { + NINJA_STATUS="[%p] " ninja ${PARALLEL_MAKE} +} + +do_install() { + NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} install +} + ALLOW_EMPTY_${PN} = "1" BBCLASSEXTEND = "native nativesdk" diff --git a/recipes-devtools/clang/libcxxabi_git.bb b/recipes-devtools/clang/libcxxabi_git.bb index 7ca8ccb..fa10712 100644 --- a/recipes-devtools/clang/libcxxabi_git.bb +++ b/recipes-devtools/clang/libcxxabi_git.bb @@ -14,7 +14,7 @@ TOOLCHAIN = "clang" inherit cmake PV .= "+git${SRCPV}" -DEPENDS += "compiler-rt" +DEPENDS += "compiler-rt ninja-native" BASEDEPENDS_remove_toolchain-clang_class-target = "libcxx" BASEDEPENDS_remove_toolchain-clang_class-target = "llvm-libunwind" @@ -43,10 +43,19 @@ EXTRA_OECMAKE += "-DLIBCXXABI_LIBCXX_PATH=${S}/projects/libcxx \ -DLLVM_BUILD_EXTERNAL_COMPILER_RT=True \ -DCXX_SUPPORTS_CXX11=ON \ -DLIBCXXABI_ENABLE_SHARED=ON \ + -G Ninja \ ${S}/projects/libcxxabi \ " CXXFLAGS_append_libc-musl = " -D_LIBCPP_HAS_MUSL_LIBC " +do_compile() { + NINJA_STATUS="[%p] " ninja ${PARALLEL_MAKE} +} + +do_install() { + NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} install +} + ALLOW_EMPTY_${PN} = "1" BBCLASSEXTEND = "native nativesdk" diff --git a/recipes-devtools/clang/lld_git.bb b/recipes-devtools/clang/lld_git.bb index b9002a2..2bc2ee2 100644 --- a/recipes-devtools/clang/lld_git.bb +++ b/recipes-devtools/clang/lld_git.bb @@ -6,7 +6,7 @@ HOMEPAGE = "http://lld.llvm.org/" LICENSE = "MIT | NCSA" SECTION = "devel" -DEPENDS += "clang-native libcxx" +DEPENDS += "clang-native libcxx ninja-native" require clang.inc require common.inc @@ -32,17 +32,19 @@ S = "${WORKDIR}/git" OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM = "BOTH" EXTRA_OECMAKE = "\ + -DCMAKE_CROSSCOMPILING=1 \ -DLLVM_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-tblgen \ + -DCMAKE_BUILD_TYPE=Release \ + -G Ninja \ + ${S} \ " CXXFLAGS_append_toolchain-clang = " -stdlib=libc++" do_compile() { - cd ${B}/tools/lld - base_do_compile VERBOSE=1 + NINJA_STATUS="[%p] " ninja ${PARALLEL_MAKE} lld } do_install() { - cd ${B}/tools/lld - oe_runmake 'DESTDIR=${D}' install + NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} tools/lld/install } BBCLASSEXTEND = "native nativesdk" diff --git a/recipes-devtools/clang/lldb_git.bb b/recipes-devtools/clang/lldb_git.bb index 364639b..a6a1a9d 100644 --- a/recipes-devtools/clang/lldb_git.bb +++ b/recipes-devtools/clang/lldb_git.bb @@ -6,13 +6,13 @@ HOMEPAGE = "http://lldb.llvm.org/" LICENSE = "MIT | NCSA" SECTION = "devel" -DEPENDS += "clang-native zlib libxml2" +DEPENDS += "clang-native zlib libxml2 ninja-native" FILESPATH =. "${FILE_DIRNAME}/clang:" require clang.inc require common.inc -inherit cmake +inherit cmake pkgconfig PV .= "+git${SRCPV}" LIC_FILES_CHKSUM = "file://LICENSE.TXT;md5=${LLVMMD5SUM}; \ @@ -41,6 +41,7 @@ OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM = "BOTH" EXTRA_OECMAKE="\ -DCMAKE_CROSSCOMPILING=1 \ + -DLLVM_ENABLE_CXX11=ON \ -DLLVM_BUILD_LLVM_DYLIB=ON \ -DBUILD_SHARED_LIBS=OFF \ -DLLVM_BUILD_LLVM_DYLIB=ON \ @@ -51,20 +52,19 @@ EXTRA_OECMAKE="\ -DLLVM_ENABLE_TERMINFO=0 \ -DLLVM_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-tblgen \ -DCLANG_TABLEGEN=${STAGING_BINDIR_NATIVE}/clang-tblgen \ + -DCMAKE_BUILD_TYPE=Release \ + -G Ninja \ + ${S} \ " EXTRA_OEMAKE = "VERBOSE=1" -LDFLAGS += "-lxml2" - do_compile() { - cd ${B}/tools/lldb - oe_runmake VERBOSE=1 + NINJA_STATUS="[%p] " ninja ${PARALLEL_MAKE} lldb } do_install() { - cd ${B}/tools/lldb - oe_runmake 'DESTDIR=${D}' install + NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} tools/lldb/install } INSANE_SKIP_${PN}-dbg = "libdir" diff --git a/recipes-devtools/clang/llvm-libunwind_git.bb b/recipes-devtools/clang/llvm-libunwind_git.bb index 04a4515..cfbff35 100644 --- a/recipes-devtools/clang/llvm-libunwind_git.bb +++ b/recipes-devtools/clang/llvm-libunwind_git.bb @@ -12,7 +12,7 @@ require common.inc inherit cmake PV .= "+git${SRCPV}" -DEPENDS += "libcxx" +DEPENDS += "libcxx ninja-native" BASEDEPENDS_remove_toolchain-clang_class-target = "llvm-libunwind" BASEDEPENDS_remove_toolchain-clang_class-target = "compiler-rt" PROVIDES += "libunwind" @@ -48,12 +48,21 @@ EXTRA_OECMAKE += "-DLIBCXXABI_LIBCXX_PATH=${S}/projects/libcxxabi \ -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" diff --git a/recipes-devtools/clang/openmp_git.bb b/recipes-devtools/clang/openmp_git.bb index d7e0875..8ca9f32 100644 --- a/recipes-devtools/clang/openmp_git.bb +++ b/recipes-devtools/clang/openmp_git.bb @@ -8,6 +8,8 @@ SECTION = "base" require clang.inc +DEPENDS += "ninja-native" + TOOLCHAIN = "clang" PV .= "+git${SRCPV}" @@ -28,8 +30,18 @@ S = "${WORKDIR}/git/runtime" inherit cmake pkgconfig perlnative +EXTRA_OECMAKE = "-G Ninja" + THUMB_TUNE_CCARGS = "" +do_compile() { + NINJA_STATUS="[%p] " ninja ${PARALLEL_MAKE} +} + +do_install() { + NINJA_STATUS="[%p] " DESTDIR=${D} ninja ${PARALLEL_MAKE} install +} + FILES_SOLIBSDEV = "" FILES_${PN} += "${libdir}/lib*${SOLIBSDEV}" INSANE_SKIP_${PN} = "dev-so" -- cgit v1.2.3-54-g00ecf