package_rpm.bbclass: make architecture-independent .rpm packages "noarch" instead of "all"

Too many places in dnf/rpm4 stack make that assumption; let's not fight against it.

(From OE-Core rev: 341810aff923ace6b1cc1e15e19383c4f8773b51)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Alexander Kanavin 2017-01-09 16:37:28 +02:00 committed by Richard Purdie
parent f033bba14a
commit cf7e0baffa
2 changed files with 4 additions and 2 deletions

View File

@ -684,7 +684,9 @@ python do_package_rpm () {
rpmbuild = d.getVar('RPMBUILD')
targetsys = d.getVar('TARGET_SYS')
targetvendor = d.getVar('HOST_VENDOR')
package_arch = (d.getVar('PACKAGE_ARCH') or "").replace("-", "_")
# Too many places in dnf stack assume that arch-independent packages are "noarch".
# Let's not fight against this.
package_arch = (d.getVar('PACKAGE_ARCH') or "").replace("-", "_").replace("all", "noarch")
sdkpkgsuffix = (d.getVar('SDKPKGSUFFIX') or "nativesdk").replace("-", "_")
if package_arch not in "all any noarch".split() and not package_arch.endswith(sdkpkgsuffix):
ml_prefix = (d.getVar('MLPREFIX') or "").replace("-", "_")

View File

@ -25,7 +25,7 @@ PV[vardepvalue] = "${PV}"
SSTATE_EXTRAPATH[vardepvalue] = ""
# For multilib rpm the allarch packagegroup files can overwrite (in theory they're identical)
SSTATE_DUPWHITELIST = "${DEPLOY_DIR_IMAGE}/ ${DEPLOY_DIR}/licenses/ ${DEPLOY_DIR_RPM}/all/"
SSTATE_DUPWHITELIST = "${DEPLOY_DIR_IMAGE}/ ${DEPLOY_DIR}/licenses/ ${DEPLOY_DIR_RPM}/noarch/"
# Avoid docbook/sgml catalog warnings for now
SSTATE_DUPWHITELIST += "${STAGING_ETCDIR_NATIVE}/sgml ${STAGING_DATADIR_NATIVE}/sgml"
# Archive the sources for many architectures in one deploy folder