vcos headers include headers like "vcos_platform.h" "vcos_futex_mutex.h" "vcos_platform_types.h" and these headers are different based on platform/OSes. e.g. OS targets that support pthreads these headers should come from pthreads/ folder but not for others. So one would add right -I option for every package that accesses them directly or indirectly. so if a software does #include <EGL/egl.h> then it will break
| In file included from /mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/raspberrypi2/usr/include/interface/vcos/vcos_assert.h:149:0, | from /mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/raspberrypi2/usr/include/interface/vcos/vcos.h:114, | from /mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/raspberrypi2/usr/include/interface/vmcs_host/vc_dispmanx.h:33, | from /mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/raspberrypi2/usr/include/EGL/eglplatform.h:110, | from /mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/raspberrypi2/usr/include/EGL/egl.h:36, | from /mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/work/armv7at2hf-vfp-neon-angstrom-linux-gnueabi/weston/1.8.0-r0/weston-1.8.0/clients/../shared/platform.h:29, | from /mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/work/armv7at2hf-vfp-neon-angstrom-linux-gnueabi/weston/1.8.0-r0/weston-1.8.0/clients/window.h:33, | from /mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/work/armv7at2hf-vfp-neon-angstrom-linux-gnueabi/weston/1.8.0-r0/weston-1.8.0/clients/eventdemo.c:40: | /mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/raspberrypi2/usr/include/interface/vcos/vcos_types.h:38:33: fatal error: vcos_platform_types.h: No such file or directory | #include "vcos_platform_types.h" | ^ | compilation terminated. This is wrong, it should not happen since doing simple #include <EGL/egl.h> should not demand manual addition of some internal paths tobe added to -I flags. This patch fixes the headers which refer to headers inside pthreads/ folder to prefix them with pthreads/ so we dont have to specify additional paths This fixes weston on rpi and I believe there are more patches now to recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_%.bbappend recipes-multimedia/omxplayer/omxplayer_git.bb which can be removed as well Signed-off-by: Khem Raj <raj.k...@gmail.com> --- recipes-graphics/userland/userland_git.bb | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/recipes-graphics/userland/userland_git.bb b/recipes-graphics/userland/userland_git.bb index 6c7200c..188237a 100644 --- a/recipes-graphics/userland/userland_git.bb +++ b/recipes-graphics/userland/userland_git.bb @@ -37,6 +37,14 @@ PACKAGECONFIG[wayland] = "-DBUILD_WAYLAND=TRUE,,wayland," CFLAGS_append = " -fPIC" +do_install_append () { + for f in `find ${D}${includedir}/interface/vcos/ -name "*.h"`; do + sed -i 's/include "vcos_platform.h"/include "pthreads\/vcos_platform.h"/g' ${f} + sed -i 's/include "vcos_futex_mutex.h"/include "pthreads\/vcos_futex_mutex.h"/g' ${f} + sed -i 's/include "vcos_platform_types.h"/include "pthreads\/vcos_platform_types.h"/g' ${f} + done +} + # Shared libs from userland package build aren't versioned, so we need # to force the .so files into the runtime package (and keep them # out of -dev package). -- 2.1.4 -- _______________________________________________ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto