From 49f495e388d986e568f6197075a56a6e7674b2f5 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Mon, 16 Sep 2013 14:56:20 +0000 Subject: Separate packagedir for GL components of EMGD BSPs When multiple BSPs of the same arch are built in a build directory, the differences in GL providers such as emgd-driver and mesa causes rebuild of large set of recipes, as they collide on each other's space for multiple BSPs. Although this does not impact correctness, it impacts build performance negatively. Richard had an idea of providing separate PACKAGE_DIR to the colliding recipes to avoid the build area collision. And this approach significantly reduces the negative impact on the build performance. Signed-off-by: Nitin A Kamble Signed-off-by: Richard Purdie --- classes/emgd-gl.bbclass | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 classes/emgd-gl.bbclass (limited to 'classes') diff --git a/classes/emgd-gl.bbclass b/classes/emgd-gl.bbclass new file mode 100644 index 00000000..ef1df699 --- /dev/null +++ b/classes/emgd-gl.bbclass @@ -0,0 +1,11 @@ +# give a different PACKAGE_ARCH to the recipes involved with opengl +python __anonymous () { + provides = set((d.getVar("PROVIDES", True) or "").split()) + depends = set((d.getVar("DEPENDS", True) or "").split()) + + glp = set([ "virtual/libgles1", "virtual/libgles2", "virtual/egl", "virtual/mesa" , "virtual/libgl"]) + if list(glp & (provides | depends)): # set union & intersection operations + # matched + d.appendVar("PACKAGE_ARCH", "${GLSUFFIX}") + return +} -- cgit v1.2.3-54-g00ecf