native.bbclass: Ensure native recipes have a deterministic baselib value
PATCH 1/1 native.bbclass: Ensure native recipes have a deterministic baselib value
Changes to baselib by specific machine configuration were resulting in sstate cache invalidation, particularly in multilib configurations.
This patch ensures this doesn't happen and native sstate cache files are reusable.
---
meta/classes/native.bbclass +2 -0
@@ -69,6 +69,8 @@ exec_prefix = "${STAGING_DIR_NATIVE}${prefix_native}" libdir = "${STAGING_DIR_NATIVE}${libdir_native}" +baselib = "lib" + # Libtool's default paths are correct for the native machine lt_cv_sys_lib_dlsearch_path_spec[unexport] = "1"
Quoted 5 lines · Richard Purdie
Changes to baselib by specific machine configuration were resulting in sstate cache invalidation, particularly in multilib configurations.
This patch ensures this doesn't happen and native sstate cache files are reusable.
Likely throwing in a can of worms here, but for our existing (non-OE based) work, we generally change the baselib to "lib64" on 64-bit machines. Without patching native.bbclass, is it possible to do that?
We do this because we ship both 32-bit and 64-bit host tooling for a variety of host distributions, I expect we'll have to continue doing that as we transition to an OE-based system.
Quoted 22 lines
Signed-off-by Richard Purdie <[email protected]>---
meta/classes/native.bbclass +2
-0@@ -69,6 +69,8 @@ exec_prefix = "${STAGING_DIR_NATIVE}${prefix_native}" libdir = "${STAGING_DIR_NATIVE}${libdir_native}" +baselib = "lib" + # Libtool's default paths are correct for the native machine lt_cv_sys_lib_dlsearch_path_spec[unexport] = "1"_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
Quoted 10 lines · Mark Hatle
Quoted 5 lines · Richard Purdie
Changes to baselib by specific machine configuration were resulting in sstate cache invalidation, particularly in multilib configurations.
This patch ensures this doesn't happen and native sstate cache files are reusable.
Likely throwing in a can of worms here, but for our existing (non-OE based) work, we generally change the baselib to "lib64" on 64-bit machines. Without patching native.bbclass, is it possible to do that?
Yes, you could set this based on the build system architecture no problem at all.
The reason for this change is to have a single value for native packages which doesn't change based on MACHINE. That doesn't stop you changing it based on something specific the native binaries themselves.
The native sysroots are different depending on the build system architecture anyway so this actually might be a non-issue for you anyway.
Cheers,
Richard
Quoted 7 lines · Richard Purdie
Changes to baselib by specific machine configuration were resulting in sstate cache invalidation, particularly in multilib configurations.
This patch ensures this doesn't happen and native sstate cache files are reusable.
Signed-off-by Richard Purdie <[email protected]>
This fixes native sstate-cache (re)usage when enabling multilib.
-M