Limit the appending/enabling of the zynqmp-pmu BBCLASSEXTEND to only
specific recipes which are used for the building of pmu-firmware. This
is just binutils, gcc, newlib, libgloss and pmu-firmware itself.

The limiting is done based on the BPN of the recipe, which is not
provided as an override so the conditional is tested with an inline
python function.

This change removes the need for the extender class to be enabled
globally which can conflict with certain recipes that were not written
to be extended by the BBCLASSEXTEND mechanism. This change also improves
the parse time avoiding the need to parse all recipes for both target
and zynqmp-pmu.

Also remove the duplicate PACKAGE_EXTRA_ARCHS setting, this is already
done in zynqmp-pmu.bbclass itself.

Signed-off-by: Nathan Rossi <nat...@nathanrossi.com>
---
 conf/machine/include/zynqmp-pmu-config.inc | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/conf/machine/include/zynqmp-pmu-config.inc 
b/conf/machine/include/zynqmp-pmu-config.inc
index aa854cdcf6..f1ee275459 100644
--- a/conf/machine/include/zynqmp-pmu-config.inc
+++ b/conf/machine/include/zynqmp-pmu-config.inc
@@ -1,5 +1,13 @@
 
-# Enable the use of zynqmp-pmu specific recipe builds
-BBCLASSEXTEND_append = " zynqmp-pmu"
-PACKAGE_EXTRA_ARCHS_append = " microblazeel-v9.2-bs-cmp"
+# Enable the use of zynqmp-pmu for specific recipes only
+def zynqmp_pmu_enable_for_bpns(d):
+    bpns = [
+        "binutils",
+        "gcc", "libgcc",
+        "newlib", "libgloss",
+        "pmu-firmware",
+        ]
+    return " zynqmp-pmu" if (d.getVar("BPN") in bpns) else ""
+
+BBCLASSEXTEND_append = "${@zynqmp_pmu_enable_for_bpns(d)}"
 
-- 
2.14.1

-- 
_______________________________________________
meta-xilinx mailing list
meta-xilinx@yoctoproject.org
https://lists.yoctoproject.org/listinfo/meta-xilinx

Reply via email to