From 4f9606591a48a82fd691366ce66aa30a2a139b2e Mon Sep 17 00:00:00 2001 From: BINDU Date: Tue, 9 Jul 2024 12:34:56 +0530 Subject: flatbuffers: adapt for cross-compilation environments Flatbuffers contains a library and a schema compiler. The package contains cmake files to discover the libraries and the compiler tool. Currently, all of these cmake files are installed into the target sysroot. However, the compiler utility isn't installed into the sysroot (as it is not runnable on the build machine). When an application that depends on flatbuffers gets built, it uses flatbuffers' exported cmake targets to configure the project. One of the exported targets is FlatcTarget.cmake which expects to see flatc binary in /usr/bin of the sysroot. Since binaries for target don't end up in target sysroot, cmake configuration fails. This patch addresses this problem of flatbuffers' build infrastructure in cross-compiling environments. By removing FlatcTarget.cmake for target builds from the sysroot we essentially skip this step of flatbuffers' configuration. Signed-off-by: Ivan Stepic Signed-off-by: Bhabu Bindu Signed-off-by: Armin Kuster (cherry picked from commit b97dbaac6629e22138f71ae19eb421d041447619) Signed-off-by: Akash Hadke Signed-off-by: Armin Kuster --- meta-oe/recipes-devtools/flatbuffers/flatbuffers.bb | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/meta-oe/recipes-devtools/flatbuffers/flatbuffers.bb b/meta-oe/recipes-devtools/flatbuffers/flatbuffers.bb index 183554e2c8..3103fd0091 100644 --- a/meta-oe/recipes-devtools/flatbuffers/flatbuffers.bb +++ b/meta-oe/recipes-devtools/flatbuffers/flatbuffers.bb @@ -23,6 +23,11 @@ EXTRA_OECMAKE:append:class-target = " -DFLATBUFFERS_FLATC_EXECUTABLE=${STAGING_B inherit cmake python3native +rm_flatc_cmaketarget_for_target() { + rm -f "${SYSROOT_DESTDIR}/${libdir}/cmake/flatbuffers/FlatcTargets.cmake" +} +SYSROOT_PREPROCESS_FUNCS:class-target += "rm_flatc_cmaketarget_for_target" + FILES:${PN}-compiler = "${bindir}" BBCLASSEXTEND = "native nativesdk" -- cgit v1.2.3-54-g00ecf