diff mbox series

lib/oe/utils: move INHIBIT_DEFAULT_DEPS from make_arch_independent() to allarch.bbclass

Message ID 20260708161009.2997255-1-ross.burton@arm.com
State Under Review
Headers show
Series lib/oe/utils: move INHIBIT_DEFAULT_DEPS from make_arch_independent() to allarch.bbclass | expand

Commit Message

Ross Burton July 8, 2026, 4:10 p.m. UTC
The bulk of the work in allarch recipes happens in handlers because the
finer details of how the recipe is configured varies. Specifically,
multilib recipes cannot be allarch and if multilib is enabled, the
packages are still tune-specific.

However, this means that recipes that are marked as allarch don't have
INHIBIT_DEFAULT_DEPS set in multilib environments, which is a problem
if it was being used to avoid dependency cycles.

Instead of assigning it at runtime if the recipe really does become
arch-independent, move the assignment from make_arch_independent() to
allarch.bbclass (the other caller in dummy-sdk-package.inc already sets
this). This means that recipes inheriting allarch always have
INHIBIT_DEFAULT_DEPS set.

Signed-off-by: Ross Burton <ross.burton@arm.com>
---
 meta/classes-recipe/allarch.bbclass | 3 +++
 meta/lib/oe/utils.py                | 3 ---
 2 files changed, 3 insertions(+), 3 deletions(-)
diff mbox series

Patch

diff --git a/meta/classes-recipe/allarch.bbclass b/meta/classes-recipe/allarch.bbclass
index 7cdaa63ae2..aa44e2bc61 100644
--- a/meta/classes-recipe/allarch.bbclass
+++ b/meta/classes-recipe/allarch.bbclass
@@ -8,6 +8,9 @@ 
 # This class is used for architecture independent recipes/data files (usually scripts)
 #
 
+# No need for virtual/libc or a cross compiler
+INHIBIT_DEFAULT_DEPS = "1"
+
 python allarch_package_arch_handler () {
     if bb.data.inherits_class("native", d) or bb.data.inherits_class("nativesdk", d) \
         or bb.data.inherits_class("crosssdk", d):
diff --git a/meta/lib/oe/utils.py b/meta/lib/oe/utils.py
index 558073d3b1..082f6cef74 100644
--- a/meta/lib/oe/utils.py
+++ b/meta/lib/oe/utils.py
@@ -515,9 +515,6 @@  def touch(filename):
 # Used by allarch recipes and other cases where arch independence is needed
 #
 def make_arch_independent(d):
-    # No need for virtual/libc or a cross compiler
-    d.setVar("INHIBIT_DEFAULT_DEPS","1")
-
     # Set these to a common set of values, we shouldn't be using them other that for WORKDIR directory
     # naming anyway
     d.setVar("baselib", "lib")