]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
classes: Move package RDEPENDS processing out of debian.bbclass
authorSergei Zhmylev <s.zhmylev@yadro.com>
Fri, 3 Nov 2023 14:29:57 +0000 (17:29 +0300)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 6 Nov 2023 16:47:02 +0000 (16:47 +0000)
INHERIT_DIRSTO by default includes debian.bbclass which in turn properly
establishes dependencies between package management tasks and build
process. Debian class also unconditionally renames several packages in a
Debian way. In order to allow disabling of such renaming rules, the logic
of RDEPENDS handling is moved to a package.bbclass.
This commit also solves the SDK building issue without debian.bbclass.

Signed-off-by: Sergei Zhmylev <s.zhmylev@yadro.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
meta/classes-global/debian.bbclass
meta/classes-global/package.bbclass

index 7135d74837cb02ee022de44eff74b4c6ffa75f57..c34e04112c589bb846f4a6c63ec3baad095c2f21 100644 (file)
 #
 # Better expressed as ensure all RDEPENDS package before we package
 # This means we can't have circular RDEPENDS/RRECOMMENDS
+#
+# Logic of processing dependencies moved to a package.bbclass to
+# allow removing inheritance on debian.bbclass
 
 AUTO_LIBNAME_PKGS = "${PACKAGES}"
 
 inherit package
 
-DEBIANRDEP = "do_packagedata"
-do_package_write_ipk[deptask] = "${DEBIANRDEP}"
-do_package_write_deb[deptask] = "${DEBIANRDEP}"
-do_package_write_tar[deptask] = "${DEBIANRDEP}"
-do_package_write_rpm[deptask] = "${DEBIANRDEP}"
-do_package_write_ipk[rdeptask] = "${DEBIANRDEP}"
-do_package_write_deb[rdeptask] = "${DEBIANRDEP}"
-do_package_write_tar[rdeptask] = "${DEBIANRDEP}"
-do_package_write_rpm[rdeptask] = "${DEBIANRDEP}"
-
-python () {
-    if not d.getVar("PACKAGES"):
-        d.setVar("DEBIANRDEP", "")
-}
-
 python debian_package_name_hook () {
     import glob, copy, stat, errno, re, pathlib, subprocess
 
index 7787042e2132a3608382a21db417cf23be3728c1..820920eadff9ff3b60bccdc9b7a8b32013a4d3b7 100644 (file)
@@ -60,7 +60,6 @@ ALL_MULTILIB_PACKAGE_ARCHS = "${@all_multilib_tune_values(d, 'PACKAGE_ARCHS')}"
 # dwarfsrcfiles is used to determine the list of debug source files
 PACKAGE_DEPENDS += "rpm-native dwarfsrcfiles-native"
 
-
 # If your postinstall can execute at rootfs creation time rather than on
 # target but depends on a native/cross tool in order to execute, you need to
 # list that tool in PACKAGE_WRITE_DEPS. Target package dependencies belong
@@ -614,3 +613,22 @@ python do_packagedata_setscene () {
 }
 addtask do_packagedata_setscene
 
+# This part ensures all the runtime packages built by the time
+# dynamic renaming occures, if any.
+# This part moved here from debian.bbclass (see for reference) in
+# order to allow disabling default inheritance on debian package renaming.
+
+PKGRDEP = "do_packagedata"
+do_package_write_ipk[deptask] = "${PKGRDEP}"
+do_package_write_deb[deptask] = "${PKGRDEP}"
+do_package_write_tar[deptask] = "${PKGRDEP}"
+do_package_write_rpm[deptask] = "${PKGRDEP}"
+do_package_write_ipk[rdeptask] = "${PKGRDEP}"
+do_package_write_deb[rdeptask] = "${PKGRDEP}"
+do_package_write_tar[rdeptask] = "${PKGRDEP}"
+do_package_write_rpm[rdeptask] = "${PKGRDEP}"
+
+python () {
+    if not d.getVar("PACKAGES"):
+        d.setVar("PKGRDEP", "")
+}