]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
zlib: Enable PIE for native builds
authorYash Shinde <Yash.Shinde@windriver.com>
Thu, 29 Aug 2024 08:33:56 +0000 (01:33 -0700)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 29 Aug 2024 20:57:36 +0000 (21:57 +0100)
The zlib crate in rust uses libz.a which comes from the zlib-native build.
Some distros like alma9, fedora etc. do not have PIE enabled by default for system compiler.

This leads to target-rust-ccld linking error for cargo-native as (line no 22936):
error: linking with `/home/pokybuild/yocto-worker/qemuarm64/build/build/tmp/work/x86_64-linux/cargo-native/1.79.0/wrapper/target-rust-ccld` failed: exit status: 1

https://autobuilder.yoctoproject.org/typhoon/#/builders/42/builds/9385/steps/13/logs/stdio

Hence, enable PIE option to CFLAGS for native builds.

Signed-off-by: Yash Shinde <Yash.Shinde@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-core/zlib/zlib_1.3.1.bb

index 486431dffff8983f1925bdfde88c27d9d2b349e5..e62c50c5df737d7356c1ef7361be8f48042efa7f 100644 (file)
@@ -19,7 +19,7 @@ SRC_URI[sha256sum] = "9a93b2b7dfdac77ceba5a558a580e74667dd6fede4585b91eefb60f03b
 # to PREMIRRORS so it is also searched automatically.
 PREMIRRORS:append = " https://zlib.net/ https://zlib.net/fossils/"
 
-CFLAGS += "-D_REENTRANT"
+CFLAGS += "-D_REENTRANT -fPIE"
 
 RDEPENDS:${PN}-ptest += "make"