diff options
author | Andreas Oberritter <obi@opendreambox.org> | 2014-09-10 19:54:25 +0200 |
---|---|---|
committer | Andreas Oberritter <obi@opendreambox.org> | 2019-04-08 13:49:57 +0200 |
commit | 45e896bd416e533d2c05c5cfa0397954c51ab389 (patch) | |
tree | ae54fec3410adbf0e621cd6779192e6ec43b6e4f | |
parent | f2e76f93e50bfde9eae1862364e19e7ff3ae8a8d (diff) | |
download | openembedded-core-contrib-45e896bd416e533d2c05c5cfa0397954c51ab389.tar.gz |
{insane,package{,_deb,_ipk}}.bbclass: support 'Breaks' control field by introducing RBREAKS
Required by Debian Policy section 7.3.
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
-rw-r--r-- | meta/classes/insane.bbclass | 3 | ||||
-rw-r--r-- | meta/classes/package.bbclass | 3 | ||||
-rw-r--r-- | meta/classes/package_deb.bbclass | 4 | ||||
-rw-r--r-- | meta/classes/package_ipk.bbclass | 4 |
4 files changed, 12 insertions, 2 deletions
diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass index 0c11c36583..48c1e4e4c4 100644 --- a/meta/classes/insane.bbclass +++ b/meta/classes/insane.bbclass @@ -996,6 +996,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') QAPKGTEST[expanded-d] = "package_qa_check_expanded_d" def package_qa_check_expanded_d(package, d, messages): @@ -1339,7 +1340,7 @@ python () { if (d.getVar('PACKAGES') or "").split(): for dep in (d.getVar('QADEPENDS') 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) diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass index a03c05b9f7..44c459a9ac 100644 --- a/meta/classes/package.bbclass +++ b/meta/classes/package.bbclass @@ -1376,6 +1376,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') @@ -2017,7 +2018,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 SKIP_FILEDEPS PRIVATE_LIBS" +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 SKIP_FILEDEPS PRIVATE_LIBS" def gen_packagevar(d): ret = [] diff --git a/meta/classes/package_deb.bbclass b/meta/classes/package_deb.bbclass index 5475636418..eb879e48a6 100644 --- a/meta/classes/package_deb.bbclass +++ b/meta/classes/package_deb.bbclass @@ -243,6 +243,8 @@ python do_package_deb () { debian_cmp_remap(rreplaces) rconflicts = bb.utils.explode_dep_versions2(localdata.getVar("RCONFLICTS") 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)) if rsuggests: @@ -255,6 +257,8 @@ python do_package_deb () { 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.close() for script in ["preinst", "postinst", "prerm", "postrm"]: diff --git a/meta/classes/package_ipk.bbclass b/meta/classes/package_ipk.bbclass index a1e51ee690..7d3a6a4e9e 100644 --- a/meta/classes/package_ipk.bbclass +++ b/meta/classes/package_ipk.bbclass @@ -193,6 +193,8 @@ python do_package_ipk () { debian_cmp_remap(rreplaces) rconflicts = bb.utils.explode_dep_versions2(localdata.getVar("RCONFLICTS") 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)) @@ -206,6 +208,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() |