]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
{insane,package{,_deb,_ipk}}.bbclass: support 'Breaks' control field by introducing...
authorAndreas Oberritter <obi@opendreambox.org>
Wed, 10 Sep 2014 17:54:25 +0000 (19:54 +0200)
committerAndreas Oberritter <obi@opendreambox.org>
Tue, 17 Oct 2017 02:38:26 +0000 (04:38 +0200)
Required by Debian Policy section 7.3.

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
meta/classes/insane.bbclass
meta/classes/package.bbclass
meta/classes/package_deb.bbclass
meta/classes/package_ipk.bbclass

index a1d23d055bdd68810f7f2f902c9091d86323fc72..c568a3b25a28e6ff390acda008cc5f1e470a741c 100644 (file)
@@ -955,6 +955,7 @@ def package_qa_check_deps(pkg, pkgdest, skip, d):
     check_valid_deps('RPROVIDES')
     check_valid_deps('RREPLACES')
     check_valid_deps('RCONFLICTS')
+    check_valid_deps('RBREAKS')
 
 QAPATHTEST[expanded-d] = "package_qa_check_expanded_d"
 def package_qa_check_expanded_d(path,name,d,elf,messages):
@@ -1301,7 +1302,7 @@ python () {
     if (d.getVar('PACKAGES', True) or "").split():
         for dep in (d.getVar('QADEPENDS', True) or "").split():
             d.appendVarFlag('do_package_qa', 'depends', " %s:do_populate_sysroot" % dep)
-        for var in 'RDEPENDS', 'RRECOMMENDS', 'RSUGGESTS', 'RCONFLICTS', 'RPROVIDES', 'RREPLACES', 'FILES', 'pkg_preinst', 'pkg_postinst', 'pkg_prerm', 'pkg_postrm', 'ALLOW_EMPTY':
+        for var in 'RDEPENDS', 'RRECOMMENDS', 'RSUGGESTS', 'RCONFLICTS', 'RPROVIDES', 'RREPLACES', 'RBREAKS', 'FILES', 'pkg_preinst', 'pkg_postinst', 'pkg_prerm', 'pkg_postrm', 'ALLOW_EMPTY':
             if d.getVar(var, False):
                 issues.append(var)
 
index ffd4eff7b1403deab895e5a09edf01878e682c4e..50774a96aeaeef6441ab7e684c108ba812231bce 100644 (file)
@@ -1342,6 +1342,7 @@ python emit_pkgdata() {
         write_if_exists(sf, pkg, 'RSUGGESTS')
         write_if_exists(sf, pkg, 'RREPLACES')
         write_if_exists(sf, pkg, 'RCONFLICTS')
+        write_if_exists(sf, pkg, 'RBREAKS')
         write_if_exists(sf, pkg, 'SECTION')
         write_if_exists(sf, pkg, 'PKG')
         write_if_exists(sf, pkg, 'ALLOW_EMPTY')
@@ -1958,7 +1959,7 @@ python package_depchains() {
 
 # Since bitbake can't determine which variables are accessed during package
 # iteration, we need to list them here:
-PACKAGEVARS = "FILES RDEPENDS RRECOMMENDS SUMMARY DESCRIPTION RSUGGESTS RPROVIDES RCONFLICTS PKG ALLOW_EMPTY pkg_postinst pkg_postrm INITSCRIPT_NAME INITSCRIPT_PARAMS DEBIAN_NOAUTONAME ALTERNATIVE PKGE PKGV PKGR USERADD_PARAM GROUPADD_PARAM CONFFILES SYSTEMD_SERVICE LICENSE SECTION pkg_preinst pkg_prerm RREPLACES GROUPMEMS_PARAM SYSTEMD_AUTO_ENABLE"
+PACKAGEVARS = "FILES RDEPENDS RRECOMMENDS SUMMARY DESCRIPTION RSUGGESTS RPROVIDES RCONFLICTS RBREAKS PKG ALLOW_EMPTY pkg_postinst pkg_postrm INITSCRIPT_NAME INITSCRIPT_PARAMS DEBIAN_NOAUTONAME ALTERNATIVE PKGE PKGV PKGR USERADD_PARAM GROUPADD_PARAM CONFFILES SYSTEMD_SERVICE LICENSE SECTION pkg_preinst pkg_prerm RREPLACES GROUPMEMS_PARAM SYSTEMD_AUTO_ENABLE"
 
 def gen_packagevar(d):
     ret = []
@@ -2128,4 +2129,3 @@ def mapping_rename_hook(d):
     runtime_mapping_rename("RDEPENDS", pkg, d)
     runtime_mapping_rename("RRECOMMENDS", pkg, d)
     runtime_mapping_rename("RSUGGESTS", pkg, d)
-
index e1d05a74c21540369d2504513388763a7d7d8e0e..6060cf738a29aa1d2ac79552fd04a9be2d269fb4 100644 (file)
@@ -254,6 +254,8 @@ python do_package_deb () {
         debian_cmp_remap(rreplaces)
         rconflicts = bb.utils.explode_dep_versions2(localdata.getVar("RCONFLICTS", True) or "")
         debian_cmp_remap(rconflicts)
+        rbreaks = bb.utils.explode_dep_versions2(localdata.getVar("RBREAKS", True) or "")
+        debian_cmp_remap(rbreaks)
         if rdepends:
             ctrlfile.write("Depends: %s\n" % unicode(bb.utils.join_deps(rdepends)))
         if rsuggests:
@@ -266,6 +268,8 @@ python do_package_deb () {
             ctrlfile.write("Replaces: %s\n" % unicode(bb.utils.join_deps(rreplaces)))
         if rconflicts:
             ctrlfile.write("Conflicts: %s\n" % unicode(bb.utils.join_deps(rconflicts)))
+        if rbreaks:
+            ctrlfile.write("Breaks: %s\n" % unicode(bb.utils.join_deps(rbreaks)))
         ctrlfile.close()
 
         for script in ["preinst", "postinst", "prerm", "postrm"]:
index 5dcbbcdac6b5cda0fec7cb8e121894484955433a..748f5a69805b30e145aa73a74077da055c4efbb8 100644 (file)
@@ -197,6 +197,8 @@ python do_package_ipk () {
         debian_cmp_remap(rreplaces)
         rconflicts = bb.utils.explode_dep_versions2(localdata.getVar("RCONFLICTS", True) or "")
         debian_cmp_remap(rconflicts)
+        rbreaks = bb.utils.explode_dep_versions2(localdata.getVar("RBREAKS", True) or "")
+        debian_cmp_remap(rbreaks)
 
         if rdepends:
             ctrlfile.write("Depends: %s\n" % bb.utils.join_deps(rdepends))
@@ -210,6 +212,8 @@ python do_package_ipk () {
             ctrlfile.write("Replaces: %s\n" % bb.utils.join_deps(rreplaces))
         if rconflicts:
             ctrlfile.write("Conflicts: %s\n" % bb.utils.join_deps(rconflicts))
+        if rbreaks:
+            ctrlfile.write("Breaks: %s\n" % bb.utils.join_deps(rbreaks))
         ctrlfile.write("Source: %s\n" % recipesource)
         ctrlfile.close()