* [Buildroot] [PATCH v1 0/3] qt5: fix build issue with mesa w/out xcb
@ 2018-02-12 4:25 Gaël PORTAY
2018-02-12 4:25 ` [Buildroot] [PATCH v1 1/3] qt5webkit: fix build issue with mesa3d " Gaël PORTAY
` (3 more replies)
0 siblings, 4 replies; 10+ messages in thread
From: Gaël PORTAY @ 2018-02-12 4:25 UTC (permalink / raw)
To: buildroot
Hi all,
Julien Corjon and I have noticed a build issue with qtmultimedia,
qtwayland and qtwebkit modules when using mesa3d (as EGL backend)
without using XCB. When BR2_PACKAGE_LIBXCB is set the issue is gone.
Julien has opened an issue in Qt tracker[1].
The mesa's EGL/eglplatform.h header includes X11 headers unless the
macro MESA_EGL_NO_X11_HEADERS is defined[2].
/home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/eglplatform.h:118:22: fatal error: X11/Xlib.h: No such file or directory
#include <X11/Xlib.h>
^
compilation terminated.
The workaround tells qmake to pass the cflag MESA_EGL_NO_X11_HEADERS to
make that prevents from including the missing X headers.
This workaround is performed in the situation when mesa3d is in use as
OpenGL EGL backend and when XCB library is *not* compiled.
[1]: https://bugreports.qt.io/browse/QTBUG-66233
[2]: https://github.com/mesa3d/mesa/blob/79ee1b2ff0b85f4eeb4165d23a7943c28d3a3d93/include/EGL/eglplatform.h#L109-L125
Regards,
Ga?l PORTAY (3):
qt5webkit: fix build issue with mesa3d w/out xcb
qt5multimedia: fix build issue with mesa3d w/out xcb
qt5wayland: fix build issue with mesa3d w/out xcb
package/qt5/qt5multimedia/qt5multimedia.mk | 11 ++++++++++-
package/qt5/qt5wayland/qt5wayland.mk | 9 +++++++++
package/qt5/qt5webkit/qt5webkit.mk | 11 ++++++++++-
3 files changed, 29 insertions(+), 2 deletions(-)
--
2.15.1
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH v1 1/3] qt5webkit: fix build issue with mesa3d w/out xcb
2018-02-12 4:25 [Buildroot] [PATCH v1 0/3] qt5: fix build issue with mesa w/out xcb Gaël PORTAY
@ 2018-02-12 4:25 ` Gaël PORTAY
2018-02-27 21:00 ` Peter Korsgaard
2018-02-12 4:25 ` [Buildroot] [PATCH v1 2/3] qt5multimedia: " Gaël PORTAY
` (2 subsequent siblings)
3 siblings, 1 reply; 10+ messages in thread
From: Gaël PORTAY @ 2018-02-12 4:25 UTC (permalink / raw)
To: buildroot
The mesa's EGL/eglplatform.h header includes X11 headers unless the flag
MESA_EGL_NO_X11_HEADERS is defined[1].
A build issue happens when mesa3d is selected as then OpenGL EGL backend
but the XCB library is not selected.
This commit tells qmake to pass the cflag MESA_EGL_NO_X11_HEADERS to
make and prevent from including the missing X headers.
The issue QTBUG-66233 is opened in the Qt tracker[1].
Fixes:
In file included from /home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/egl.h:39:0,
from platform/graphics/opengl/Extensions3DOpenGLES.cpp:33:
/home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/eglplatform.h:118:22: fatal error: X11/Xlib.h: No such file or directory
#include <X11/Xlib.h>
^
compilation terminated.
Makefile.WebCore.Target:93596: recipe for target '.obj/platform/graphics/opengl/Extensions3DOpenGLES.o' failed
[1]: https://github.com/mesa3d/mesa/blob/79ee1b2ff0b85f4eeb4165d23a7943c28d3a3d93/include/EGL/eglplatform.h#L109-L125
[2]: https://bugreports.qt.io/browse/QTBUG-66233
Cc: Julien CORJON <corjon.j@ecagroup.com>
Signed-off-by: Ga?l PORTAY <gael.portay@savoirfairelinux.com>
---
package/qt5/qt5webkit/qt5webkit.mk | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/package/qt5/qt5webkit/qt5webkit.mk b/package/qt5/qt5webkit/qt5webkit.mk
index 3b218a5385..5005f750a6 100644
--- a/package/qt5/qt5webkit/qt5webkit.mk
+++ b/package/qt5/qt5webkit/qt5webkit.mk
@@ -44,8 +44,17 @@ define QT5WEBKIT_PYTHON2_SYMLINK
endef
QT5WEBKIT_PRE_CONFIGURE_HOOKS += QT5WEBKIT_PYTHON2_SYMLINK
+# The mesa's EGL/eglplatform.h header includes X11 headers unless the flag
+# MESA_EGL_NO_X11_HEADERS is defined. Tell to not include X11 headers if
+# the libxcb is not selected.
+ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_EGL),y)
+ifneq ($(BR2_PACKAGE_LIBXCB),y)
+QT5WEBKIT_QMAKEFLAGS += QMAKE_CXXFLAGS+=-DMESA_EGL_NO_X11_HEADERS
+endif
+endif
+
define QT5WEBKIT_CONFIGURE_CMDS
- (cd $(@D); $(TARGET_MAKE_ENV) $(QT5WEBKIT_ENV) $(HOST_DIR)/bin/qmake)
+ (cd $(@D); $(TARGET_MAKE_ENV) $(QT5WEBKIT_ENV) $(HOST_DIR)/bin/qmake $(QT5WEBKIT_QMAKEFLAGS))
endef
define QT5WEBKIT_BUILD_CMDS
--
2.15.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH v1 2/3] qt5multimedia: fix build issue with mesa3d w/out xcb
2018-02-12 4:25 [Buildroot] [PATCH v1 0/3] qt5: fix build issue with mesa w/out xcb Gaël PORTAY
2018-02-12 4:25 ` [Buildroot] [PATCH v1 1/3] qt5webkit: fix build issue with mesa3d " Gaël PORTAY
@ 2018-02-12 4:25 ` Gaël PORTAY
2018-02-27 21:01 ` Peter Korsgaard
2018-02-12 4:25 ` [Buildroot] [PATCH v1 3/3] qt5wayland: " Gaël PORTAY
2018-02-22 16:47 ` [Buildroot] [PATCH v1 0/3] qt5: fix build issue with mesa " Gaël PORTAY
3 siblings, 1 reply; 10+ messages in thread
From: Gaël PORTAY @ 2018-02-12 4:25 UTC (permalink / raw)
To: buildroot
The mesa's EGL/eglplatform.h header includes X11 headers unless the flag
MESA_EGL_NO_X11_HEADERS is defined[1].
A build issue happens when mesa3d is selected as then OpenGL EGL backend
but the XCB library is not selected.
This commit tells qmake to pass the cflag MESA_EGL_NO_X11_HEADERS to
make and prevent from including the missing X headers.
The issue QTBUG-66233 is opened in the Qt tracker[1].
Fixes:
In file included from
/home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/egl.h:39:0,
from qsgvideonode_egl.h:48,
from qsgvideonode_egl.cpp:40:
/home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/eglplatform.h:118:22:
fatal error: X11/Xlib.h: No such file or directory
#include <X11/Xlib.h>
^
compilation terminated.
Makefile:550: recipe for target '.obj/qsgvideonode_egl.o' failed
[1]: https://github.com/mesa3d/mesa/blob/79ee1b2ff0b85f4eeb4165d23a7943c28d3a3d93/include/EGL/eglplatform.h#L109-L125
[2]: https://bugreports.qt.io/browse/QTBUG-66233
Cc: Julien CORJON <corjon.j@ecagroup.com>
Signed-off-by: Ga?l PORTAY <gael.portay@savoirfairelinux.com>
---
package/qt5/qt5multimedia/qt5multimedia.mk | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/package/qt5/qt5multimedia/qt5multimedia.mk b/package/qt5/qt5multimedia/qt5multimedia.mk
index 6df96bcab4..ecccad332a 100644
--- a/package/qt5/qt5multimedia/qt5multimedia.mk
+++ b/package/qt5/qt5multimedia/qt5multimedia.mk
@@ -34,8 +34,17 @@ ifeq ($(BR2_PACKAGE_ALSA_LIB),y)
QT5MULTIMEDIA_DEPENDENCIES += alsa-lib
endif
+# The mesa's EGL/eglplatform.h header includes X11 headers unless the flag
+# MESA_EGL_NO_X11_HEADERS is defined. Tell to not include X11 headers if
+# the libxcb is not selected.
+ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_EGL),y)
+ifneq ($(BR2_PACKAGE_LIBXCB),y)
+QT5MULTIMEDIA_QMAKEFLAGS += QMAKE_CXXFLAGS+=-DMESA_EGL_NO_X11_HEADERS
+endif
+endif
+
define QT5MULTIMEDIA_CONFIGURE_CMDS
- (cd $(@D); $(TARGET_MAKE_ENV) $(HOST_DIR)/bin/qmake)
+ (cd $(@D); $(TARGET_MAKE_ENV) $(HOST_DIR)/bin/qmake $(QT5MULTIMEDIA_QMAKEFLAGS))
endef
define QT5MULTIMEDIA_BUILD_CMDS
--
2.15.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH v1 3/3] qt5wayland: fix build issue with mesa3d w/out xcb
2018-02-12 4:25 [Buildroot] [PATCH v1 0/3] qt5: fix build issue with mesa w/out xcb Gaël PORTAY
2018-02-12 4:25 ` [Buildroot] [PATCH v1 1/3] qt5webkit: fix build issue with mesa3d " Gaël PORTAY
2018-02-12 4:25 ` [Buildroot] [PATCH v1 2/3] qt5multimedia: " Gaël PORTAY
@ 2018-02-12 4:25 ` Gaël PORTAY
2018-02-27 20:57 ` Peter Korsgaard
2018-02-22 16:47 ` [Buildroot] [PATCH v1 0/3] qt5: fix build issue with mesa " Gaël PORTAY
3 siblings, 1 reply; 10+ messages in thread
From: Gaël PORTAY @ 2018-02-12 4:25 UTC (permalink / raw)
To: buildroot
The mesa's EGL/eglplatform.h header includes X11 headers unless the flag
MESA_EGL_NO_X11_HEADERS is defined[1].
A build issue happens when mesa3d is selected as then OpenGL EGL backend
but the XCB library is not selected.
This commit tells qmake to pass the cflag MESA_EGL_NO_X11_HEADERS to
make and prevent from including the missing X headers.
The issue QTBUG-66233 is opened in the Qt tracker[1].
Fixes:
In file included from
/home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/egl.h:39:0,
from
/home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/qt5/QtEglSupport/5.10.0/QtEglSupport/private/qt_egl_p.h:65,
from
/home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/qt5/QtEglSupport/5.10.0/QtEglSupport/private/qeglstreamconvenience_p.h:55,
from
../../../../hardwareintegration/compositor/wayland-egl/waylandeglclientbufferintegration.cpp:56:
/home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/eglplatform.h:118:22:
fatal error: X11/Xlib.h: No such file or directory
#include <X11/Xlib.h>
^
compilation terminated.
Makefile:656: recipe for target
'.obj/waylandeglclientbufferintegration.o' failed
make[8]: *** [.obj/waylandeglclientbufferintegration.o] Error 1
[1]: https://github.com/mesa3d/mesa/blob/79ee1b2ff0b85f4eeb4165d23a7943c28d3a3d93/include/EGL/eglplatform.h#L109-L125
[2]: https://bugreports.qt.io/browse/QTBUG-66233
Cc: Julien CORJON <corjon.j@ecagroup.com>
Signed-off-by: Ga?l PORTAY <gael.portay@savoirfairelinux.com>
---
package/qt5/qt5wayland/qt5wayland.mk | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/package/qt5/qt5wayland/qt5wayland.mk b/package/qt5/qt5wayland/qt5wayland.mk
index 0a7bdb8cf9..90ea01fe74 100644
--- a/package/qt5/qt5wayland/qt5wayland.mk
+++ b/package/qt5/qt5wayland/qt5wayland.mk
@@ -26,6 +26,15 @@ ifeq ($(BR2_PACKAGE_QT5WAYLAND_COMPOSITOR),y)
QT5WAYLAND_QMAKEFLAGS += CONFIG+=wayland-compositor
endif
+# The mesa's EGL/eglplatform.h header includes X11 headers unless the flag
+# MESA_EGL_NO_X11_HEADERS is defined. Tell to not include X11 headers if
+# the libxcb is not selected.
+ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_EGL),y)
+ifneq ($(BR2_PACKAGE_LIBXCB),y)
+QT5WAYLAND_QMAKEFLAGS += QMAKE_CXXFLAGS+=-DMESA_EGL_NO_X11_HEADERS
+endif
+endif
+
define QT5WAYLAND_CONFIGURE_CMDS
(cd $(@D); $(TARGET_MAKE_ENV) $(HOST_DIR)/bin/qmake $(QT5WAYLAND_QMAKEFLAGS))
endef
--
2.15.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH v1 0/3] qt5: fix build issue with mesa w/out xcb
2018-02-12 4:25 [Buildroot] [PATCH v1 0/3] qt5: fix build issue with mesa w/out xcb Gaël PORTAY
` (2 preceding siblings ...)
2018-02-12 4:25 ` [Buildroot] [PATCH v1 3/3] qt5wayland: " Gaël PORTAY
@ 2018-02-22 16:47 ` Gaël PORTAY
2018-02-22 18:32 ` Peter Seiderer
2018-02-27 20:56 ` Peter Korsgaard
3 siblings, 2 replies; 10+ messages in thread
From: Gaël PORTAY @ 2018-02-22 16:47 UTC (permalink / raw)
To: buildroot
All,
On Sun, Feb 11, 2018 at 11:25:21PM -0500, Ga?l PORTAY wrote:
> Hi all,
>
> Julien Corjon and I have noticed a build issue with qtmultimedia,
> qtwayland and qtwebkit modules when using mesa3d (as EGL backend)
> without using XCB. When BR2_PACKAGE_LIBXCB is set the issue is gone.
> Julien has opened an issue in Qt tracker[1].
>
> The mesa's EGL/eglplatform.h header includes X11 headers unless the
> macro MESA_EGL_NO_X11_HEADERS is defined[2].
>
> /home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/eglplatform.h:118:22: fatal error: X11/Xlib.h: No such file or directory
> #include <X11/Xlib.h>
> ^
> compilation terminated.
>
> The workaround tells qmake to pass the cflag MESA_EGL_NO_X11_HEADERS to
> make that prevents from including the missing X headers.
>
> This workaround is performed in the situation when mesa3d is in use as
> OpenGL EGL backend and when XCB library is *not* compiled.
>
> [1]: https://bugreports.qt.io/browse/QTBUG-66233
> [2]: https://github.com/mesa3d/mesa/blob/79ee1b2ff0b85f4eeb4165d23a7943c28d3a3d93/include/EGL/eglplatform.h#L109-L125
>
As discussed with Thomas on the #buildroot channel:
2018-02-16 09:01:14 kos_tom gportay: I think the OpenGL implementation should provide those flags in its .pc file, and qt should pick them up from there
Hopefully, the MESA_EGL_NO_X11_HEADERS cflags is present the egl.pc file
from mesa3d:
$ output/host/bin/pkg-config --cflags-only-other egl
-DMESA_EGL_NO_X11_HEADERS
I will work on a proper solution that will be integrated in every Qt
projects that are impacted by this issue.
I need time/help to hundersand how qmake works in order to append the
egl cflags given by pkg-config in qmake.
I almost sure that I will miss the release. So, would you agree to
accept this patch serie as a temporary workaround since it fixes a real
build issue?
> Regards,
> Ga?l PORTAY (3):
> qt5webkit: fix build issue with mesa3d w/out xcb
> qt5multimedia: fix build issue with mesa3d w/out xcb
> qt5wayland: fix build issue with mesa3d w/out xcb
>
> package/qt5/qt5multimedia/qt5multimedia.mk | 11 ++++++++++-
> package/qt5/qt5wayland/qt5wayland.mk | 9 +++++++++
> package/qt5/qt5webkit/qt5webkit.mk | 11 ++++++++++-
> 3 files changed, 29 insertions(+), 2 deletions(-)
>
> --
> 2.15.1
>
Regards,
Gael
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH v1 0/3] qt5: fix build issue with mesa w/out xcb
2018-02-22 16:47 ` [Buildroot] [PATCH v1 0/3] qt5: fix build issue with mesa " Gaël PORTAY
@ 2018-02-22 18:32 ` Peter Seiderer
2018-02-27 20:56 ` Peter Korsgaard
1 sibling, 0 replies; 10+ messages in thread
From: Peter Seiderer @ 2018-02-22 18:32 UTC (permalink / raw)
To: buildroot
Hello Ga?l,
On Thu, 22 Feb 2018 11:47:38 -0500, Ga?l PORTAY <gael.portay@savoirfairelinux.com> wrote:
> All,
>
> On Sun, Feb 11, 2018 at 11:25:21PM -0500, Ga?l PORTAY wrote:
> > Hi all,
> >
> > Julien Corjon and I have noticed a build issue with qtmultimedia,
> > qtwayland and qtwebkit modules when using mesa3d (as EGL backend)
> > without using XCB. When BR2_PACKAGE_LIBXCB is set the issue is gone.
> > Julien has opened an issue in Qt tracker[1].
> >
> > The mesa's EGL/eglplatform.h header includes X11 headers unless the
> > macro MESA_EGL_NO_X11_HEADERS is defined[2].
> >
> > /home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/eglplatform.h:118:22: fatal error: X11/Xlib.h: No such file or directory
> > #include <X11/Xlib.h>
> > ^
> > compilation terminated.
> >
> > The workaround tells qmake to pass the cflag MESA_EGL_NO_X11_HEADERS to
> > make that prevents from including the missing X headers.
> >
> > This workaround is performed in the situation when mesa3d is in use as
> > OpenGL EGL backend and when XCB library is *not* compiled.
> >
> > [1]: https://bugreports.qt.io/browse/QTBUG-66233
> > [2]: https://github.com/mesa3d/mesa/blob/79ee1b2ff0b85f4eeb4165d23a7943c28d3a3d93/include/EGL/eglplatform.h#L109-L125
> >
>
> As discussed with Thomas on the #buildroot channel:
>
> 2018-02-16 09:01:14 kos_tom gportay: I think the OpenGL implementation should provide those flags in its .pc file, and qt should pick them up from there
>
> Hopefully, the MESA_EGL_NO_X11_HEADERS cflags is present the egl.pc file
> from mesa3d:
>
> $ output/host/bin/pkg-config --cflags-only-other egl
> -DMESA_EGL_NO_X11_HEADERS
>
> I will work on a proper solution that will be integrated in every Qt
> projects that are impacted by this issue.
>
> I need time/help to hundersand how qmake works in order to append the
> egl cflags given by pkg-config in qmake.
>
Maybe take a look at the openembedded patch [1] (and upstream bug report[2]
and patch [3]) 'egl.prf: Fix build error when egl headers need platform
definition', stating:
Gain the value through pkg-config and pass it through QMAKE_CFLAGS_EGL.
Regards,
Peter
[1] https://patchwork.openembedded.org/patch/141287/
[2] https://bugreports.qt.io/browse/QTBUG-61712
[3] https://codereview.qt-project.org/#/c/198906/
> I almost sure that I will miss the release. So, would you agree to
> accept this patch serie as a temporary workaround since it fixes a real
> build issue?
>
> > Regards,
> > Ga?l PORTAY (3):
> > qt5webkit: fix build issue with mesa3d w/out xcb
> > qt5multimedia: fix build issue with mesa3d w/out xcb
> > qt5wayland: fix build issue with mesa3d w/out xcb
> >
> > package/qt5/qt5multimedia/qt5multimedia.mk | 11 ++++++++++-
> > package/qt5/qt5wayland/qt5wayland.mk | 9 +++++++++
> > package/qt5/qt5webkit/qt5webkit.mk | 11 ++++++++++-
> > 3 files changed, 29 insertions(+), 2 deletions(-)
> >
> > --
> > 2.15.1
> >
>
> Regards,
> Gael
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH v1 0/3] qt5: fix build issue with mesa w/out xcb
2018-02-22 16:47 ` [Buildroot] [PATCH v1 0/3] qt5: fix build issue with mesa " Gaël PORTAY
2018-02-22 18:32 ` Peter Seiderer
@ 2018-02-27 20:56 ` Peter Korsgaard
1 sibling, 0 replies; 10+ messages in thread
From: Peter Korsgaard @ 2018-02-27 20:56 UTC (permalink / raw)
To: buildroot
>>>>> "Ga?l" == Ga?l PORTAY <gael.portay@savoirfairelinux.com> writes:
Hi,
> As discussed with Thomas on the #buildroot channel:
> 2018-02-16 09:01:14 kos_tom gportay: I think the OpenGL implementation should provide those flags in its .pc file, and qt should pick them up from there
> Hopefully, the MESA_EGL_NO_X11_HEADERS cflags is present the egl.pc file
> from mesa3d:
> $ output/host/bin/pkg-config --cflags-only-other egl
> -DMESA_EGL_NO_X11_HEADERS
> I will work on a proper solution that will be integrated in every Qt
> projects that are impacted by this issue.
> I need time/help to hundersand how qmake works in order to append the
> egl cflags given by pkg-config in qmake.
> I almost sure that I will miss the release. So, would you agree to
> accept this patch serie as a temporary workaround since it fixes a real
> build issue?
Yes, I guess that is the best solution for 2018.02. I'll apply the 3 patches.
--
Bye, Peter Korsgaard
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH v1 3/3] qt5wayland: fix build issue with mesa3d w/out xcb
2018-02-12 4:25 ` [Buildroot] [PATCH v1 3/3] qt5wayland: " Gaël PORTAY
@ 2018-02-27 20:57 ` Peter Korsgaard
0 siblings, 0 replies; 10+ messages in thread
From: Peter Korsgaard @ 2018-02-27 20:57 UTC (permalink / raw)
To: buildroot
>>>>> "Ga?l" == Ga?l PORTAY <gael.portay@savoirfairelinux.com> writes:
> The mesa's EGL/eglplatform.h header includes X11 headers unless the flag
> MESA_EGL_NO_X11_HEADERS is defined[1].
> A build issue happens when mesa3d is selected as then OpenGL EGL backend
> but the XCB library is not selected.
> This commit tells qmake to pass the cflag MESA_EGL_NO_X11_HEADERS to
> make and prevent from including the missing X headers.
> The issue QTBUG-66233 is opened in the Qt tracker[1].
> Fixes:
> In file included from
> /home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/egl.h:39:0,
> from
> /home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/qt5/QtEglSupport/5.10.0/QtEglSupport/private/qt_egl_p.h:65,
> from
> /home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/qt5/QtEglSupport/5.10.0/QtEglSupport/private/qeglstreamconvenience_p.h:55,
> from
> ../../../../hardwareintegration/compositor/wayland-egl/waylandeglclientbufferintegration.cpp:56:
> /home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/eglplatform.h:118:22:
> fatal error: X11/Xlib.h: No such file or directory
> #include <X11/Xlib.h>
> ^
> compilation terminated.
> Makefile:656: recipe for target
> '.obj/waylandeglclientbufferintegration.o' failed
> make[8]: *** [.obj/waylandeglclientbufferintegration.o] Error 1
> [1]: https://github.com/mesa3d/mesa/blob/79ee1b2ff0b85f4eeb4165d23a7943c28d3a3d93/include/EGL/eglplatform.h#L109-L125
> [2]: https://bugreports.qt.io/browse/QTBUG-66233
> Cc: Julien CORJON <corjon.j@ecagroup.com>
> Signed-off-by: Ga?l PORTAY <gael.portay@savoirfairelinux.com>
> ---
> package/qt5/qt5wayland/qt5wayland.mk | 9 +++++++++
> 1 file changed, 9 insertions(+)
> diff --git a/package/qt5/qt5wayland/qt5wayland.mk b/package/qt5/qt5wayland/qt5wayland.mk
> index 0a7bdb8cf9..90ea01fe74 100644
> --- a/package/qt5/qt5wayland/qt5wayland.mk
> +++ b/package/qt5/qt5wayland/qt5wayland.mk
> @@ -26,6 +26,15 @@ ifeq ($(BR2_PACKAGE_QT5WAYLAND_COMPOSITOR),y)
> QT5WAYLAND_QMAKEFLAGS += CONFIG+=wayland-compositor
> endif
> +# The mesa's EGL/eglplatform.h header includes X11 headers unless the flag
> +# MESA_EGL_NO_X11_HEADERS is defined. Tell to not include X11 headers if
> +# the libxcb is not selected.
> +ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_EGL),y)
> +ifneq ($(BR2_PACKAGE_LIBXCB),y)
> +QT5WAYLAND_QMAKEFLAGS += QMAKE_CXXFLAGS+=-DMESA_EGL_NO_X11_HEADERS
> +endif
> +endif
When we need to check for foo and !bar we normally write it as:
ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_EGL)x$(BR2_PACKAGE_LIBXCB),yx)
..
Committed after rewriting it like that, thanks.
--
Bye, Peter Korsgaard
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH v1 1/3] qt5webkit: fix build issue with mesa3d w/out xcb
2018-02-12 4:25 ` [Buildroot] [PATCH v1 1/3] qt5webkit: fix build issue with mesa3d " Gaël PORTAY
@ 2018-02-27 21:00 ` Peter Korsgaard
0 siblings, 0 replies; 10+ messages in thread
From: Peter Korsgaard @ 2018-02-27 21:00 UTC (permalink / raw)
To: buildroot
>>>>> "Ga?l" == Ga?l PORTAY <gael.portay@savoirfairelinux.com> writes:
> The mesa's EGL/eglplatform.h header includes X11 headers unless the flag
> MESA_EGL_NO_X11_HEADERS is defined[1].
> A build issue happens when mesa3d is selected as then OpenGL EGL backend
> but the XCB library is not selected.
> This commit tells qmake to pass the cflag MESA_EGL_NO_X11_HEADERS to
> make and prevent from including the missing X headers.
> The issue QTBUG-66233 is opened in the Qt tracker[1].
> Fixes:
> In file included from /home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/egl.h:39:0,
> from platform/graphics/opengl/Extensions3DOpenGLES.cpp:33:
> /home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/eglplatform.h:118:22: fatal error: X11/Xlib.h: No such file or directory
> #include <X11/Xlib.h>
> ^
> compilation terminated.
> Makefile.WebCore.Target:93596: recipe for target '.obj/platform/graphics/opengl/Extensions3DOpenGLES.o' failed
> [1]: https://github.com/mesa3d/mesa/blob/79ee1b2ff0b85f4eeb4165d23a7943c28d3a3d93/include/EGL/eglplatform.h#L109-L125
> [2]: https://bugreports.qt.io/browse/QTBUG-66233
> Cc: Julien CORJON <corjon.j@ecagroup.com>
> Signed-off-by: Ga?l PORTAY <gael.portay@savoirfairelinux.com>
Committed after simplifying, thanks.
--
Bye, Peter Korsgaard
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH v1 2/3] qt5multimedia: fix build issue with mesa3d w/out xcb
2018-02-12 4:25 ` [Buildroot] [PATCH v1 2/3] qt5multimedia: " Gaël PORTAY
@ 2018-02-27 21:01 ` Peter Korsgaard
0 siblings, 0 replies; 10+ messages in thread
From: Peter Korsgaard @ 2018-02-27 21:01 UTC (permalink / raw)
To: buildroot
>>>>> "Ga?l" == Ga?l PORTAY <gael.portay@savoirfairelinux.com> writes:
> The mesa's EGL/eglplatform.h header includes X11 headers unless the flag
> MESA_EGL_NO_X11_HEADERS is defined[1].
> A build issue happens when mesa3d is selected as then OpenGL EGL backend
> but the XCB library is not selected.
> This commit tells qmake to pass the cflag MESA_EGL_NO_X11_HEADERS to
> make and prevent from including the missing X headers.
> The issue QTBUG-66233 is opened in the Qt tracker[1].
> Fixes:
> In file included from
> /home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/egl.h:39:0,
> from qsgvideonode_egl.h:48,
> from qsgvideonode_egl.cpp:40:
> /home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/eglplatform.h:118:22:
> fatal error: X11/Xlib.h: No such file or directory
> #include <X11/Xlib.h>
> ^
> compilation terminated.
> Makefile:550: recipe for target '.obj/qsgvideonode_egl.o' failed
> [1]: https://github.com/mesa3d/mesa/blob/79ee1b2ff0b85f4eeb4165d23a7943c28d3a3d93/include/EGL/eglplatform.h#L109-L125
> [2]: https://bugreports.qt.io/browse/QTBUG-66233
> Cc: Julien CORJON <corjon.j@ecagroup.com>
> Signed-off-by: Ga?l PORTAY <gael.portay@savoirfairelinux.com>
Committed after simplifying, thanks.
--
Bye, Peter Korsgaard
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2018-02-27 21:01 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-02-12 4:25 [Buildroot] [PATCH v1 0/3] qt5: fix build issue with mesa w/out xcb Gaël PORTAY
2018-02-12 4:25 ` [Buildroot] [PATCH v1 1/3] qt5webkit: fix build issue with mesa3d " Gaël PORTAY
2018-02-27 21:00 ` Peter Korsgaard
2018-02-12 4:25 ` [Buildroot] [PATCH v1 2/3] qt5multimedia: " Gaël PORTAY
2018-02-27 21:01 ` Peter Korsgaard
2018-02-12 4:25 ` [Buildroot] [PATCH v1 3/3] qt5wayland: " Gaël PORTAY
2018-02-27 20:57 ` Peter Korsgaard
2018-02-22 16:47 ` [Buildroot] [PATCH v1 0/3] qt5: fix build issue with mesa " Gaël PORTAY
2018-02-22 18:32 ` Peter Seiderer
2018-02-27 20:56 ` Peter Korsgaard
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.