path: root/classes
diff options
authorRichard Purdie <>2013-09-16 14:56:20 (GMT)
committerTom Zanussi <>2013-09-18 13:13:06 (GMT)
commit49f495e388d986e568f6197075a56a6e7674b2f5 (patch)
tree924fc41dabb498b83108e5821a8cec009387c6f6 /classes
parent66def4d09cbdf1614622a7ab1d84bef312b5f55d (diff)
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 <>
Diffstat (limited to 'classes')
1 files changed, 11 insertions, 0 deletions
diff --git a/classes/emgd-gl.bbclass b/classes/emgd-gl.bbclass
new file mode 100644
index 0000000..ef1df69
--- /dev/null
+++ b/classes/emgd-gl.bbclass
@@ -0,0 +1,11 @@
1# give a different PACKAGE_ARCH to the recipes involved with opengl
2python __anonymous () {
3 provides = set((d.getVar("PROVIDES", True) or "").split())
4 depends = set((d.getVar("DEPENDS", True) or "").split())
6 glp = set([ "virtual/libgles1", "virtual/libgles2", "virtual/egl", "virtual/mesa" , "virtual/libgl"])
7 if list(glp & (provides | depends)): # set union & intersection operations
8 # matched
9 d.appendVar("PACKAGE_ARCH", "${GLSUFFIX}")
10 return