diff options
author | Mark Hatle <mark.hatle@windriver.com> | 2012-10-31 14:43:48 -0500 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-11-14 23:37:34 +0000 |
commit | 4f1f6d39803c94cf9ff55f0a4616e7a1703bcef6 (patch) | |
tree | 4a41e9d45e1bfd9bdbce917f6a98c44270de39b4 /meta/recipes-devtools/python/python-smartpm | |
parent | 431352d063b353ee0e0eaa5bfe24450962d71d6b (diff) | |
download | openembedded-core-contrib-4f1f6d39803c94cf9ff55f0a4616e7a1703bcef6.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.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Diffstat (limited to 'meta/recipes-devtools/python/python-smartpm')
-rw-r--r-- | meta/recipes-devtools/python/python-smartpm/smart-missingok.patch | 43 |
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 @@ +backends/rpm: Identify recommended packages + +We identify and store recommended packages (and later throw that data away.) + +This is indended to be the starting work to add support for recommended +packages to smart. + +Upstream-status: Inappropriate [ Code isn't finished! ] + +Signed-off-by: Mark Hatle <mark.hatle@windriver.com> + +Index: smart-1.4.1/smart/backends/rpm/header.py +=================================================================== +--- smart-1.4.1.orig/smart/backends/rpm/header.py ++++ smart-1.4.1/smart/backends/rpm/header.py +@@ -292,6 +292,7 @@ class RPMHeaderLoader(Loader): + f = [0] + elif type(f) != list: + f = [f] ++ recdict = {} + reqdict = {} + for i in range(len(n)): + ni = n[i] +@@ -308,10 +309,17 @@ class RPMHeaderLoader(Loader): + # RPMSENSE_SCRIPT_PREUN | + # RPMSENSE_SCRIPT_POST | + # RPMSENSE_SCRIPT_POSTUN == 7744 +- reqdict[(f[i]&7744 and PreReq or Req, +- intern(ni), r, vi)] = True ++ if (f[i]&rpm.RPMSENSE_MISSINGOK): ++ print "Ignoring Recommend Dependency: %s" % (ni) ++ recdict[(f[i]&7744 and PreReq or Req, ++ intern(ni), r, vi)] = True ++ else: ++ reqdict[(f[i]&7744 and PreReq or Req, ++ intern(ni), r, vi)] = True ++ recargs = collapse_libc_requires(recdict.keys()) + reqargs = collapse_libc_requires(reqdict.keys()) + else: ++ recargs = None + reqargs = None + + n = h[1054] # RPMTAG_CONFLICTNAME |