meta-environment: Fix config-site with a multilib config
PATCH 1/1 meta-environment: Fix config-site with a multilib config
[YOCTO #6951]
The TOOLCHAIN_CONFIGSITE_SYSROOTCACHE value was defaulting to the nativesdk path and not the associated target path. Set the value in toolchain-scripts to the target path.
Be sure to set the MLPREFIX within the meta-environment script as multilibs are processed.
Update the config_site file name to use -BPN- not PN. Otherwise the environment processing can't find the correct filename.
Signed-off-by Mark Hatle <[email protected]>
--- meta/classes/siteconfig.bbclass | 8 ++++---- meta/classes/toolchain-scripts.bbclass | 4 +++- meta/recipes-core/meta/meta-environment.bb | 1 + 3 files changed, 8 insertions(+), 5 deletions(-)
meta/classes/siteconfig.bbclass +4 -4
@@ -18,13 +18,13 @@ siteconfig_do_siteconfig_gencache () { >${WORKDIR}/site_config_${MACHINE}/configure.ac cd ${WORKDIR}/site_config_${MACHINE} autoconf - rm -f ${PN}_cache - CONFIG_SITE="" ${EXTRASITECONFIG} ./configure ${CONFIGUREOPTS} --cache-file ${PN}_cache + rm -f ${BPN}_cache + CONFIG_SITE="" ${EXTRASITECONFIG} ./configure ${CONFIGUREOPTS} --cache-file ${BPN}_cache sed -n -e "/ac_cv_c_bigendian/p" -e "/ac_cv_sizeof_/p" \ -e "/ac_cv_type_/p" -e "/ac_cv_header_/p" -e "/ac_cv_func_/p" \ - < ${PN}_cache > ${PN}_config + < ${BPN}_cache > ${BPN}_config mkdir -p ${SYSROOT_DESTDIR}${datadir}/${TARGET_SYS}_config_site.d - cp ${PN}_config ${SYSROOT_DESTDIR}${datadir}/${TARGET_SYS}_config_site.d + cp ${BPN}_config ${SYSROOT_DESTDIR}${datadir}/${TARGET_SYS}_config_site.d }
meta/classes/toolchain-scripts.bbclass +3 -1
@@ -91,7 +91,7 @@ EOF #we get the cached site config in the runtime TOOLCHAIN_CONFIGSITE_NOCACHE = "${@siteinfo_get_files(d, True)}" -TOOLCHAIN_CONFIGSITE_SYSROOTCACHE = "${STAGING_DATADIR}/${TARGET_SYS}_config_site.d" +TOOLCHAIN_CONFIGSITE_SYSROOTCACHE = "${STAGING_DIR}/${MLPREFIX}${MACHINE}/${target_datadir}/${TARGET_SYS}_config_site.d" TOOLCHAIN_NEED_CONFIGSITE_CACHE = "${TCLIBC} ncurses" #This function create a site config file
@@ -131,5 +131,7 @@ python __anonymous () { deps = "" for dep in (d.getVar('TOOLCHAIN_NEED_CONFIGSITE_CACHE', True) or "").split(): deps += " %s:do_populate_sysroot" % dep + for variant in (d.getVar('MULTILIB_VARIANTS', True) or "").split(): + deps += " %s-%s:do_populate_sysroot" % (variant, dep) d.appendVarFlag('do_configure', 'depends', deps) }
meta/recipes-core/meta/meta-environment.bb +1 -0
@@ -42,6 +42,7 @@ python do_generate_content() { # Load overrides from 'd' to avoid having to reset the value... overrides = d.getVar("OVERRIDES", False) + ":virtclass-multilib-" + item localdata.setVar("OVERRIDES", overrides) + localdata.setVar("MLPREFIX", item + "-") bb.data.update_data(localdata) bb.build.exec_func("create_sdk_files", localdata) }
Signature · 1 line
1.9.3