[OE-core] [PATCH 1/7] allarch: Always inhibit default dependencies and set empty TARGET_PREFIX

Martin Jansa martin.jansa at gmail.com
Sun Nov 17 13:52:12 UTC 2013


* typical case where we inherit allarch and override PACKAGE_ARCH
  are packagegroup recipes, but those need default dependencies
  inhibited even when they are MACHINE_ARCH or TUNE_PKGARCH.
  I don't know about any recipe which inherits allarch and needs
  default dependencies.
* set empty TARGET_PREFIX
  This has a bit weird reason caused by unsupported setup where
  external-toolchain is used in some DISTRO only for some MACHINEs
  and internal is used for other MACHINEs.
  Because external-toolchain usually comes with different TARGET_PREFIX
  it was causing allarch recipes to have different signatures even
  when they don't use toolchain at all.
  Empty TARGET_PREFIX also helps to find allarch recipes which still
  have default dependency on e.g. virtual/${TARGET_PREFIX}gcc.

Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
---
 meta/classes/allarch.bbclass | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/meta/classes/allarch.bbclass b/meta/classes/allarch.bbclass
index 5e13a5b..4a65f77 100644
--- a/meta/classes/allarch.bbclass
+++ b/meta/classes/allarch.bbclass
@@ -9,12 +9,13 @@ STAGING_DIR_HOST := "${STAGING_DIR_HOST}"
 PACKAGE_ARCH = "all"
 
 python () {
+    # No need for virtual/libc or a cross compiler even for recipes which
+    # change PACKAGE_ARCH e.g. to MACHINE_ARCH
+    d.setVar("INHIBIT_DEFAULT_DEPS","1")
+
     # Allow this class to be included but overridden - only set
     # the values if we're still "all" package arch.
     if d.getVar("PACKAGE_ARCH") == "all":
-        # 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("TARGET_ARCH", "allarch")
@@ -23,6 +24,7 @@ python () {
         d.setVar("TARGET_LD_ARCH", "none")
         d.setVar("TARGET_AS_ARCH", "none")
         d.setVar("PACKAGE_EXTRA_ARCHS", "")
+        d.setVar("TARGET_PREFIX", "")
 
         # No need to do shared library processing or debug symbol handling
         d.setVar("EXCLUDE_FROM_SHLIBS", "1")
-- 
1.8.4.3



More information about the Openembedded-core mailing list