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 | |
parent | 431352d063b353ee0e0eaa5bfe24450962d71d6b (diff) | |
download | openembedded-core-4f1f6d39803c94cf9ff55f0a4616e7a1703bcef6.tar.gz openembedded-core-4f1f6d39803c94cf9ff55f0a4616e7a1703bcef6.tar.bz2 openembedded-core-4f1f6d39803c94cf9ff55f0a4616e7a1703bcef6.zip |
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')
-rw-r--r-- | meta/recipes-devtools/python/python-smartpm/smart-missingok.patch | 43 | ||||
-rw-r--r-- | meta/recipes-devtools/python/python-smartpm_1.4.1.bb | 3 |
2 files changed, 45 insertions, 1 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 diff --git a/meta/recipes-devtools/python/python-smartpm_1.4.1.bb b/meta/recipes-devtools/python/python-smartpm_1.4.1.bb index bc0c1f9941..4314564cd8 100644 --- a/meta/recipes-devtools/python/python-smartpm_1.4.1.bb +++ b/meta/recipes-devtools/python/python-smartpm_1.4.1.bb @@ -11,13 +11,14 @@ LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://LICENSE;md5=393a5ca445f6965873eca0259a17f833" DEPENDS = "python rpm" -PR = "r0" +PR = "r1" SRCNAME = "smart" SRC_URI = "\ http://launchpad.net/smart/trunk/${PV}/+download/${SRCNAME}-${PV}.tar.bz2 \ file://smartpm-rpm5-nodig.patch \ file://smart-rpm-root.patch \ + file://smart-missingok.patch \ " SRC_URI[md5sum] = "573ef32ba177a6b3c4bf7ef04873fcb6" |