d515ca8dd8
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. For instance, with this defconfig:
BR2_arm=y
BR2_cortex_a9=y
BR2_ARM_FPU_VFPV3D16=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_INIT_NONE=y
BR2_PACKAGE_MESA3D=y
BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_ETNAVIV=y
BR2_PACKAGE_MESA3D_OPENGL_ES=y
BR2_PACKAGE_QT5=y
BR2_PACKAGE_QT5BASE_OPENGL_LIB=y
BR2_PACKAGE_QT5BASE_LINUXFB=y
BR2_PACKAGE_QT5BASE_EGLFS=y
BR2_PACKAGE_QT5WEBKIT=y
Also the odroid-mali EGL backend suffers the same problem.
This commit backports the patch from the Gerrit of Qt which is in
review[5]. It extends the QMAKE_CXXFLAGS with cflags contained in the
egl.pc file.
In this situation, the define MESA_EGL_NO_X11_HEADERS is given to the
compiler that prevent from including the missing X headers.
The issues QTBUG-61712[3] and QTBUG-66233[4] are opened in the Qt
tracker.
Fixes
http://autobuild.buildroot.net/results/8781a561ae1a89e4d70ddaba65d8817eabe3ce69
[1]: 79ee1b2ff0/include/EGL/eglplatform.h (L109-L125)
[2]: https://codereview.qt-project.org/#/c/198906/
[3]: https://bugreports.qt.io/browse/QTBUG-61712
[4]: https://bugreports.qt.io/browse/QTBUG-66233
Cc: Julien CORJON <corjon.j@ecagroup.com>
Cc: Peter Seiderer <ps.report@gmx.net>
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
38 lines
1.1 KiB
Diff
38 lines
1.1 KiB
Diff
From d69bd3fd52502c7eb2799397fea14afe350e2cbf Mon Sep 17 00:00:00 2001
|
|
From: Yuqing Zhu <carol.zhu@nxp.com>
|
|
Date: Mon, 27 Mar 2017 15:33:35 +0800
|
|
Subject: [PATCH] qtbase: Fix build error when using EGL
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=utf-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
A build error was occurring due to missing EGL configuration.
|
|
|
|
Fixed by adding the necessary ties to the EGL pkg-config.
|
|
|
|
Task-number: QTBUG-61712
|
|
Change-Id: I87190ea39392b4604c563cf9d89edb85068d85fc
|
|
Upstream-Status: Pending
|
|
Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
|
|
---
|
|
mkspecs/features/egl.prf | 6 ++++++
|
|
1 file changed, 6 insertions(+)
|
|
|
|
diff --git a/mkspecs/features/egl.prf b/mkspecs/features/egl.prf
|
|
index 9fa0c9e219..85d5852ba6 100644
|
|
--- a/mkspecs/features/egl.prf
|
|
+++ b/mkspecs/features/egl.prf
|
|
@@ -1,3 +1,9 @@
|
|
+# egl headers need a definition
|
|
+PKG_CONFIG = $$pkgConfigExecutable()
|
|
+PKGCONFIG_CFLAGS = $$system($$PKG_CONFIG --cflags egl)
|
|
+PKGCONFIG_CFLAGS = $$find(PKGCONFIG_CFLAGS, ^-D.*)
|
|
+QMAKE_CFLAGS_EGL = $$PKGCONFIG_CFLAGS
|
|
+
|
|
INCLUDEPATH += $$QMAKE_INCDIR_EGL
|
|
LIBS_PRIVATE += $$QMAKE_LIBS_EGL
|
|
QMAKE_CFLAGS += $$QMAKE_CFLAGS_EGL
|
|
--
|
|
2.16.1
|
|
|