aboutsummaryrefslogtreecommitdiff
path: root/ports/qt5-base/patches
diff options
context:
space:
mode:
authorAlexander Neumann <30894796+Neumann-A@users.noreply.github.com>2019-09-12 19:07:22 +0200
committerPhil Christensen <philc@microsoft.com>2019-09-12 10:07:21 -0700
commit96f4487c77fbf08518a9ee665612927c97ce8ebd (patch)
treea7b610226f798bda208a6459f26afa9922fb5dde /ports/qt5-base/patches
parentecfc714b9adbdf8bf6b394dd6b46d9c56ca993ea (diff)
downloadvcpkg-96f4487c77fbf08518a9ee665612927c97ce8ebd.tar.gz
vcpkg-96f4487c77fbf08518a9ee665612927c97ce8ebd.zip
[Qt] Update to 5.12.4 (#7667)
* update to 5.12.4 * removed port qt5-modularscripts and split it functionality into more functions into qt5-base * added qt_port_hashes.cmake for simpler upgrade. * added optional VCPKG_QT_HOST_MKSPEC and VCPKG_QT_TARGET_MKSPEC to select QTs build mkspecs from a triplet * qt_<config>.conf are now copied from the build dir instead from the port dir * fixed freetype dependencies. * cleanup of vcpkg_qmake scripts. No strange/unclear replacements anymore. * introduced vcpkg_buildpath_length_warning * changed directory layout of the qt5 installation executables and mkspecs a bit.
Diffstat (limited to 'ports/qt5-base/patches')
-rw-r--r--ports/qt5-base/patches/gui_configure.patch16
-rw-r--r--ports/qt5-base/patches/qt_app.patch17
-rw-r--r--ports/qt5-base/patches/static_opengl.patch62
-rw-r--r--ports/qt5-base/patches/windows_prf.patch13
-rw-r--r--ports/qt5-base/patches/winmain_pro.patch27
5 files changed, 135 insertions, 0 deletions
diff --git a/ports/qt5-base/patches/gui_configure.patch b/ports/qt5-base/patches/gui_configure.patch
new file mode 100644
index 000000000..31c29dbeb
--- /dev/null
+++ b/ports/qt5-base/patches/gui_configure.patch
@@ -0,0 +1,16 @@
+diff --git a/src/gui/configure.json b/src/gui/configure.json
+index c51e3ceee..7f7e206b6 100644
+--- a/src/gui/configure.json
++++ b/src/gui/configure.json
+@@ -239,9 +239,9 @@
+ "headers": "ft2build.h",
+ "sources": [
+ { "type": "pkgConfig", "args": "freetype2" },
+- { "type": "freetype", "libs": "-lfreetype", "condition": "!config.wasm" },
++ { "type": "freetype", "libs": "-lbreakfreetypeautofind", "condition": "!config.wasm" },
+ { "libs": "-s USE_FREETYPE=1", "condition": "config.wasm" },
+- { "libs": "-lfreetype" }
++ { "libs": "-lbreakfreetypeautofind" }
+ ],
+ "use": [
+ { "lib": "zlib", "condition": "features.system-zlib" }
diff --git a/ports/qt5-base/patches/qt_app.patch b/ports/qt5-base/patches/qt_app.patch
new file mode 100644
index 000000000..e04446bf2
--- /dev/null
+++ b/ports/qt5-base/patches/qt_app.patch
@@ -0,0 +1,17 @@
+diff --git a/mkspecs/features/qt_app.prf b/mkspecs/features/qt_app.prf
+index 8354f30e..8f24b72e 100644
+--- a/mkspecs/features/qt_app.prf
++++ b/mkspecs/features/qt_app.prf
+@@ -27,10 +27,11 @@ host_build:force_bootstrap {
+ QT -= core core-private xml
+ QT += bootstrap-private
+ }
+ target.path = $$[QT_HOST_BINS]
++ CONFIG += relative_qt_rpath # Qt's tools and apps should be relocatable
+ } else {
+ !build_pass:qtConfig(debug_and_release): CONFIG += release
+- target.path = $$[QT_INSTALL_BINS]
++ target.path = $$[QT_HOST_BINS]
+ CONFIG += relative_qt_rpath # Qt's tools and apps should be relocatable
+ }
+ INSTALLS += target
diff --git a/ports/qt5-base/patches/static_opengl.patch b/ports/qt5-base/patches/static_opengl.patch
new file mode 100644
index 000000000..51818b8b7
--- /dev/null
+++ b/ports/qt5-base/patches/static_opengl.patch
@@ -0,0 +1,62 @@
+diff --git a/mkspecs/features/win32/opengl.prf b/mkspecs/features/win32/opengl.prf
+index f21848f94..202c49688 100644
+--- a/mkspecs/features/win32/opengl.prf
++++ b/mkspecs/features/win32/opengl.prf
+@@ -30,7 +30,7 @@ qtConfig(opengles2) {
+ LIBS += $$QMAKE_LIBS_OPENGL_ES2
+ QMAKE_LIBDIR += $$QMAKE_LIBDIR_OPENGL_ES2_RELEASE
+ }
+- qtConfig(static): DEFINES += GL_APICALL= EGLAPI=
++ qtConfig(static): DEFINES += _GDI32_ GL_APICALL= EGLAPI= ANGLE_EXPORT= ANGLE_PLATFORM_EXPORT=
+ } else {
+ !qtConfig(dynamicgl) {
+ QMAKE_LIBS += $$QMAKE_LIBS_OPENGL
+diff --git a/src/angle/src/common/gles_common.pri b/src/angle/src/common/gles_common.pri
+index 70b65dd4c..1dcc96af5 100644
+--- a/src/angle/src/common/gles_common.pri
++++ b/src/angle/src/common/gles_common.pri
+@@ -23,7 +23,8 @@ for(libname, STATICLIBS) {
+ PRE_TARGETDEPS += $$staticlib
+ }
+
+-DEFINES += LIBANGLE_IMPLEMENTATION LIBGLESV2_IMPLEMENTATION GL_APICALL= GL_GLEXT_PROTOTYPES= EGLAPI=
++!qtConfig(static): DEFINES += LIBANGLE_IMPLEMENTATION LIBGLESV2_IMPLEMENTATION
++qtConfig(static): DEFINES += GL_APICALL= EGLAPI= ANGLE_EXPORT= ANGLE_PLATFORM_EXPORT=
+ !winrt: DEFINES += ANGLE_ENABLE_D3D9 ANGLE_SKIP_DXGI_1_2_CHECK
+
+ QT_FOR_CONFIG += gui-private
+diff --git a/src/3rdparty/angle/include/platform/Platform.h b/src/3rdparty/angle/include/platform/Platform.h
+index aa1221a86..a49ee4f6d 100644
+--- a/src/3rdparty/angle/include/platform/Platform.h
++++ b/src/3rdparty/angle/include/platform/Platform.h
+@@ -12,7 +12,7 @@
+ #include <stdint.h>
+ #include <array>
+
+-#if defined(_WIN32)
++#if defined(_WIN32) && !defined(ANGLE_PLATFORM_EXPORT)
+ # if !defined(LIBANGLE_IMPLEMENTATION)
+ # define ANGLE_PLATFORM_EXPORT __declspec(dllimport)
+ # else
+diff --git a/src/3rdparty/angle/src/libGLESv2/entry_points_gles_2_0_ext.cpp b/src/3rdparty/angle/src/libGLESv2/entry_points_gles_2_0_ext.cpp
+index d4459ec28..d1416041e 100644
+--- a/src/3rdparty/angle/src/libGLESv2/entry_points_gles_2_0_ext.cpp
++++ b/src/3rdparty/angle/src/libGLESv2/entry_points_gles_2_0_ext.cpp
+@@ -3505,7 +3505,7 @@ ANGLE_EXPORT void GL_APIENTRY GetQueryObjectui64vRobustANGLE(GLuint id,
+ }
+ }
+
+-GL_APICALL void GL_APIENTRY FramebufferTextureMultiviewLayeredANGLE(GLenum target,
++ANGLE_EXPORT void GL_APIENTRY FramebufferTextureMultiviewLayeredANGLE(GLenum target,
+ GLenum attachment,
+ GLuint texture,
+ GLint level,
+@@ -3530,7 +3530,7 @@ GL_APICALL void GL_APIENTRY FramebufferTextureMultiviewLayeredANGLE(GLenum targe
+ }
+ }
+
+-GL_APICALL void GL_APIENTRY FramebufferTextureMultiviewSideBySideANGLE(GLenum target,
++ANGLE_EXPORT void GL_APIENTRY FramebufferTextureMultiviewSideBySideANGLE(GLenum target,
+ GLenum attachment,
+ GLuint texture,
+ GLint level,
diff --git a/ports/qt5-base/patches/windows_prf.patch b/ports/qt5-base/patches/windows_prf.patch
new file mode 100644
index 000000000..6051daae8
--- /dev/null
+++ b/ports/qt5-base/patches/windows_prf.patch
@@ -0,0 +1,13 @@
+diff --git a/mkspecs/features/win32/windows.prf b/mkspecs/features/win32/windows.prf
+index 272170d4..70b8ea2e 100644
+--- a/mkspecs/features/win32/windows.prf
++++ b/mkspecs/features/win32/windows.prf
+@@ -6,7 +6,7 @@ contains(TEMPLATE, ".*app") {
+
+ qt:for(entryLib, $$list($$unique(QMAKE_LIBS_QT_ENTRY))) {
+ isEqual(entryLib, -lqtmain) {
+- lib = $$QT.core.libs/$${QMAKE_PREFIX_STATICLIB}qtmain$$QT_LIBINFIX$$qtPlatformTargetSuffix().$$QMAKE_EXTENSION_STATICLIB
++ lib = $$QT.core.libs/manual-link/$${QMAKE_PREFIX_STATICLIB}qtmain$$QT_LIBINFIX$$qtPlatformTargetSuffix().$$QMAKE_EXTENSION_STATICLIB
+ PRE_TARGETDEPS += $$lib
+ QMAKE_LIBS += $$lib
+ } else {
diff --git a/ports/qt5-base/patches/winmain_pro.patch b/ports/qt5-base/patches/winmain_pro.patch
new file mode 100644
index 000000000..66460ccd6
--- /dev/null
+++ b/ports/qt5-base/patches/winmain_pro.patch
@@ -0,0 +1,27 @@
+diff --git a/src/winmain/winmain.pro b/src/winmain/winmain.pro
+index 9cb6ab0c..52c7876e 100644
+--- a/src/winmain/winmain.pro
++++ b/src/winmain/winmain.pro
+@@ -3,7 +3,7 @@
+
+ TEMPLATE = lib
+ TARGET = qtmain
+-DESTDIR = $$QT.core.libs
++DESTDIR = $$QT.core.libs/manual-link
+
+ CONFIG += static
+ QT = core
+@@ -27,7 +27,12 @@ winrt {
+ }
+
+ load(qt_installs)
+-
++!qt_no_install_library {
++ host_build: \
++ target.path = $$[QT_HOST_LIBS]/manual-link
++ else: \
++ target.path = $$[QT_INSTALL_LIBS]/manual-link
++}
+ TARGET = $$qtLibraryTarget($$TARGET$$QT_LIBINFIX) #do this towards the end
+
+ load(qt_targets)