mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-06-11 04:49:58 +00:00
protobuf: stage protoc binary to sysroot
If protoc is enabled for the build, recipes using protobuf will
fail when protoc is not available in the recipe sysroot:
| The imported target "protobuf::protoc" references the file
|
| ".../recipe-sysroot/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/bin/protoc-3.21.5.0"
|
| but this file does not exist. Possible reasons include:
|
| * The file was deleted, renamed, or moved to another location.
|
| * An install or uninstall procedure did not complete successfully.
|
| * The installation package was faulty and contained
|
| ".../recipe-sysroot/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/lib/cmake/protobuf/protobuf-targets.cmake"
|
| but not all the files it references.
Use SYSROOT_DIRS to stage the binary to sysroot so it's always
available for other recipes.
Signed-off-by: Samuli Piippo <samuli.piippo@qt.io>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
(cherry picked from commit a0557fe543)
Signed-off-by: Armin Kuster <akuster808@gmail.com>
This commit is contained in:
committed by
Armin Kuster
parent
a1d0117b7e
commit
08e40ab325
@@ -92,6 +92,9 @@ PACKAGE_BEFORE_PN = "${PN}-compiler ${PN}-lite"
|
||||
FILES:${PN}-compiler = "${bindir} ${libdir}/libprotoc${SOLIBS}"
|
||||
FILES:${PN}-lite = "${libdir}/libprotobuf-lite${SOLIBS}"
|
||||
|
||||
# CMake requires binaries to exist in sysroot, even if they have wrong architecture.
|
||||
SYSROOT_DIRS += "${bindir}"
|
||||
|
||||
RDEPENDS:${PN}-compiler = "${PN}"
|
||||
RDEPENDS:${PN}-dev += "${PN}-compiler"
|
||||
RDEPENDS:${PN}-ptest = "bash ${@bb.utils.contains('PACKAGECONFIG', 'python', 'python3-protobuf', '', d)}"
|
||||
|
||||
Reference in New Issue
Block a user