File qt5-use-external-angle-library.patch of Package mingw32-libqt5-qtbase
diff --git a/src/gui/Qt5GuiConfigExtras.cmake.in b/src/gui/Qt5GuiConfigExtras.cmake.in
index 07869ef..2e32911 100644
--- a/src/gui/Qt5GuiConfigExtras.cmake.in
+++ b/src/gui/Qt5GuiConfigExtras.cmake.in
@@ -2,9 +2,9 @@
!!IF !isEmpty(CMAKE_ANGLE_EGL_DLL_RELEASE)
!!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE)
-set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR/QtANGLE\")
+set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR\")
!!ELSE
-set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR/QtANGLE\")
+set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR\")
!!ENDIF
_qt5_Gui_check_file_exists(${Qt5Gui_EGL_INCLUDE_DIRS})
diff --git a/src/gui/gui.pro b/src/gui/gui.pro
index 69434e8..06c8c13 100644
--- a/src/gui/gui.pro
+++ b/src/gui/gui.pro
@@ -17,11 +17,6 @@ MODULE_PLUGIN_TYPES = \
imageformats \
egldeviceintegrations
-# This is here only because the platform plugin is no module, obviously.
-win32:contains(QT_CONFIG, angle)|contains(QT_CONFIG, dynamicgl) {
- MODULE_AUX_INCLUDES = \
- \$\$QT_MODULE_INCLUDE_BASE/QtANGLE
-}
# Code coverage with TestCocoon
# The following is required as extra compilers use $$QMAKE_CXX instead of $(CXX).
@@ -33,6 +28,10 @@ testcocoon {
mac:!ios: LIBS_PRIVATE += -framework Cocoa
+win32:contains(QT_CONFIG, angle) {
+ LIBS_PRIVATE += -lGLESv2
+}
+
CONFIG += simd optimize_full
include(accessible/accessible.pri)
@@ -56,13 +55,21 @@ win32: CMAKE_WINDOWS_BUILD = True
contains(QT_CONFIG, angle) {
CMAKE_GL_INCDIRS = $$CMAKE_INCLUDE_DIR
CMAKE_ANGLE_EGL_DLL_RELEASE = libEGL.dll
- CMAKE_ANGLE_EGL_IMPLIB_RELEASE = libEGL.lib
CMAKE_ANGLE_GLES2_DLL_RELEASE = libGLESv2.dll
- CMAKE_ANGLE_GLES2_IMPLIB_RELEASE = libGLESv2.lib
CMAKE_ANGLE_EGL_DLL_DEBUG = libEGLd.dll
- CMAKE_ANGLE_EGL_IMPLIB_DEBUG = libEGLd.lib
CMAKE_ANGLE_GLES2_DLL_DEBUG = libGLESv2d.dll
- CMAKE_ANGLE_GLES2_IMPLIB_DEBUG = libGLESv2d.lib
+
+ win32-g++* {
+ CMAKE_ANGLE_EGL_IMPLIB_RELEASE = libEGL.dll.a
+ CMAKE_ANGLE_GLES2_IMPLIB_RELEASE = libGLESv2.dll.a
+ CMAKE_ANGLE_EGL_IMPLIB_DEBUG = libEGLd.dll.a
+ CMAKE_ANGLE_GLES2_IMPLIB_DEBUG = libGLESv2d.dll.a
+ } else {
+ CMAKE_ANGLE_EGL_IMPLIB_RELEASE = libEGL.lib
+ CMAKE_ANGLE_GLES2_IMPLIB_RELEASE = libGLESv2.lib
+ CMAKE_ANGLE_EGL_IMPLIB_DEBUG = libEGLd.lib
+ CMAKE_ANGLE_GLES2_IMPLIB_DEBUG = libGLESv2d.lib
+ }
CMAKE_QT_OPENGL_IMPLEMENTATION = GLESv2
} else {
diff --git a/src/opengl/opengl.pro b/src/opengl/opengl.pro
index 007f73c..bdbc54b 100644
--- a/src/opengl/opengl.pro
+++ b/src/opengl/opengl.pro
@@ -11,6 +11,10 @@ QMAKE_DOCS = $$PWD/doc/qtopengl.qdocconf
contains(QT_CONFIG, opengl):CONFIG += opengl
contains(QT_CONFIG, opengles2):CONFIG += opengles2
+win32:contains(QT_CONFIG, angle) {
+ LIBS_PRIVATE += -lGLESv2
+}
+
HEADERS += qgl.h \
qgl_p.h \
qglcolormap.h \
diff --git a/src/plugins/platforms/windows/windows.pri b/src/plugins/platforms/windows/windows.pri
index aee6927..feedde6 100644
--- a/src/plugins/platforms/windows/windows.pri
+++ b/src/plugins/platforms/windows/windows.pri
@@ -3,6 +3,7 @@ LIBS *= -lole32
!wince: LIBS *= -luser32 -lwinspool -limm32 -lwinmm -loleaut32
contains(QT_CONFIG, opengl):!contains(QT_CONFIG, opengles2):!contains(QT_CONFIG, dynamicgl): LIBS *= -lopengl32
+contains(QT_CONFIG, angle):LIBS += -lGLESv2 -lEGL
mingw: LIBS *= -luuid
# For the dialog helpers:
diff --git a/src/src.pro b/src/src.pro
index 8c18c8d..241dd7d 100644
--- a/src/src.pro
+++ b/src/src.pro
@@ -158,10 +158,6 @@ contains(QT_CONFIG, concurrent):SUBDIRS += src_concurrent
SUBDIRS += src_3rdparty_harfbuzzng
src_gui.depends += src_3rdparty_harfbuzzng
}
- win32:contains(QT_CONFIG, angle)|contains(QT_CONFIG, dynamicgl) {
- SUBDIRS += src_angle
- src_gui.depends += src_angle
- }
contains(QT_CONFIG, freetype) {
SUBDIRS += src_3rdparty_freetype
src_platformsupport.depends += src_3rdparty_freetype