The mesa-demos depends on mesa specific features so we have two possible solutions for it: * Add an explicit depends on mesa-dri (instead of virtual/libgl) in mesa-demos recipe, or * Disable mesa specific code Discussing it with Ross at IRC, it seems he prefer to try to cook a patch to disable mesa specific demos and make it generic. Either way this needs to be fixed as testapps image feature is forcing the inclusion of mesa-demos and this makes difficult the reuse of these packagegroup by other SoC vendors.
Did you get any further with this?
Not yet, sorry.
FYI this is affecting libva & libva-intel-driver update in the meta-intel. And the Yocto project 1.4 code freeze window is almost here. Can this issue be resolved any sooner?
How is mesa-demos affecting the va drivers?
Nitin, I'm not sure why this blocks the va upgrade?
Hi Ross, This was discussed on the meta-intel mailing list. mesa-demos fail to build with the newer libva. | eglut.c: In function '_eglutDestroyWindow':eglut.c: In function '_eglutDestroyWindow': | | eglut.c:55:32: error: 'EGL_SCREEN_BIT_MESA' undeclared (first use in | this function)eglut.c:55:32: error: 'EGL_SCREEN_BIT_MESA' undeclared | (first use in this function) | | eglut.c:55:32: note: each undeclared identifier is reported only once | for each function it appears ineglut.c:55:32: note: each undeclared | identifier is reported only once for each function it appears in | | eglut.c: In function '_eglutCreateWindow': | eglut.c:153:9: error: 'EGL_SCREEN_BIT_MESA' undeclared (first use in | this function) | eglut.c: In function '_eglutCreateWindow': | eglut.c:153:9: error: 'EGL_SCREEN_BIT_MESA' undeclared (first use in | this function) | eglut_screen.c:13:1: error: unknown type name 'EGLScreenMESA' | eglut_screen.c:14:1: error: unknown type name 'EGLModeMESA' | eglut_screen.c: In function '_eglutNativeInitDisplay': | eglut_screen.c:21:27: error: 'EGL_SCREEN_BIT_MESA' undeclared (first | use in this function) | eglut_screen.c:21:27: note: each undeclared identifier is reported | only once for each function it appears in | eglut_screen.c: In function 'init_kms': | eglut_screen.c:36:4: error: unknown type name 'EGLModeMESA' | eglut_screen.c: In function '_eglutNativeInitWindow': | eglut_screen.c:95:26: warning: assignment makes pointer from integer | without a cast [enabled by default] | eglut.c: In function 'eglutDestroyWindow': | eglut.c: In function 'eglutDestroyWindow':eglut.c:268:33: error: | 'EGL_SCREEN_BIT_MESA' undeclared (first use in this function) | | eglut.c:268:33: error: 'EGL_SCREEN_BIT_MESA' undeclared (first use in | this function) | make[3]: *** [eglut_screen.lo] Error 1 | make[3]: *** Waiting for unfinished jobs.... | make[3]: *** [libeglut_x11_la-eglut.lo] Error 1 | make[3]: *** [eglut.lo] Error 1 | make[3]: Leaving directory `/srv/ssd/nitin_builds/build-emenlow/tmp/work/core2-poky-linux/mesa-demos/8.0.1-r4/mesa-demos-8.0.1/src/egl/eglut' | make[2]: *** [all-recursive] Error 1 | make[2]: Leaving directory `/srv/ssd/nitin_builds/build-emenlow/tmp/work/core2-poky-linux/mesa-demos/8.0.1-r4/mesa-demos-8.0.1/src/egl' | make[1]: *** [all-recursive] Error 1 | make[1]: Leaving directory `/srv/ssd/nitin_builds/build-emenlow/tmp/work/core2-poky-linux/mesa-demos/8.0.1-r4/mesa-demos-8.0.1/src' | make: *** [all-recursive] Error 1 | ERROR: oe_runmake failed | ERROR: Function failed: do_compile (see | /srv/ssd/nitin_builds/build-emenlow/tmp/work/core2-poky-linux/mesa-dem | os/8.0.1-r4/temp/log.do_compile.40596 for further information) ERROR: Task 2105 (/srv/home/nitin/prj/poky.git/meta/recipes-graphics/mesa/mesa-demos_8.0.1.bb, do_compile) failed with exit code '1' NOTE: Tasks Summary: Attempted 5656 tasks of which 5600 didn't need to be rerun and 1 failed. Waiting for 0 running tasks to finish: Summary: 1 task failed: /srv/home/nitin/prj/poky.git/meta/recipes-graphics/mesa/mesa-demos_8.0.1.bb, do_compile
Those errors have nothing to do with libva and appear to be due to mesa-demos building against emgd (which *is* what this bug is about).
Ross, That is right. The relations to libva is, that update to libva demands the package files from emgd. and providing that breaks the mesa-demos. So this is bit entanglement of multiple recipes here. Nitin
And this mess can be avoided by pinning libva version to lower version for EMGD recipes.
I've submitted a patch that fixes this to meta-intel: https://lists.yoctoproject.org/pipermail/meta-intel/2013-April/000637.html Since we're coming up on release and I don't know if this might also be a good fix for non-Intel machines everywhere else, I don't plan on submitting it to oe-core unless someone can tell me that's the right thing to do at this point.
(In reply to comment #10) > I've submitted a patch that fixes this to meta-intel: > > https://lists.yoctoproject.org/pipermail/meta-intel/2013-April/000637.html > > Since we're coming up on release and I don't know if this might also be a > good fix for non-Intel machines everywhere else, I don't plan on submitting > it to oe-core unless someone can tell me that's the right thing to do at > this point. Being a backport I think it could be evaluated. Once you send a patch for it I can try it in meta-fsl-arm and check if it fixes the build issue there as well.
Hi Tomz, Good to see a patch to solve this. From the review of it, it looks like right way to solve the issue. I will do some build/runtime testing with meta-intel BSPs with it. Thanks, Nitin
I've just sent these patches to oe-core as this bug was originally reported due to mesa-demos failing to build against the Freescale drivers. Thanks Tom!
OK, great, once that hits oe-core, I'll remove it from meta-intel.
Merged into dylan as 60fabb6ea0474b19ad57873b402a608a92c5a5d4.