summaryrefslogtreecommitdiffstats
path: root/meta/classes
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2017-03-13 22:46:18 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-03-14 14:42:18 +0000
commitc90246caeb7bcde0f7c60dc748dbb0207eedfb70 (patch)
tree032fa11ef5d3f1f8a44be4052a7897987db24e31 /meta/classes
parent4c09a95767d278f969d6f725c892547935e2fd58 (diff)
downloadpoky-c90246caeb7bcde0f7c60dc748dbb0207eedfb70.tar.gz
package: Fix various rpmdeps relocation issues
There are several issues with rpmdeps after the rpm v5 -> v4 transition: * _rpmfc_magic_path is an invalid option for rpm4 * --rpmpopt is an invalid option for rpm4 * we need to use the path to rpmrc since otherwise it poitns at the original build path * we need to set MAGIC in the environment so libmagic can find its files. This patch addresses those and ensures rpmdeps works in relocated builds from sstate (or with rm_work). (From OE-Core rev: 806e37264d7102ae982867350ad8363ed3e5f475) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes')
-rw-r--r--meta/classes/package.bbclass5
1 files changed, 3 insertions, 2 deletions
diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass
index 48fef97251..871263f086 100644
--- a/meta/classes/package.bbclass
+++ b/meta/classes/package.bbclass
@@ -1433,7 +1433,7 @@ if [ x"$D" = "x" ]; then
1433fi 1433fi
1434} 1434}
1435 1435
1436RPMDEPS = "${STAGING_LIBDIR_NATIVE}/rpm/rpmdeps --macros ${STAGING_LIBDIR_NATIVE}/rpm/macros --define '_rpmfc_magic_path ${STAGING_DIR_NATIVE}${datadir_native}/misc/magic.mgc' --rpmpopt ${STAGING_LIBDIR_NATIVE}/rpm/rpmpopt" 1436RPMDEPS = "${STAGING_LIBDIR_NATIVE}/rpm/rpmdeps --rcfile ${STAGING_LIBDIR_NATIVE}/rpm/rpmrc --macros ${STAGING_LIBDIR_NATIVE}/rpm/macros --define '_rpmconfigdir ${STAGING_LIBDIR_NATIVE}/rpm/'"
1437 1437
1438# Collect perfile run-time dependency metadata 1438# Collect perfile run-time dependency metadata
1439# Output: 1439# Output:
@@ -1450,6 +1450,7 @@ python package_do_filedeps() {
1450 pkgdest = d.getVar('PKGDEST') 1450 pkgdest = d.getVar('PKGDEST')
1451 packages = d.getVar('PACKAGES') 1451 packages = d.getVar('PACKAGES')
1452 rpmdeps = d.getVar('RPMDEPS') 1452 rpmdeps = d.getVar('RPMDEPS')
1453 magic = d.expand("${STAGING_DIR_NATIVE}${datadir_native}/misc/magic.mgc")
1453 1454
1454 def chunks(files, n): 1455 def chunks(files, n):
1455 return [files[i:i+n] for i in range(0, len(files), n)] 1456 return [files[i:i+n] for i in range(0, len(files), n)]
@@ -1461,7 +1462,7 @@ python package_do_filedeps() {
1461 if pkg.endswith('-dbg') or pkg.endswith('-doc') or pkg.find('-locale-') != -1 or pkg.find('-localedata-') != -1 or pkg.find('-gconv-') != -1 or pkg.find('-charmap-') != -1 or pkg.startswith('kernel-module-'): 1462 if pkg.endswith('-dbg') or pkg.endswith('-doc') or pkg.find('-locale-') != -1 or pkg.find('-localedata-') != -1 or pkg.find('-gconv-') != -1 or pkg.find('-charmap-') != -1 or pkg.startswith('kernel-module-'):
1462 continue 1463 continue
1463 for files in chunks(pkgfiles[pkg], 100): 1464 for files in chunks(pkgfiles[pkg], 100):
1464 pkglist.append((pkg, files, rpmdeps, pkgdest)) 1465 pkglist.append((pkg, files, rpmdeps, pkgdest, magic))
1465 1466
1466 processed = oe.utils.multiprocess_exec( pkglist, oe.package.filedeprunner) 1467 processed = oe.utils.multiprocess_exec( pkglist, oe.package.filedeprunner)
1467 1468