summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2011-08-03 16:32:03 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-08-03 17:46:46 +0100
commitfb98479c4787a354418c20394f8c68d69bd53df4 (patch)
treedd8811d24b415661f304b53778256b3ddc0edfa2 /meta
parent23774530c1c2df8c306807d20baaea693250ef16 (diff)
downloadast2050-yocto-poky-fb98479c4787a354418c20394f8c68d69bd53df4.zip
ast2050-yocto-poky-fb98479c4787a354418c20394f8c68d69bd53df4.tar.gz
package_rpm: Ensure alternatives links are reflected in rpm package dependencies
Currently, if a file is provided as an alternative link within the package, rpm doesn't see the dependency. This works out badly for dependencies such as /bin/sh which scripts might require. Since rpm detects and adds these dependencies we do need to ensure the dependency information in the packages is correct. This patch does so for the rpm backend ensuring internal consistency whilst the approach for addressing this problem in the other package backends is considered. (From OE-Core rev: 102fc29b9c9eae8435b29edb41b5090ace2373c5) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/classes/package_rpm.bbclass4
1 files changed, 4 insertions, 0 deletions
diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass
index abedc68..f123229 100644
--- a/meta/classes/package_rpm.bbclass
+++ b/meta/classes/package_rpm.bbclass
@@ -501,6 +501,10 @@ python write_specfile () {
splitrconflicts = bb.data.getVar('RCONFLICTS', localdata, True) or ""
splitrobsoletes = []
+ # For now we need to manually supplement RPROVIDES with any update-alternatives links
+ if pkg == d.getVar("PN", True):
+ splitrprovides = splitrprovides + " " + (d.getVar('ALTERNATIVE_LINK', True) or '') + " " + (d.getVar('ALTERNATIVE_LINKS', True) or '')
+
# Gather special src/first package data
if srcname == splitname:
srcrdepends = splitrdepends
OpenPOWER on IntegriCloud