[oe-commits] [openembedded-core] 34/72: package_deb.bbclass/package_ipk.bbclass: sort RPROVIDES

git at git.openembedded.org git at git.openembedded.org
Mon Jul 25 22:53:02 UTC 2016


rpurdie pushed a commit to branch master-next
in repository openembedded-core.

commit 3506172d7d9f8d92362b6ebb75582b7c3e662dae
Author: Robert Yang <liezhi.yang at windriver.com>
AuthorDate: Sun Jul 17 20:32:46 2016 -0700

    package_deb.bbclass/package_ipk.bbclass: sort RPROVIDES
    
    The dict.fromkeys() creates a dict without order, there might be a
    problem when build the same recipe again, for example:
    
    - First build of make:
      Provides: es-translation, make-locale
    - Second build of acl:
      Provides: make-locale, es-translation
    
    They are exactly the same Provides, but tools like "diff" doesn't think
    so. Sort RPROVIDES will fix the problem.
    
    Signed-off-by: Robert Yang <liezhi.yang at windriver.com>
    Signed-off-by: Ross Burton <ross.burton at intel.com>
---
 meta/classes/package_deb.bbclass | 2 ++
 meta/classes/package_ipk.bbclass | 2 ++
 2 files changed, 4 insertions(+)

diff --git a/meta/classes/package_deb.bbclass b/meta/classes/package_deb.bbclass
index 6db6933..4e5dc12 100644
--- a/meta/classes/package_deb.bbclass
+++ b/meta/classes/package_deb.bbclass
@@ -52,6 +52,7 @@ python do_package_deb () {
     import re, copy
     import textwrap
     import subprocess
+    import collections
 
     oldcwd = os.getcwd()
 
@@ -247,6 +248,7 @@ python do_package_deb () {
         debian_cmp_remap(rsuggests)
         # Deliberately drop version information here, not wanted/supported by deb
         rprovides = dict.fromkeys(bb.utils.explode_dep_versions2(localdata.getVar("RPROVIDES", True) or ""), [])
+        rprovides = collections.OrderedDict(sorted(rprovides.items(), key=lambda x: x[0]))
         debian_cmp_remap(rprovides)
         rreplaces = bb.utils.explode_dep_versions2(localdata.getVar("RREPLACES", True) or "")
         debian_cmp_remap(rreplaces)
diff --git a/meta/classes/package_ipk.bbclass b/meta/classes/package_ipk.bbclass
index 1b5f4f5..e32b9cb 100644
--- a/meta/classes/package_ipk.bbclass
+++ b/meta/classes/package_ipk.bbclass
@@ -20,6 +20,7 @@ python do_package_ipk () {
     import re, copy
     import textwrap
     import subprocess
+    import collections
 
     oldcwd = os.getcwd()
 
@@ -192,6 +193,7 @@ python do_package_ipk () {
         debian_cmp_remap(rsuggests)
         # Deliberately drop version information here, not wanted/supported by ipk
         rprovides = dict.fromkeys(bb.utils.explode_dep_versions2(localdata.getVar("RPROVIDES", True) or ""), [])
+        rprovides = collections.OrderedDict(sorted(rprovides.items(), key=lambda x: x[0]))
         debian_cmp_remap(rprovides)
         rreplaces = bb.utils.explode_dep_versions2(localdata.getVar("RREPLACES", True) or "")
         debian_cmp_remap(rreplaces)

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list