This replace() hack was added to fix Yocto bug #946 [1] with commit id 69b3a11. It is time to fix this properly. It should not be an issue anymore with libzypp after 4.5 years, but if the initial bug still exists, then a more intelligent solution should be used to fix it.
If a package build fails because it expects _ instead of - inside MACHINE_ARCH, then the problem is with the package build, not with the global variable used by all machines. *IF* the offending package build cannot be easily fixed, then there are better workarounds than globally replacing. For example overwriting MACHINE_ARCH in the <machine-name>.conf which is causing the offending package to fail (thus not screwing all), or using conditional overrides MACHINE_ARCH_qemux86-64 = "qemux86_64" Mangling the variable globally for all machines causes other components that expect the sane MACHINE_ARCH value to fail. [1] https://bugzilla.yoctoproject.org/show_bug.cgi?id=946 Signed-off-by: Ioan-Adrian Ratiu <adrian.ra...@ni.com> --- meta/conf/bitbake.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf index 730ab80..19e7ddf 100644 --- a/meta/conf/bitbake.conf +++ b/meta/conf/bitbake.conf @@ -136,7 +136,7 @@ SDK_AS_ARCH = "${BUILD_AS_ARCH}" TUNE_PKGARCH ??= "" PACKAGE_ARCH ??= "${TUNE_PKGARCH}" -MACHINE_ARCH = "${@[d.getVar('TUNE_PKGARCH', True), d.getVar('MACHINE', True)][bool(d.getVar('MACHINE', True))].replace('-', '_')}" +MACHINE_ARCH = "${@[d.getVar('TUNE_PKGARCH', True), d.getVar('MACHINE', True)][bool(d.getVar('MACHINE', True))]}" PACKAGE_EXTRA_ARCHS ??= "${PACKAGE_EXTRA_ARCHS_tune-${DEFAULTTUNE}}" PACKAGE_ARCHS = "all any noarch ${PACKAGE_EXTRA_ARCHS} ${MACHINE_ARCH}" # MACHINE_ARCH shouldn't be included here as a variable dependency -- 2.1.4 -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core