diff options
author | BINDU <bindudaniel1996@gmail.com> | 2024-07-09 12:34:56 +0530 |
---|---|---|
committer | Armin Kuster <akuster808@gmail.com> | 2024-07-09 08:18:24 -0400 |
commit | 4f9606591a48a82fd691366ce66aa30a2a139b2e (patch) | |
tree | 15bc772e3d28f18e72c2f4541e8c7971a333f99d | |
parent | 85e08ec2565c53e6772551b9231479f417d4dabf (diff) | |
download | meta-openembedded-4f9606591a48a82fd691366ce66aa30a2a139b2e.tar.gz |
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 <Ivan.Stepic@bmw.de>
Signed-off-by: Bhabu Bindu <bindudaniel1996@gmail.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
(cherry picked from commit b97dbaac6629e22138f71ae19eb421d041447619)
Signed-off-by: Akash Hadke <akash.hadke27@gmail.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
-rw-r--r-- | meta-oe/recipes-devtools/flatbuffers/flatbuffers.bb | 5 |
1 files changed, 5 insertions, 0 deletions
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 | |||
23 | 23 | ||
24 | inherit cmake python3native | 24 | inherit cmake python3native |
25 | 25 | ||
26 | rm_flatc_cmaketarget_for_target() { | ||
27 | rm -f "${SYSROOT_DESTDIR}/${libdir}/cmake/flatbuffers/FlatcTargets.cmake" | ||
28 | } | ||
29 | SYSROOT_PREPROCESS_FUNCS:class-target += "rm_flatc_cmaketarget_for_target" | ||
30 | |||
26 | FILES:${PN}-compiler = "${bindir}" | 31 | FILES:${PN}-compiler = "${bindir}" |
27 | 32 | ||
28 | BBCLASSEXTEND = "native nativesdk" | 33 | BBCLASSEXTEND = "native nativesdk" |