From: Deepesh Varatharajan <[email protected]> Enable the necessary CMake flags to build and run tests for LLVM, Clang and LLD. Install the LLVM target tools needed to run tests via llvm-lit inside QEMU.
Signed-off-by: Deepesh Varatharajan <[email protected]> --- meta/recipes-devtools/clang/clang_git.bb | 2 ++ meta/recipes-devtools/clang/lld_git.bb | 2 ++ meta/recipes-devtools/clang/llvm_git.bb | 8 +++++++- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/meta/recipes-devtools/clang/clang_git.bb b/meta/recipes-devtools/clang/clang_git.bb index e10c327a2a..a6950e433e 100644 --- a/meta/recipes-devtools/clang/clang_git.bb +++ b/meta/recipes-devtools/clang/clang_git.bb @@ -77,6 +77,8 @@ EXTRA_OECMAKE += "-DLLVM_ENABLE_ASSERTIONS=OFF \ -DCMAKE_STRIP=${STAGING_BINDIR_NATIVE}/llvm-strip \ " +EXTRA_OECMAKE:append:class-target = "-DCLANG_INCLUDE_TESTS=ON -DLLVM_INCLUDE_TESTS=ON" + DEPENDS = "llvm-tblgen-native llvm-native llvm binutils zlib zstd libffi libxml2 libxml2-native" DEPENDS:append:class-target = " ${@bb.utils.contains('TC_CXX_RUNTIME', 'llvm', 'compiler-rt libcxx', '', d)}" diff --git a/meta/recipes-devtools/clang/lld_git.bb b/meta/recipes-devtools/clang/lld_git.bb index ba36942790..798e76746a 100644 --- a/meta/recipes-devtools/clang/lld_git.bb +++ b/meta/recipes-devtools/clang/lld_git.bb @@ -19,4 +19,6 @@ OECMAKE_SOURCEPATH = "${S}/lld" EXTRA_OECMAKE += "-DLLVM_INCLUDE_TESTS=OFF -DLLVM_USE_SYMLINKS=ON \ -DLLVM_TABLEGEN_EXE=${STAGING_BINDIR_NATIVE}/llvm-tblgen" +EXTRA_OECMAKE:append:class-target = "-DLLVM_INCLUDE_TESTS=ON" + BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-devtools/clang/llvm_git.bb b/meta/recipes-devtools/clang/llvm_git.bb index 96ea383731..d99d6336ff 100644 --- a/meta/recipes-devtools/clang/llvm_git.bb +++ b/meta/recipes-devtools/clang/llvm_git.bb @@ -48,6 +48,7 @@ EXTRA_OECMAKE += "-DCMAKE_BUILD_TYPE=MinSizeRel \ -DLLVM_INCLUDE_EXAMPLES=OFF \ -DLLVM_TOOL_OBJ2YAML_BUILD=OFF \ -DLLVM_TOOL_YAML2OBJ_BUILD=OFF \ + -DLLVM_TOOL_LLVM_EXEGESIS_BUILD=ON \ -DLLVM_NATIVE_TOOL_DIR=${STAGING_BINDIR_NATIVE} \ -DLLVM_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-tblgen \ -DCROSS_TOOLCHAIN_FLAGS_NATIVE='-DCMAKE_TOOLCHAIN_FILE=${WORKDIR}/toolchain-native.cmake' \ @@ -58,6 +59,11 @@ EXTRA_OECMAKE:append:class-target = "\ -DLLVM_TARGET_ARCH=${HOST_ARCH} \ -DLLVM_HOST_TRIPLE=${TARGET_SYS}${HF} \ -DLLVM_CONFIG_PATH=${STAGING_BINDIR_NATIVE}/llvm-config \ + -DLLVM_INCLUDE_TESTS=ON \ + -DLLVM_BUILD_TESTS=ON \ + -DLLVM_INSTALL_GTEST=ON \ + -DLLVM_TOOL_OBJ2YAML_BUILD=ON \ + -DLLVM_TOOL_YAML2OBJ_BUILD=ON \ " EXTRA_OECMAKE:append:class-nativesdk = "\ @@ -69,7 +75,6 @@ PACKAGECONFIG ??= "eh rtti shared-libs ${@bb.utils.filter('DISTRO_FEATURES', 'lt PACKAGECONFIG:remove:class-native = "lto thin-lto" PACKAGECONFIG[eh] = "-DLLVM_ENABLE_EH=ON,-DLLVM_ENABLE_EH=OFF" -PACKAGECONFIG[exegesis] = "-DLLVM_TOOL_LLVM_EXEGESIS_BUILD=ON,-DLLVM_TOOL_LLVM_EXEGESIS_BUILD=OFF" PACKAGECONFIG[libedit] = "-DLLVM_ENABLE_LIBEDIT=ON,-DLLVM_ENABLE_LIBEDIT=OFF,libedit" PACKAGECONFIG[rtti] = "-DLLVM_ENABLE_RTTI=ON,-DLLVM_ENABLE_RTTI=OFF" PACKAGECONFIG[shared-libs] = "-DLLVM_BUILD_LLVM_DYLIB=ON -DLLVM_LINK_LLVM_DYLIB=ON,-DLLVM_BUILD_LLVM_DYLIB=OFF -DLLVM_LINK_LLVM_DYLIB=OFF" @@ -124,6 +129,7 @@ SYSROOT_PREPROCESS_FUNCS:append:class-nativesdk = " llvm_sysroot_preprocess" llvm_sysroot_preprocess() { install -d ${SYSROOT_DESTDIR}${bindir_crossscripts}/ install -m 0755 ${S}/llvm/tools/llvm-config/llvm-config ${SYSROOT_DESTDIR}${bindir_crossscripts}/ + install -m 0755 ${B}/bin/* ${SYSROOT_DESTDIR}${bindir}/ } FILES:${PN}-dev += "${libdir}/llvm-config" -- 2.49.0
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#231490): https://lists.openembedded.org/g/openembedded-core/message/231490 Mute This Topic: https://lists.openembedded.org/mt/117906164/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
