summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/python/python-smartpm
diff options
context:
space:
mode:
authorMark Hatle <mark.hatle@windriver.com>2012-10-31 14:43:48 -0500
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-11-18 16:42:03 +0000
commita0d1ac7999cc914e170f067428925e1056f5deb7 (patch)
tree1ccaf9bff407193d1eea7aae3926c21426dc4f4c /meta/recipes-devtools/python/python-smartpm
parent11af6b042cee91c52e13df6f76628fdacc5c692a (diff)
downloadpoky-a0d1ac7999cc914e170f067428925e1056f5deb7.tar.gz
python-smartpm: Add basic knowledge of RPMSENSE_MISSINGOK
Currently smart does not support recommend dependencies. Add the first set of 'support' for RPMSENSE_MISSINGOK (the flag that makes something a recommend). This initial support ends up ignoring the recommendation, but is written in a way that it will be the basis of eventual support. (From OE-Core rev: 4f1f6d39803c94cf9ff55f0a4616e7a1703bcef6) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/python/python-smartpm')
-rw-r--r--meta/recipes-devtools/python/python-smartpm/smart-missingok.patch43
1 files changed, 43 insertions, 0 deletions
diff --git a/meta/recipes-devtools/python/python-smartpm/smart-missingok.patch b/meta/recipes-devtools/python/python-smartpm/smart-missingok.patch
new file mode 100644
index 0000000000..7e138696b8
--- /dev/null
+++ b/meta/recipes-devtools/python/python-smartpm/smart-missingok.patch
@@ -0,0 +1,43 @@
1backends/rpm: Identify recommended packages
2
3We identify and store recommended packages (and later throw that data away.)
4
5This is indended to be the starting work to add support for recommended
6packages to smart.
7
8Upstream-status: Inappropriate [ Code isn't finished! ]
9
10Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
11
12Index: smart-1.4.1/smart/backends/rpm/header.py
13===================================================================
14--- smart-1.4.1.orig/smart/backends/rpm/header.py
15+++ smart-1.4.1/smart/backends/rpm/header.py
16@@ -292,6 +292,7 @@ class RPMHeaderLoader(Loader):
17 f = [0]
18 elif type(f) != list:
19 f = [f]
20+ recdict = {}
21 reqdict = {}
22 for i in range(len(n)):
23 ni = n[i]
24@@ -308,10 +309,17 @@ class RPMHeaderLoader(Loader):
25 # RPMSENSE_SCRIPT_PREUN |
26 # RPMSENSE_SCRIPT_POST |
27 # RPMSENSE_SCRIPT_POSTUN == 7744
28- reqdict[(f[i]&7744 and PreReq or Req,
29- intern(ni), r, vi)] = True
30+ if (f[i]&rpm.RPMSENSE_MISSINGOK):
31+ print "Ignoring Recommend Dependency: %s" % (ni)
32+ recdict[(f[i]&7744 and PreReq or Req,
33+ intern(ni), r, vi)] = True
34+ else:
35+ reqdict[(f[i]&7744 and PreReq or Req,
36+ intern(ni), r, vi)] = True
37+ recargs = collapse_libc_requires(recdict.keys())
38 reqargs = collapse_libc_requires(reqdict.keys())
39 else:
40+ recargs = None
41 reqargs = None
42
43 n = h[1054] # RPMTAG_CONFLICTNAME