summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO73
-rw-r--r--0001-Adjust-win32-g-profile-for-cross-compilation-with-mi.patch16
-rw-r--r--0002-Ensure-GLdouble-is-defined-when-using-dynamic-OpenGL.patch6
-rw-r--r--0003-Fix-too-many-sections-assemler-error-in-OpenGL-facto.patch6
-rw-r--r--0004-Make-sure-.pc-files-are-installed-correctly.patch20
-rw-r--r--0005-Don-t-add-resource-files-to-LIBS-parameter.patch10
-rw-r--r--0006-Prevent-debug-library-names-in-pkg-config-files.patch10
-rw-r--r--0007-Fix-linking-against-shared-static-libpng.patch10
-rw-r--r--0008-Fix-linking-against-static-D-Bus.patch10
-rw-r--r--0009-Don-t-try-to-use-debug-version-of-D-Bus-library.patch10
-rw-r--r--0010-Fix-linking-against-static-freetype2.patch10
-rw-r--r--0011-Fix-linking-against-static-harfbuzz.patch10
-rw-r--r--0012-Fix-linking-against-static-pcre.patch16
-rw-r--r--0013-Fix-linking-against-shared-static-MariaDB.patch6
-rw-r--r--0014-Fix-linking-against-shared-static-PostgreSQL.patch6
-rw-r--r--0015-Rename-qtmain-to-qt5main.patch14
-rw-r--r--0016-Enable-rpath-for-build-tools.patch6
-rw-r--r--0017-Use-system-zlib-for-build-tools.patch10
-rw-r--r--0018-Merge-shared-and-static-library-trees.patch26
-rw-r--r--0019-Use-.dll.a-as-import-lib-extension.patch20
-rw-r--r--0020-Pull-dependencies-of-static-libraries-in-CMake-modul.patch160
-rw-r--r--0021-Allow-usage-of-static-version-with-CMake.patch162
-rw-r--r--0022-Adjust-linker-flags-for-static-build-with-cmake-ming.patch12
-rw-r--r--0023-Use-correct-pkg-config-static-flag.patch8
-rw-r--r--0024-Fix-macro-invoking-moc-rcc-and-uic.patch8
-rw-r--r--0025-Ignore-errors-about-missing-feature-static.patch14
-rw-r--r--0026-Enable-and-fix-use-of-iconv.patch10
-rw-r--r--0027-Ignore-failing-pkg-config-test.patch10
-rw-r--r--0028-Prevent-qmake-from-messing-static-lib-dependencies.patch20
-rw-r--r--0029-Hardcode-linker-flags-for-platform-plugins.patch25
-rw-r--r--0030-Fix-linking-against-static-plugins-with-qmake.patch6
-rw-r--r--0031-Prevent-Cannot-find-feature-windows_vulkan_sdk.patch (renamed from 0032-Prevent-Cannot-find-feature-windows_vulkan_sdk.patch)8
-rw-r--r--0031-Prevent-static-build-to-prefer-dynamic-libraries.patch37
-rw-r--r--PKGBUILD99
34 files changed, 500 insertions, 374 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 5a38f54f37d..2e37fb89c10 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = mingw-w64-qt5-base-static
pkgdesc = A cross-platform application and UI framework (mingw-w64)
- pkgver = 5.13.2
+ pkgver = 5.14.0
pkgrel = 1
url = https://www.qt.io/
arch = any
@@ -14,6 +14,7 @@ pkgbase = mingw-w64-qt5-base-static
makedepends = mingw-w64-mariadb-connector-c
makedepends = mingw-w64-vulkan-headers
makedepends = mingw-w64-pkg-config
+ makedepends = mingw-w64-environment
depends = mingw-w64-crt
depends = mingw-w64-zlib
depends = mingw-w64-libjpeg-turbo
@@ -31,7 +32,7 @@ pkgbase = mingw-w64-qt5-base-static
options = !buildflags
options = staticlibs
options = !emptydirs
- source = https://download.qt.io/official_releases/qt/5.13/5.13.2/submodules/qtbase-everywhere-src-5.13.2.tar.xz
+ source = https://download.qt.io/official_releases/qt/5.14/5.14.0/submodules/qtbase-everywhere-src-5.14.0.tar.xz
source = 0001-Adjust-win32-g-profile-for-cross-compilation-with-mi.patch
source = 0002-Ensure-GLdouble-is-defined-when-using-dynamic-OpenGL.patch
source = 0003-Fix-too-many-sections-assemler-error-in-OpenGL-facto.patch
@@ -62,41 +63,39 @@ pkgbase = mingw-w64-qt5-base-static
source = 0028-Prevent-qmake-from-messing-static-lib-dependencies.patch
source = 0029-Hardcode-linker-flags-for-platform-plugins.patch
source = 0030-Fix-linking-against-static-plugins-with-qmake.patch
- source = 0031-Prevent-static-build-to-prefer-dynamic-libraries.patch
- source = 0032-Prevent-Cannot-find-feature-windows_vulkan_sdk.patch
- sha256sums = 26b6b686d66a7ad28eaca349e55e2894e5a735f3831e45f2049e93b1daa92121
- sha256sums = 35196184205cb58bdb1ade09c02bfc660679ed4af6dc1d807a24f1c52999545e
- sha256sums = 4c66ecd2e2e215afb7f53382139b5a3a9cc87bfec2dd75af3ab8111ce3556378
- sha256sums = dcc5acb3e160b99101b967bd696dd48a099c65754b3908c16b46c1703f134e08
- sha256sums = 586bea4aa870423778eb497df48479819aa50de8d07977327eb1a0f84565813a
- sha256sums = b5363b325198c3cfaba6437d21cc2cde6c5843d33475fc559f9eae4b20e0c867
- sha256sums = 9f835025a78ab4d7dd08b1a2cb5d499790b8e01a3039741f50c93bc6722f3c71
- sha256sums = 5217bae23859289898060a05769cc6088852f09206d7fc681cdcb492353be219
- sha256sums = 39d32e743984904c878616afb8ffd16ad5421bc2e67606831a4245b9ef924c7b
- sha256sums = f5fc4b36f288bb59d662c58b49a15de84f60be05d13e89719342893138f9a903
- sha256sums = 48f5efe578913656ab79a35f899e15bd09fde58cc10adf8f7f5dbdc0a5022b7d
- sha256sums = f89779100c07431fee063e0f40bcb0006662794afa522e9c5a57ac1eca24f621
- sha256sums = f5ea9cc35754556045dd2dc07745bca89f677ade9b8566539c717d35f4ae0bd1
- sha256sums = 212aeb8f2f287108d2d884c17c2f55177b8f3c39e10357e36c2f1ef2e582a12a
- sha256sums = 2e7145b8a8fca349ce5838d4241d29059dd421c8722260cda5d063b75ffe3b5f
- sha256sums = c0eff682bbc11e2258c5c40591d0222e88af0d2c136b3cede8e4792a7efba2d3
- sha256sums = 8d3879a05e0fe574671bb8952393a4e7ca44183e8116053dbf01776b2d6ad4cf
- sha256sums = 8b06afd5adab795a47520f1dfdb8827507f8d451eb98a02dbf1b57ede08fa6e2
- sha256sums = 21f7e13919ec7d6ae88835ce34185f7d3ff3c541a1a7bad25e4354fac0201723
- sha256sums = 5e08c43b1a4bfc1dfe93330119cfb85d5de873b8642cbf920d4cfbdad05a7ce5
- sha256sums = ee0412e276bac12f57f1019807f678818cc3b166afaa2523e6d3cfbcc6baf5bf
- sha256sums = f5f57e3b1e6314203bb3a98d7ad47c46b4894651b7d4e74749df6b7f0f7548f5
- sha256sums = 22bdbef1d761426c0388a5335c2b80be52aa75e83c75f1d134eba70091de59ed
- sha256sums = fd37d3c487790922e6dede40964d6a8abab9908d674413748c37672863374a65
- sha256sums = 1c4b6e6bbc985b742e4d2124b7be002948b2cb43be4524b8b713253f2afebe96
- sha256sums = 94de3861dedd76133bd3e42793f3db3a1e8b52a921095ff853038cb5b4064a5f
- sha256sums = cd4c07f83cad7b8b1fb2995a398a3ac2ed9b4606efc0154231821db7f793676c
- sha256sums = b15f3a0d0dd1c14c5728444ad449f2753f6c668e73e6e2ad0477fab405c338e9
- sha256sums = 45af95f6f2e228f04ee3e39756cf752a04a0e58da5ed445ab79dbac0c8c7472f
- sha256sums = 29ded7cd3b82e31660d4559f0d2cefde8e18af8c4cea34fd816096946ad72189
- sha256sums = 13aa6ba82a4a28099c0219060deab3d3023424a8c5dcf8df6b105f3831a9a184
- sha256sums = 095a39a517844a3c3ce9282a44f39478dc6d5661b6be7f5b8517f195f0fe1b14
- sha256sums = f8aa4f1a129d0fd98f71e9a108513ff9ca78b3d86a80554e830cf6f1ba5edb00
+ source = 0031-Prevent-Cannot-find-feature-windows_vulkan_sdk.patch
+ sha256sums = 4ef921c0f208a1624439801da8b3f4344a3793b660ce1095f2b7f5c4246b9463
+ sha256sums = 1f4fd0f8518160f3ec0e5bc39226d857387aa4caec897201999d8eada2b328ef
+ sha256sums = 450aba36cf8c60a8659406f9367a85e2055a40e1cf0a8711c6de44de1927d857
+ sha256sums = 7899cdcd3450f5f0bb9cb4cd71ac6529285d4368586e1a2fabb4e14d7b3dee67
+ sha256sums = 579595a48fa45191941f393defe155c57d02426e6eba1296f3f7f501f6f32576
+ sha256sums = 1d233841e73c8f69a1d09b666438b26299530b23ac354e6e1e0ccbe58f3ed54c
+ sha256sums = 56bdecf98463853875e257cc347141967d1edd48e21b0724d16012dd1cc8ef90
+ sha256sums = 28155531ed86617a074c7a2ac8d753c052707034009ad5dcbf0f2c6dc00ee977
+ sha256sums = 8f5c7da6b4ae5ce95d887372398fb147678748bca1b8970901bb0417b3440423
+ sha256sums = f1f71a736d2cbe9aa3ac04343ae171ef3fda32b5db93bd189c9fc5510c9210e4
+ sha256sums = c4b45dd1d19331caaa7ac89cb0d276cb6ec53ee1d2ed2f72fb119d1af000e907
+ sha256sums = 2d74d87a8da273ed296890a7a717ea8c84242a2af534830ba07a44be88d90d70
+ sha256sums = 37f11888ee60b68570b759ec66e1ab49e0bb0df0663b808380df5b34f054b5fe
+ sha256sums = 68d3eeea07f398133d068151ca5ba65d5bf4e1396a7db739cdd77377e261a785
+ sha256sums = 6e5ab1df1c7aac94259aca4bb8c8469939a944104cc847ddf4fdaf7f278dd225
+ sha256sums = 4e421ed2b892911725a4a3e6aad9803339dc6d27af9a5caba0dcf082f5a08fa7
+ sha256sums = f0629049a60362f83ebd3e9a6a67d71274e9c2f2eae21ba97062b8d5b11d759a
+ sha256sums = 31d08dbfde790dd702d87f3b995322118919fc9828f22c9b1c044e912ae6f870
+ sha256sums = 8ab7f64f5d017b650c39aa6e845252be71e4f37a1bfdfeee0f17aec65e233728
+ sha256sums = 6c95b8fa7ed5a2c8fb48a237d172916c6b1f3197f32b3e627216d6c9759bce14
+ sha256sums = 74a4fe7f163bba1312cda135c983644260cc8794cdd950385212911eb27d985c
+ sha256sums = 7e415f8aad7d950add53466406ea3e0cb67180ce6493ea768937bb96ff8de33d
+ sha256sums = eb02f4a52b712dcf8bffe57cec420b77bea060e8227f28239056b0721c494075
+ sha256sums = 62a99e8e345fe776619fb5928334c40d4116e7fae59c773de70ef690dfec1d5f
+ sha256sums = 87e271140d4a831a9feac53a7d0d7fae0fee9a1c20040a3181a43472c3e6f15a
+ sha256sums = c5162eac72b87e34fcbc64c53f38c0a3dd2b174cdb049db258d899510c4febfb
+ sha256sums = 1d4956c53a0759988d68ebfcae12d74f1332db075efdd85d762629d12421678c
+ sha256sums = fd2eeb783fcc83fa7951b7fd07a87033f0229827282b4142047378297688a4b9
+ sha256sums = c9cb158dbc2d5446f36f031478e7174188660150a1b7bcb94d7f761a51aa7342
+ sha256sums = 7611dcb33265962ecfab480771db0360f1083c7672ba874b83b335e18d8909a5
+ sha256sums = f5b2a9a54eacc2d86531005b222dff7a3313430baa55d5bae407a5fdb6028d07
+ sha256sums = 65889bbb2ed14dd9e7a884a6a9015b883bbfc0d558210cc296bb3d41bee4212e
pkgname = mingw-w64-qt5-base-static
diff --git a/0001-Adjust-win32-g-profile-for-cross-compilation-with-mi.patch b/0001-Adjust-win32-g-profile-for-cross-compilation-with-mi.patch
index bddf956c825..53e8dfc4720 100644
--- a/0001-Adjust-win32-g-profile-for-cross-compilation-with-mi.patch
+++ b/0001-Adjust-win32-g-profile-for-cross-compilation-with-mi.patch
@@ -1,7 +1,7 @@
-From e04f26325dae3daefcdfcb8f744e262faee0c508 Mon Sep 17 00:00:00 2001
+From b9877c6af8be840543ce928bf0a54bd3dc5f186e Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Fri, 3 Feb 2017 18:30:51 +0100
-Subject: [PATCH 01/32] Adjust win32-g++ profile for cross compilation with
+Subject: [PATCH 01/31] Adjust win32-g++ profile for cross compilation with
mingw-w64
Adding a new, separate mkspec instead of patching the existing one
@@ -12,6 +12,8 @@ So for this to work, the mkspec must be called win32-g++.
Also see the following issues:
* https://github.com/Martchus/PKGBUILDs/issues/59
* https://github.com/Martchus/PKGBUILDs/issues/60
+
+Change-Id: I4c9b3c170ed13943abe0d8b397a8cb9e360538b6
---
mkspecs/common/g++-win32.conf | 52 ++++++++++++++++++++----------
mkspecs/win32-clang-g++/qmake.conf | 4 +--
@@ -19,7 +21,7 @@ Also see the following issues:
3 files changed, 39 insertions(+), 21 deletions(-)
diff --git a/mkspecs/common/g++-win32.conf b/mkspecs/common/g++-win32.conf
-index c3a1f3a373..5208d22bd6 100644
+index 6369436863..17d2a5efec 100644
--- a/mkspecs/common/g++-win32.conf
+++ b/mkspecs/common/g++-win32.conf
@@ -8,18 +8,24 @@
@@ -41,10 +43,10 @@ index c3a1f3a373..5208d22bd6 100644
MAKEFILE_GENERATOR = MINGW
QMAKE_PLATFORM = win32 mingw
--CONFIG += debug_and_release debug_and_release_target precompile_header
+-CONFIG += precompile_header
-DEFINES += UNICODE _UNICODE WIN32 MINGW_HAS_SECURE_API=1
-QMAKE_COMPILER_DEFINES += __GNUC__ _WIN32
-+CONFIG += debug_and_release debug_and_release_target precompile_header $${CROSS_COMPILE_CUSTOM_CONFIG}
++CONFIG += precompile_header $${CROSS_COMPILE_CUSTOM_CONFIG}
+DEFINES += UNICODE _UNICODE MINGW_HAS_SECURE_API=1
+QMAKE_COMPILER_DEFINES += __GNUC__ _WIN32 WIN32
# can't add 'DEFINES += WIN64' and 'QMAKE_COMPILER_DEFINES += _WIN64' defines for
@@ -125,7 +127,7 @@ index c3a1f3a373..5208d22bd6 100644
-include(angle.conf)
-include(windows-vulkan.conf)
diff --git a/mkspecs/win32-clang-g++/qmake.conf b/mkspecs/win32-clang-g++/qmake.conf
-index 4630ec4602..3f9fdc72b1 100644
+index 59d42176f0..f8cb9859f2 100644
--- a/mkspecs/win32-clang-g++/qmake.conf
+++ b/mkspecs/win32-clang-g++/qmake.conf
@@ -14,11 +14,11 @@ include(../common/g++-win32.conf)
@@ -161,5 +163,5 @@ index 5de482f23b..3c3d22c699 100644
QMAKE_LINK = $${CROSS_COMPILE}g++
--
-2.24.0
+2.24.1
diff --git a/0002-Ensure-GLdouble-is-defined-when-using-dynamic-OpenGL.patch b/0002-Ensure-GLdouble-is-defined-when-using-dynamic-OpenGL.patch
index d5e043920d0..1a5e0fd1b73 100644
--- a/0002-Ensure-GLdouble-is-defined-when-using-dynamic-OpenGL.patch
+++ b/0002-Ensure-GLdouble-is-defined-when-using-dynamic-OpenGL.patch
@@ -1,7 +1,7 @@
-From 66aaead6f7f57adf266115ac9764c21839c8505c Mon Sep 17 00:00:00 2001
+From be14c1951af73ccc2e7a9bbde0db332a0aa3fe6f Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Sun, 18 Sep 2016 13:36:53 +0200
-Subject: [PATCH 02/32] Ensure GLdouble is defined when using dynamic OpenGL
+Subject: [PATCH 02/31] Ensure GLdouble is defined when using dynamic OpenGL
FIXME: Not sure whether this is still required
---
@@ -23,5 +23,5 @@ index 4554291bbd..23d55bddeb 100644
#ifdef Q_ENABLE_OPENGL_FUNCTIONS_DEBUG
#include <stdio.h>
--
-2.24.0
+2.24.1
diff --git a/0003-Fix-too-many-sections-assemler-error-in-OpenGL-facto.patch b/0003-Fix-too-many-sections-assemler-error-in-OpenGL-facto.patch
index 4e63f417299..0c6e3f1562b 100644
--- a/0003-Fix-too-many-sections-assemler-error-in-OpenGL-facto.patch
+++ b/0003-Fix-too-many-sections-assemler-error-in-OpenGL-facto.patch
@@ -1,7 +1,7 @@
-From 493c7f41180718b024b773cca1c23a4b0c7a8213 Mon Sep 17 00:00:00 2001
+From 982428d4be89771ffcafc850d30b47ecfdeebcc5 Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Sun, 18 Sep 2016 13:48:51 +0200
-Subject: [PATCH 03/32] Fix too many sections assemler error in OpenGL factory
+Subject: [PATCH 03/31] Fix too many sections assemler error in OpenGL factory
On x86_64 qopenglversionfunctionsfactory.o exceeds the
limit of 32768 sections.
@@ -25,5 +25,5 @@ index 24758afdeb..aa04b4a672 100644
HEADERS += opengl/qopengl.h \
opengl/qopengl_p.h \
--
-2.24.0
+2.24.1
diff --git a/0004-Make-sure-.pc-files-are-installed-correctly.patch b/0004-Make-sure-.pc-files-are-installed-correctly.patch
index 572c8a08dc1..7c6eba38d3f 100644
--- a/0004-Make-sure-.pc-files-are-installed-correctly.patch
+++ b/0004-Make-sure-.pc-files-are-installed-correctly.patch
@@ -1,7 +1,7 @@
-From f72528e215897c6064ec0ae1132b6b103efaf69b Mon Sep 17 00:00:00 2001
+From 499284b7e311cd91dc674ae924d49ceb86c36809 Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Sun, 18 Sep 2016 13:54:12 +0200
-Subject: [PATCH 04/32] Make sure *.pc files are installed correctly
+Subject: [PATCH 04/31] Make sure *.pc files are installed correctly
---
qmake/generators/makefile.cpp | 8 ++++++--
@@ -10,10 +10,10 @@ Subject: [PATCH 04/32] Make sure *.pc files are installed correctly
3 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp
-index 22ac7bf534..003ad2baf2 100644
+index ed7d057a88..1694dea086 100644
--- a/qmake/generators/makefile.cpp
+++ b/qmake/generators/makefile.cpp
-@@ -3245,7 +3245,7 @@ MakefileGenerator::openOutput(QFile &file, const QString &build) const
+@@ -3212,7 +3212,7 @@ MakefileGenerator::openOutput(QFile &file, const QString &build) const
}
QString
@@ -22,7 +22,7 @@ index 22ac7bf534..003ad2baf2 100644
{
QString ret = project->first("QMAKE_PKGCONFIG_FILE").toQString();
if (ret.isEmpty()) {
-@@ -3270,7 +3270,11 @@ MakefileGenerator::pkgConfigFileName(bool fixify)
+@@ -3237,7 +3237,11 @@ MakefileGenerator::pkgConfigFileName(bool fixify)
if(fixify) {
if(QDir::isRelativePath(ret) && !project->isEmpty("DESTDIR"))
ret.prepend(project->first("DESTDIR").toQString());
@@ -36,10 +36,10 @@ index 22ac7bf534..003ad2baf2 100644
return ret;
}
diff --git a/qmake/generators/makefile.h b/qmake/generators/makefile.h
-index 350ebd377a..d0c234b864 100644
+index 47e4c7531c..057853a4ce 100644
--- a/qmake/generators/makefile.h
+++ b/qmake/generators/makefile.h
-@@ -92,7 +92,7 @@ protected:
+@@ -95,7 +95,7 @@ protected:
virtual void writeDefaultVariables(QTextStream &t);
QString pkgConfigPrefix() const;
@@ -49,10 +49,10 @@ index 350ebd377a..d0c234b864 100644
void writePkgConfigFile(); // for pkg-config
diff --git a/qmake/generators/win32/winmakefile.cpp b/qmake/generators/win32/winmakefile.cpp
-index 266bae7e64..8222854cfc 100644
+index 86d10c213c..c1b28a52e9 100644
--- a/qmake/generators/win32/winmakefile.cpp
+++ b/qmake/generators/win32/winmakefile.cpp
-@@ -753,7 +753,7 @@ QString Win32MakefileGenerator::defaultInstall(const QString &t)
+@@ -761,7 +761,7 @@ QString Win32MakefileGenerator::defaultInstall(const QString &t)
}
if(!ret.isEmpty())
ret += "\n\t";
@@ -62,5 +62,5 @@ index 266bae7e64..8222854cfc 100644
uninst.append("\n\t");
uninst.append("-$(DEL_FILE) " + escapeFilePath(dst_pc));
--
-2.24.0
+2.24.1
diff --git a/0005-Don-t-add-resource-files-to-LIBS-parameter.patch b/0005-Don-t-add-resource-files-to-LIBS-parameter.patch
index 76170a23709..f56a080f09a 100644
--- a/0005-Don-t-add-resource-files-to-LIBS-parameter.patch
+++ b/0005-Don-t-add-resource-files-to-LIBS-parameter.patch
@@ -1,7 +1,7 @@
-From e9a7328ecd61bf62730661b4af1e4bf9548cbc08 Mon Sep 17 00:00:00 2001
+From 0b7f7b8e98ade7ba816c2439e35cd60d9a5c67ac Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Sun, 18 Sep 2016 13:58:28 +0200
-Subject: [PATCH 05/32] Don't add resource files to LIBS parameter
+Subject: [PATCH 05/31] Don't add resource files to LIBS parameter
Solves an issue where the generated pkg-config
files contained invalid Libs.private references
@@ -11,10 +11,10 @@ like .obj/debug/Qt5Cored_resource_res.o
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/qmake/generators/win32/mingw_make.cpp b/qmake/generators/win32/mingw_make.cpp
-index 2175841264..c565d44e67 100644
+index 096b041056..eb498b28e8 100644
--- a/qmake/generators/win32/mingw_make.cpp
+++ b/qmake/generators/win32/mingw_make.cpp
-@@ -192,7 +192,7 @@ void MingwMakefileGenerator::init()
+@@ -152,7 +152,7 @@ void MingwMakefileGenerator::init()
processVars();
@@ -24,5 +24,5 @@ index 2175841264..c565d44e67 100644
if (project->isActiveConfig("dll")) {
QString destDir = "";
--
-2.24.0
+2.24.1
diff --git a/0006-Prevent-debug-library-names-in-pkg-config-files.patch b/0006-Prevent-debug-library-names-in-pkg-config-files.patch
index 20206734640..8dcaa36fb2c 100644
--- a/0006-Prevent-debug-library-names-in-pkg-config-files.patch
+++ b/0006-Prevent-debug-library-names-in-pkg-config-files.patch
@@ -1,7 +1,7 @@
-From 1bef9ba7bb4cab5b5b1c245eca79f1cbfdfb55a1 Mon Sep 17 00:00:00 2001
+From 8a7e29949e5fbbcd2ce02def5f0146786ffe3f59 Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Sun, 18 Sep 2016 14:01:14 +0200
-Subject: [PATCH 06/32] Prevent debug library names in pkg-config files
+Subject: [PATCH 06/31] Prevent debug library names in pkg-config files
qmake generates the pkgconfig .pc files two times, once for the
release build and once for the debug build (which we're not actually
@@ -15,10 +15,10 @@ files for the debug build an unique file name.
1 file changed, 3 insertions(+)
diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp
-index 003ad2baf2..5c6e7e1281 100644
+index 1694dea086..01d24418ce 100644
--- a/qmake/generators/makefile.cpp
+++ b/qmake/generators/makefile.cpp
-@@ -3259,6 +3259,9 @@ MakefileGenerator::pkgConfigFileName(bool fixify, bool onlyPrependDestdir)
+@@ -3226,6 +3226,9 @@ MakefileGenerator::pkgConfigFileName(bool fixify, bool onlyPrependDestdir)
if (dot != -1)
ret = ret.left(dot);
}
@@ -29,5 +29,5 @@ index 003ad2baf2..5c6e7e1281 100644
QString subdir = project->first("QMAKE_PKGCONFIG_DESTDIR").toQString();
if(!subdir.isEmpty()) {
--
-2.24.0
+2.24.1
diff --git a/0007-Fix-linking-against-shared-static-libpng.patch b/0007-Fix-linking-against-shared-static-libpng.patch
index c3e6ef8af00..2c5ac6c3d95 100644
--- a/0007-Fix-linking-against-shared-static-libpng.patch
+++ b/0007-Fix-linking-against-shared-static-libpng.patch
@@ -1,7 +1,7 @@
-From f2c9c83b1eea3e85bb03b2b2f8fde9d0376e041f Mon Sep 17 00:00:00 2001
+From a623fd18b4613f907ddf7cdd3cd1fa3bf0b4eac0 Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Thu, 26 Jan 2017 17:51:31 +0100
-Subject: [PATCH 07/32] Fix linking against shared/static libpng
+Subject: [PATCH 07/31] Fix linking against shared/static libpng
Change-Id: Ic7a0ec9544059b8e647a5d0186f1b88c00911dcf
---
@@ -9,10 +9,10 @@ Change-Id: Ic7a0ec9544059b8e647a5d0186f1b88c00911dcf
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/gui/configure.json b/src/gui/configure.json
-index 6280b4dfa2..36325920cd 100644
+index 19312d245d..c89831c404 100644
--- a/src/gui/configure.json
+++ b/src/gui/configure.json
-@@ -387,8 +387,10 @@
+@@ -399,8 +399,10 @@
{ "type": "pkgConfig", "args": "libpng" },
{ "libs": "-llibpng16", "condition": "config.msvc" },
{ "libs": "-llibpng", "condition": "config.msvc" },
@@ -26,5 +26,5 @@ index 6280b4dfa2..36325920cd 100644
],
"use": [
--
-2.24.0
+2.24.1
diff --git a/0008-Fix-linking-against-static-D-Bus.patch b/0008-Fix-linking-against-static-D-Bus.patch
index 4cdbb7ef429..1d78ba3b9c1 100644
--- a/0008-Fix-linking-against-static-D-Bus.patch
+++ b/0008-Fix-linking-against-static-D-Bus.patch
@@ -1,7 +1,7 @@
-From edebe4b52babc03509ff5d2037bcf59f48da21c5 Mon Sep 17 00:00:00 2001
+From 8d4aa856026bbb9f87024cbea65eb482a2fef4a9 Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Fri, 3 Feb 2017 19:36:25 +0100
-Subject: [PATCH 08/32] Fix linking against static D-Bus
+Subject: [PATCH 08/31] Fix linking against static D-Bus
---
configure.json | 9 +++++++--
@@ -9,10 +9,10 @@ Subject: [PATCH 08/32] Fix linking against static D-Bus
2 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/configure.json b/configure.json
-index af55bb6fd2..370c27af5b 100644
+index 159fdf12fa..4aa1221395 100644
--- a/configure.json
+++ b/configure.json
-@@ -187,18 +187,23 @@
+@@ -188,18 +188,23 @@
"dbus": {
"label": "D-Bus >= 1.2",
"test": {
@@ -54,5 +54,5 @@ index 7cce0d71aa..4d3d774d45 100644
# include <dbus/dbus.h>
#else
--
-2.24.0
+2.24.1
diff --git a/0009-Don-t-try-to-use-debug-version-of-D-Bus-library.patch b/0009-Don-t-try-to-use-debug-version-of-D-Bus-library.patch
index 28af89b7240..0abdd493758 100644
--- a/0009-Don-t-try-to-use-debug-version-of-D-Bus-library.patch
+++ b/0009-Don-t-try-to-use-debug-version-of-D-Bus-library.patch
@@ -1,7 +1,7 @@
-From 8961310da06333af92430ce142dc588d11be9773 Mon Sep 17 00:00:00 2001
+From 0f69c4775ad5f7f145e924330bffb7b351839eed Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Fri, 2 Jun 2017 18:28:10 +0200
-Subject: [PATCH 09/32] Don't try to use debug version of D-Bus library
+Subject: [PATCH 09/31] Don't try to use debug version of D-Bus library
Required for a debug build of Qt because mingw-w64-dbus
does not contain debug version
@@ -12,10 +12,10 @@ Change-Id: Ic34e1025fda55f9659e065f5bbe9d51f55420adb
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure.json b/configure.json
-index 370c27af5b..36545a593b 100644
+index 4aa1221395..bf7c14906f 100644
--- a/configure.json
+++ b/configure.json
-@@ -200,7 +200,7 @@
+@@ -201,7 +201,7 @@
{
"libs": "",
"builds": {
@@ -25,5 +25,5 @@ index 370c27af5b..36545a593b 100644
},
"condition": "config.win32 && features.shared"
--
-2.24.0
+2.24.1
diff --git a/0010-Fix-linking-against-static-freetype2.patch b/0010-Fix-linking-against-static-freetype2.patch
index c564452c640..37abea53a58 100644
--- a/0010-Fix-linking-against-static-freetype2.patch
+++ b/0010-Fix-linking-against-static-freetype2.patch
@@ -1,17 +1,17 @@
-From b093b965b4f245488c6c6cb4ac97125e65a4ec63 Mon Sep 17 00:00:00 2001
+From 6e50cb934d6293f26e6b2b403da5a62cfa7b6342 Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Fri, 3 Feb 2017 20:51:19 +0100
-Subject: [PATCH 10/32] Fix linking against static freetype2
+Subject: [PATCH 10/31] Fix linking against static freetype2
---
src/gui/configure.json | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/src/gui/configure.json b/src/gui/configure.json
-index 36325920cd..972f9914ea 100644
+index c89831c404..c51a1b0ce1 100644
--- a/src/gui/configure.json
+++ b/src/gui/configure.json
-@@ -238,8 +238,11 @@
+@@ -239,8 +239,11 @@
},
"headers": "ft2build.h",
"sources": [
@@ -26,5 +26,5 @@ index 36325920cd..972f9914ea 100644
{ "libs": "-lfreetype" }
],
--
-2.24.0
+2.24.1
diff --git a/0011-Fix-linking-against-static-harfbuzz.patch b/0011-Fix-linking-against-static-harfbuzz.patch
index 5f31b0691e2..8c056b74914 100644
--- a/0011-Fix-linking-against-static-harfbuzz.patch
+++ b/0011-Fix-linking-against-static-harfbuzz.patch
@@ -1,17 +1,17 @@
-From 9249ae7ad76508798e6af05cb1bf8cc1915afd82 Mon Sep 17 00:00:00 2001
+From 47cfe60f65a7a3dc8e300b72cd4df1aa5c7952c6 Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Sun, 18 Sep 2016 14:22:56 +0200
-Subject: [PATCH 11/32] Fix linking against static harfbuzz
+Subject: [PATCH 11/31] Fix linking against static harfbuzz
---
src/gui/configure.json | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/gui/configure.json b/src/gui/configure.json
-index 972f9914ea..894c10259d 100644
+index c51a1b0ce1..06becdaa41 100644
--- a/src/gui/configure.json
+++ b/src/gui/configure.json
-@@ -306,7 +306,11 @@
+@@ -307,7 +307,11 @@
},
"headers": "harfbuzz/hb.h",
"sources": [
@@ -25,5 +25,5 @@ index 972f9914ea..894c10259d 100644
},
"imf": {
--
-2.24.0
+2.24.1
diff --git a/0012-Fix-linking-against-static-pcre.patch b/0012-Fix-linking-against-static-pcre.patch
index 8f3a71f3132..61b9ee5177b 100644
--- a/0012-Fix-linking-against-static-pcre.patch
+++ b/0012-Fix-linking-against-static-pcre.patch
@@ -1,17 +1,17 @@
-From 31912a713ce6b8dfc4c19ce46137e2b62d368a72 Mon Sep 17 00:00:00 2001
+From 3b7985bd23118f396645b86a1ccc414540a1c148 Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Sun, 18 Sep 2016 14:24:01 +0200
-Subject: [PATCH 12/32] Fix linking against static pcre
+Subject: [PATCH 12/31] Fix linking against static pcre
Change-Id: I3225c6e82dc4d17aef37d4289c16eb7a5ea3c5a1
---
- src/corelib/tools/qregularexpression.cpp | 4 ++++
+ src/corelib/text/qregularexpression.cpp | 4 ++++
1 file changed, 4 insertions(+)
-diff --git a/src/corelib/tools/qregularexpression.cpp b/src/corelib/tools/qregularexpression.cpp
-index bdaa2d3243..90f8250c03 100644
---- a/src/corelib/tools/qregularexpression.cpp
-+++ b/src/corelib/tools/qregularexpression.cpp
+diff --git a/src/corelib/text/qregularexpression.cpp b/src/corelib/text/qregularexpression.cpp
+index 8d2187eb28..aaafb43039 100644
+--- a/src/corelib/text/qregularexpression.cpp
++++ b/src/corelib/text/qregularexpression.cpp
@@ -53,6 +53,10 @@
#include <QtCore/qdatastream.h>
@@ -24,5 +24,5 @@ index bdaa2d3243..90f8250c03 100644
#include <pcre2.h>
--
-2.24.0
+2.24.1
diff --git a/0013-Fix-linking-against-shared-static-MariaDB.patch b/0013-Fix-linking-against-shared-static-MariaDB.patch
index d79bc4383ac..1202f9b6bc6 100644
--- a/0013-Fix-linking-against-shared-static-MariaDB.patch
+++ b/0013-Fix-linking-against-shared-static-MariaDB.patch
@@ -1,7 +1,7 @@
-From f20041cf701ce3b8918ddb4bc00d89fbc223eabf Mon Sep 17 00:00:00 2001
+From 2ab64206b307901607110d750e17cadff1a337d4 Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Sun, 18 Sep 2016 18:56:55 +0200
-Subject: [PATCH 13/32] Fix linking against shared/static MariaDB
+Subject: [PATCH 13/31] Fix linking against shared/static MariaDB
Change-Id: I9722c154d845f288a2d4d1ab14a014066b28819b
---
@@ -22,5 +22,5 @@ index cd20eef1df..babd0465ce 100644
{ "type": "mysqlConfig", "query": "--libs", "cleanlibs": true },
{ "type": "mysqlConfig", "query": "--libs_r", "cleanlibs": false },
--
-2.24.0
+2.24.1
diff --git a/0014-Fix-linking-against-shared-static-PostgreSQL.patch b/0014-Fix-linking-against-shared-static-PostgreSQL.patch
index 86c604c5b7b..227599bebaf 100644
--- a/0014-Fix-linking-against-shared-static-PostgreSQL.patch
+++ b/0014-Fix-linking-against-shared-static-PostgreSQL.patch
@@ -1,7 +1,7 @@
-From 1df4822044b7883c15f2daffe0f31785fffdeda1 Mon Sep 17 00:00:00 2001
+From 9032e7d6eef20df7722f49d4e6f6ad060d8a6755 Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Sun, 18 Sep 2016 18:58:25 +0200
-Subject: [PATCH 14/32] Fix linking against shared/static PostgreSQL
+Subject: [PATCH 14/31] Fix linking against shared/static PostgreSQL
---
src/plugins/sqldrivers/configure.json | 4 ++--
@@ -24,5 +24,5 @@ index babd0465ce..b4b3bdec6b 100644
]
},
--
-2.24.0
+2.24.1
diff --git a/0015-Rename-qtmain-to-qt5main.patch b/0015-Rename-qtmain-to-qt5main.patch
index 98ed6d98b21..8b5a5f92a1c 100644
--- a/0015-Rename-qtmain-to-qt5main.patch
+++ b/0015-Rename-qtmain-to-qt5main.patch
@@ -1,7 +1,7 @@
-From 6d78391d7d88a4726926383c1fcadd85a85131c8 Mon Sep 17 00:00:00 2001
+From dd827f5dae7363c5bab406e8cd2291b6d623b2b9 Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Sun, 18 Sep 2016 14:25:40 +0200
-Subject: [PATCH 15/32] Rename qtmain to qt5main
+Subject: [PATCH 15/31] Rename qtmain to qt5main
Prevents conflict with mingw-w64-qt4 package
---
@@ -12,7 +12,7 @@ Prevents conflict with mingw-w64-qt4 package
4 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/mkspecs/common/g++-win32.conf b/mkspecs/common/g++-win32.conf
-index 5208d22bd6..1a058b787f 100644
+index 17d2a5efec..2975d371e3 100644
--- a/mkspecs/common/g++-win32.conf
+++ b/mkspecs/common/g++-win32.conf
@@ -84,7 +84,7 @@ QMAKE_LIBS_OPENGL = -lglu32 -lopengl32 -lgdi32 -luser32
@@ -25,10 +25,10 @@ index 5208d22bd6..1a058b787f 100644
QMAKE_IDL = $${CROSS_COMPILE}widl
QMAKE_LIB = $${CROSS_COMPILE}ar -rc
diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf
-index 314cd5cc67..a3cb474b67 100644
+index 346fbf2467..b8045753f0 100644
--- a/mkspecs/features/create_cmake.prf
+++ b/mkspecs/features/create_cmake.prf
-@@ -271,8 +271,8 @@ mac {
+@@ -317,8 +317,8 @@ mac {
CMAKE_LIB_FILE_LOCATION_RELEASE = $${CMAKE_QT_STEM}.dll
mingw {
@@ -55,7 +55,7 @@ index 272170d428..17f3ef9c2d 100644
QMAKE_LIBS += $$lib
} else {
diff --git a/src/winmain/winmain.pro b/src/winmain/winmain.pro
-index 9cb6ab0c59..4327ba365e 100644
+index 1f54c846ec..162e7a4b1b 100644
--- a/src/winmain/winmain.pro
+++ b/src/winmain/winmain.pro
@@ -2,7 +2,7 @@
@@ -68,5 +68,5 @@ index 9cb6ab0c59..4327ba365e 100644
CONFIG += static
--
-2.24.0
+2.24.1
diff --git a/0016-Enable-rpath-for-build-tools.patch b/0016-Enable-rpath-for-build-tools.patch
index f78249bba3c..5aa0b5fea7c 100644
--- a/0016-Enable-rpath-for-build-tools.patch
+++ b/0016-Enable-rpath-for-build-tools.patch
@@ -1,7 +1,7 @@
-From ee81a9edd185e6b452a93de51fc5963a6dfce71f Mon Sep 17 00:00:00 2001
+From b1cc2e7f3e091f244473b7d03494abcb1dacbbd6 Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Sun, 18 Sep 2016 17:59:27 +0200
-Subject: [PATCH 16/32] Enable rpath for build tools
+Subject: [PATCH 16/31] Enable rpath for build tools
- Required because various tools depend on libQt5Bootstrap.so which resides
in folder /usr/${_arch}/lib
@@ -33,5 +33,5 @@ index 8354f30eea..30e8cf18c5 100644
INSTALLS += target
--
-2.24.0
+2.24.1
diff --git a/0017-Use-system-zlib-for-build-tools.patch b/0017-Use-system-zlib-for-build-tools.patch
index 28a2fc1fd2c..161a46cb7c3 100644
--- a/0017-Use-system-zlib-for-build-tools.patch
+++ b/0017-Use-system-zlib-for-build-tools.patch
@@ -1,17 +1,17 @@
-From 7819e3f236674e2bfb22f07bd91eaef0e0c7926e Mon Sep 17 00:00:00 2001
+From 622132bfd075976303af986dae4d878eccc292ca Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Sun, 18 Sep 2016 18:04:42 +0200
-Subject: [PATCH 17/32] Use system zlib for build tools
+Subject: [PATCH 17/31] Use system zlib for build tools
---
src/tools/bootstrap/bootstrap.pro | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/tools/bootstrap/bootstrap.pro b/src/tools/bootstrap/bootstrap.pro
-index 83e44ff9a4..4734623936 100644
+index 9863ff5e69..02329611bc 100644
--- a/src/tools/bootstrap/bootstrap.pro
+++ b/src/tools/bootstrap/bootstrap.pro
-@@ -135,7 +135,9 @@ macx {
+@@ -154,7 +154,9 @@ macx {
../../corelib/io/qstandardpaths_win.cpp
}
@@ -23,5 +23,5 @@ index 83e44ff9a4..4734623936 100644
} else {
CONFIG += no_core_dep
--
-2.24.0
+2.24.1
diff --git a/0018-Merge-shared-and-static-library-trees.patch b/0018-Merge-shared-and-static-library-trees.patch
index 1f2db1e8417..80e2ad478b0 100644
--- a/0018-Merge-shared-and-static-library-trees.patch
+++ b/0018-Merge-shared-and-static-library-trees.patch
@@ -1,9 +1,11 @@
-From fbda1fcb3f3bd84852a594f2bf8805db93e27294 Mon Sep 17 00:00:00 2001
+From b3ea7d1e0a967a4c07bfefdf65803ae3087dda1b Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Sun, 18 Sep 2016 18:45:08 +0200
-Subject: [PATCH 18/32] Merge shared and static library trees
+Subject: [PATCH 18/31] Merge shared and static library trees
Allow installation of shared and static build in the same prefix
+
+Change-Id: I1de08df42d83d411aae519691cd3cde1fd6f3d1d
---
configure.pri | 16 +++++++++++++++-
mkspecs/features/default_post.prf | 11 +++++++++++
@@ -15,10 +17,10 @@ Allow installation of shared and static build in the same prefix
7 files changed, 74 insertions(+), 11 deletions(-)
diff --git a/configure.pri b/configure.pri
-index 3778ece180..c108b2843c 100644
+index 47882afeb6..05dc704cde 100644
--- a/configure.pri
+++ b/configure.pri
-@@ -652,7 +652,12 @@ defineTest(qtConfOutput_machineTuple) {
+@@ -648,7 +648,12 @@ defineTest(qtConfOutput_machineTuple) {
defineTest(qtConfOutput_commitOptions) {
# qdevice.pri needs to be written early, because the compile tests require it.
@@ -32,7 +34,7 @@ index 3778ece180..c108b2843c 100644
}
# type (empty or 'host'), option name, default value
-@@ -1342,3 +1347,12 @@ defineTest(createConfigStatus) {
+@@ -1365,3 +1370,12 @@ defineTest(createConfigStatus) {
QMAKE_POST_CONFIGURE += \
"createConfigStatus()"
@@ -137,10 +139,10 @@ index 51ea3a8321..275e080ae4 100644
QMAKE_EXT_YACC = .y
diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp
-index 5c6e7e1281..0eeeb5fb5e 100644
+index 01d24418ce..914bb58f27 100644
--- a/qmake/generators/makefile.cpp
+++ b/qmake/generators/makefile.cpp
-@@ -3262,6 +3262,9 @@ MakefileGenerator::pkgConfigFileName(bool fixify, bool onlyPrependDestdir)
+@@ -3229,6 +3229,9 @@ MakefileGenerator::pkgConfigFileName(bool fixify, bool onlyPrependDestdir)
if (project->isActiveConfig("debug")) {
ret += "d";
}
@@ -150,20 +152,20 @@ index 5c6e7e1281..0eeeb5fb5e 100644
ret += Option::pkgcfg_ext;
QString subdir = project->first("QMAKE_PKGCONFIG_DESTDIR").toQString();
if(!subdir.isEmpty()) {
-@@ -3438,11 +3441,11 @@ MakefileGenerator::writePkgConfigFile()
- t << endl;
+@@ -3405,11 +3408,11 @@ MakefileGenerator::writePkgConfigFile()
+ t << Qt::endl;
// requires
- const QString requiresString = project->values("QMAKE_PKGCONFIG_REQUIRES").join(' ');
- if (!requiresString.isEmpty()) {
-- t << "Requires: " << requiresString << endl;
+- t << "Requires: " << requiresString << Qt::endl;
+ t << "Requires:";
+ const auto pkgconfigRequires = project->values("QMAKE_PKGCONFIG_REQUIRES");
+ for (const auto &required : pkgconfigRequires) {
+ t << (project->isActiveConfig("staticlib") ? QStringLiteral(" Static") : QStringLiteral(" ")) << required.toQString();
}
-
- t << endl;
+ t << Qt::endl;
}
diff --git a/qtbase.pro b/qtbase.pro
@@ -202,5 +204,5 @@ index c0ce0972ef..5a2deaf31d 100644
mkspecs.files -= $$PWD/mkspecs/modules $$PWD/mkspecs/modules-inst
INSTALLS += mkspecs
--
-2.24.0
+2.24.1
diff --git a/0019-Use-.dll.a-as-import-lib-extension.patch b/0019-Use-.dll.a-as-import-lib-extension.patch
index 3ecfa27f6af..060a8280ce4 100644
--- a/0019-Use-.dll.a-as-import-lib-extension.patch
+++ b/0019-Use-.dll.a-as-import-lib-extension.patch
@@ -1,10 +1,12 @@
-From ddbf905975bdeb1e34a6e59262ad154562ccaf9a Mon Sep 17 00:00:00 2001
+From ca8a7fc78a4e88a58f96674104662c2306949dbf Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Sun, 18 Sep 2016 18:26:18 +0200
-Subject: [PATCH 19/32] Use *.dll.a as import lib extension
+Subject: [PATCH 19/31] Use *.dll.a as import lib extension
The variables used here are provided by
g++-win32.conf
+
+Change-Id: I1175feedd96ef4940af87dc3662fedc8f4d1d764
---
mkspecs/features/create_cmake.prf | 5 +++--
mkspecs/features/qt.prf | 15 ++++++++++++---
@@ -12,10 +14,10 @@ g++-win32.conf
3 files changed, 26 insertions(+), 9 deletions(-)
diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf
-index a3cb474b67..8539bd928f 100644
+index b8045753f0..cb4e136ded 100644
--- a/mkspecs/features/create_cmake.prf
+++ b/mkspecs/features/create_cmake.prf
-@@ -282,8 +282,9 @@ mac {
+@@ -328,8 +328,9 @@ mac {
CMAKE_PRL_FILE_LOCATION_DEBUG = lib$${CMAKE_QT_STEM}d.prl
CMAKE_PRL_FILE_LOCATION_RELEASE = lib$${CMAKE_QT_STEM}.prl
} else {
@@ -57,10 +59,10 @@ index bbada46c29..d6299d8eed 100644
}
}
diff --git a/qmake/generators/win32/winmakefile.cpp b/qmake/generators/win32/winmakefile.cpp
-index 8222854cfc..17592c2492 100644
+index c1b28a52e9..3b4372ad05 100644
--- a/qmake/generators/win32/winmakefile.cpp
+++ b/qmake/generators/win32/winmakefile.cpp
-@@ -80,9 +80,13 @@ Win32MakefileGenerator::parseLibFlag(const ProString &flag, ProString *arg)
+@@ -99,9 +99,13 @@ private:
bool
Win32MakefileGenerator::findLibraries(bool linkPrl, bool mergeLflags)
{
@@ -74,10 +76,10 @@ index 8222854cfc..17592c2492 100644
+ impexts.append(project->values("QMAKE_EXTENSION_IMPORTLIB"));
+ impexts.append(project->values("QMAKE_EXTENSION_STATICLIB"));
+ }
- QList<QMakeLocalFileName> dirs;
+ QVector<LibrarySearchPath> dirs;
int libidx = 0;
for (const ProString &dlib : project->values("QMAKE_DEFAULT_LIBDIRS"))
-@@ -257,9 +261,12 @@ void Win32MakefileGenerator::fixTargetExt()
+@@ -283,9 +287,12 @@ void Win32MakefileGenerator::fixTargetExt()
if (!project->values("QMAKE_APP_FLAG").isEmpty()) {
project->values("TARGET_EXT").append(".exe");
} else if (project->isActiveConfig("shared")) {
@@ -92,5 +94,5 @@ index 8222854cfc..17592c2492 100644
+ project->first("QMAKE_EXTENSION_SHLIB"));
project->values("TARGET").first() = project->first("QMAKE_PREFIX_SHLIB") + project->first("TARGET");
--
-2.24.0
+2.24.1
diff --git a/0020-Pull-dependencies-of-static-libraries-in-CMake-modul.patch b/0020-Pull-dependencies-of-static-libraries-in-CMake-modul.patch
index a74087dc240..24be2a4de06 100644
--- a/0020-Pull-dependencies-of-static-libraries-in-CMake-modul.patch
+++ b/0020-Pull-dependencies-of-static-libraries-in-CMake-modul.patch
@@ -1,7 +1,7 @@
-From bf63f766c525dfb28c26f981397ad4fdfb171900 Mon Sep 17 00:00:00 2001
+From 7a38a4a01fd72504c0196bc100bbaaa7138f149b Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Sun, 18 Sep 2016 18:32:00 +0200
-Subject: [PATCH 20/32] Pull dependencies of static libraries in CMake modules
+Subject: [PATCH 20/31] Pull dependencies of static libraries in CMake modules
When doing a static build of Qt, the dependencies of the Qt
libraries and plugins itself must be specified when linking
@@ -21,14 +21,20 @@ e.g. to use QMAKE_PRL_LIBS instead of QMAKE_PRL_LIBS_FOR_CMAKE.
See https://github.com/Martchus/PKGBUILDs/issues/86#issuecomment-476840055
for further details on 2.
-Change-Id: Id818ed54ff2bfb86bfefee6e39ebc791e8343d3a
+With Qt 5.14.0 the support for using static libraries seems
+to be further improved. I had not time to test whether it
+actually works so I keep using my own implemention for now.
+That's why this patch now removes a lot of the 5.14.0 additions
+in favour of 'how it used to work'.
+
+Change-Id: I6566d42d7e27d4cd23d261a0eacca9efad9ce6df
---
- .../data/cmake/Qt5BasicConfig.cmake.in | 192 ++++++++++++------
- .../data/cmake/Qt5PluginTarget.cmake.in | 11 +-
- 2 files changed, 136 insertions(+), 67 deletions(-)
+ .../data/cmake/Qt5BasicConfig.cmake.in | 223 ++++++++++--------
+ .../data/cmake/Qt5PluginTarget.cmake.in | 84 +------
+ 2 files changed, 135 insertions(+), 172 deletions(-)
diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
-index f4a34d6e48..88ea04ce2c 100644
+index 364c23e750..a2ceede0cf 100644
--- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
+++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
@@ -53,6 +53,10 @@ function(_qt5_$${CMAKE_MODULE_NAME}_process_prl_file prl_file_location Configura
@@ -187,7 +193,7 @@ index f4a34d6e48..88ea04ce2c 100644
!!ENDIF
if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
-@@ -364,13 +399,15 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+@@ -380,13 +415,15 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
add_library(Qt5::$${CMAKE_MODULE_NAME} STATIC IMPORTED)
set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} PROPERTY IMPORTED_LINK_INTERFACE_LANGUAGES "CXX")
@@ -205,9 +211,9 @@ index f4a34d6e48..88ea04ce2c 100644
!!IF !equals(TEMPLATE, aux)
!!IF !isEmpty(CMAKE_BUILD_IS_FRAMEWORK)
set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} PROPERTY FRAMEWORK 1)
-@@ -385,6 +422,56 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
- set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} PROPERTY INTERFACE_QT_ENABLED_FEATURES $$join(QT.$${MODULE}.enabled_features, ";"))
- set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} PROPERTY INTERFACE_QT_DISABLED_FEATURES $$join(QT.$${MODULE}.disabled_features, ";"))
+@@ -403,6 +440,56 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+
+ set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} PROPERTY INTERFACE_QT_PLUGIN_TYPES \"$${CMAKE_MODULE_PLUGIN_TYPES}\")
+ # Find plugin targets
+ file(GLOB pluginTargetsMaybe \"${CMAKE_CURRENT_LIST_DIR}/*Qt5$${CMAKE_MODULE_NAME}_*.cmake\")
@@ -262,7 +268,7 @@ index f4a34d6e48..88ea04ce2c 100644
set(_Qt5$${CMAKE_MODULE_NAME}_PRIVATE_DIRS_EXIST TRUE)
foreach (_Qt5$${CMAKE_MODULE_NAME}_PRIVATE_DIR ${Qt5$${CMAKE_MODULE_NAME}_OWN_PRIVATE_INCLUDE_DIRS})
if (NOT EXISTS ${_Qt5$${CMAKE_MODULE_NAME}_PRIVATE_DIR})
-@@ -403,9 +490,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+@@ -421,9 +508,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
list(APPEND _Qt5$${CMAKE_MODULE_NAME}_PRIVATEDEPS ${dep}Private)
endif()
endforeach()
@@ -276,7 +282,7 @@ index f4a34d6e48..88ea04ce2c 100644
endif()
!!IF !equals(TEMPLATE, aux)
-@@ -475,9 +566,11 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+@@ -493,9 +584,11 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
!!ELSE
\"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
!!ENDIF
@@ -290,7 +296,7 @@ index f4a34d6e48..88ea04ce2c 100644
!!ENDIF // CMAKE_RELEASE_TYPE
!!ENDIF // CMAKE_FIND_OTHER_LIBRARY_BUILD
-@@ -488,33 +581,6 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+@@ -506,64 +599,6 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
)
!!ENDIF // TEMPLATE != aux
@@ -298,7 +304,8 @@ index f4a34d6e48..88ea04ce2c 100644
-
- file(GLOB pluginTargets \"${CMAKE_CURRENT_LIST_DIR}/Qt5$${CMAKE_MODULE_NAME}_*Plugin.cmake\")
-
-- macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties Plugin Configuration PLUGIN_LOCATION)
+- macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties Plugin Configuration PLUGIN_LOCATION
+- IsDebugAndRelease)
- set_property(TARGET Qt5::${Plugin} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
-
-!!IF isEmpty(CMAKE_PLUGIN_DIR_IS_ABSOLUTE)
@@ -310,6 +317,36 @@ index f4a34d6e48..88ea04ce2c 100644
- set_target_properties(Qt5::${Plugin} PROPERTIES
- \"IMPORTED_LOCATION_${Configuration}\" ${imported_location}
- )
+-
+-!!IF !isEmpty(CMAKE_STATIC_TYPE)
+- set(_static_deps
+- ${_Qt5${Plugin}_STATIC_${Configuration}_LIB_DEPENDENCIES}
+- )
+-
+- if(NOT "${IsDebugAndRelease}")
+- set(_genex_condition \"1\")
+- else()
+- if("${Configuration}" STREQUAL "DEBUG")
+- set(_genex_condition \"$<CONFIG:Debug>\")
+- else()
+- set(_genex_condition \"$<NOT:$<CONFIG:Debug>>\")
+- endif()
+- endif()
+- if(_static_deps)
+- set(_static_deps_genex \"$<${_genex_condition}:${_static_deps}>\")
+- set_property(TARGET Qt5::${Plugin} APPEND PROPERTY INTERFACE_LINK_LIBRARIES
+- \"${_static_deps_genex}\"
+- )
+- endif()
+-
+- set(_static_link_flags \"${_Qt5${Plugin}_STATIC_${Configuration}_LINK_FLAGS}\")
+- if(NOT CMAKE_VERSION VERSION_LESS \"3.13\" AND _static_link_flags)
+- set(_static_link_flags_genex \"$<${_genex_condition}:${_static_link_flags}>\")
+- set_property(TARGET Qt5::${Plugin} APPEND PROPERTY INTERFACE_LINK_OPTIONS
+- \"${_static_link_flags_genex}\"
+- )
+- endif()
+-!!ENDIF
- endmacro()
-
- if (pluginTargets)
@@ -325,28 +362,109 @@ index f4a34d6e48..88ea04ce2c 100644
include(\"${CMAKE_CURRENT_LIST_DIR}/Qt5$${CMAKE_MODULE_NAME}ConfigExtras.cmake\")
!!ENDIF
diff --git a/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in b/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in
-index 5baf0fdb10..ec5f3cc437 100644
+index 7b70cfed09..25f2162fe6 100644
--- a/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in
+++ b/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in
-@@ -1,11 +1,14 @@
+@@ -1,5 +1,6 @@
-
-add_library(Qt5::$$CMAKE_PLUGIN_NAME MODULE IMPORTED)
+# Some Qt modules also load plugin target in extra config, so check whether the target already exists
+if(NOT TARGET Qt5::$$CMAKE_PLUGIN_NAME)
+ add_library(Qt5::$$CMAKE_PLUGIN_NAME MODULE IMPORTED)
+ !!IF !isEmpty(CMAKE_STATIC_TYPE)
+ set(_Qt5$${CMAKE_PLUGIN_NAME}_MODULE_DEPENDENCIES \"$${CMAKE_PLUGIN_MODULE_DEPS}\")
+@@ -16,87 +17,14 @@ foreach(_module_dep ${_Qt5$${CMAKE_PLUGIN_NAME}_MODULE_DEPENDENCIES})
+ endforeach()
+
!!IF !isEmpty(CMAKE_RELEASE_TYPE)
--_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME RELEASE \"$${CMAKE_PLUGIN_LOCATION_RELEASE}\")
+-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+-_qt5_$${CMAKE_MODULE_NAME}_process_prl_file(
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_PLUGIN_DIR}$${CMAKE_PRL_FILE_LOCATION_RELEASE}\" RELEASE
+- _Qt5$${CMAKE_PLUGIN_NAME}_STATIC_RELEASE_LIB_DEPENDENCIES
+- _Qt5$${CMAKE_PLUGIN_NAME}_STATIC_RELEASE_LINK_FLAGS
+-)
+-!!ELSE
+-_qt5_$${CMAKE_MODULE_NAME}_process_prl_file(
+- \"$${CMAKE_PLUGIN_DIR}$${CMAKE_PRL_FILE_LOCATION_RELEASE}\" RELEASE
+- _Qt5$${CMAKE_PLUGIN_NAME}_STATIC_RELEASE_LIB_DEPENDENCIES
+- _Qt5$${CMAKE_PLUGIN_NAME}_STATIC_RELEASE_LINK_FLAGS
+-)
+-!!ENDIF
+-!!ENDIF
+-
+-!!IF !isEmpty(CMAKE_DEBUG_TYPE)
+-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+-_qt5_$${CMAKE_MODULE_NAME}_process_prl_file(
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_PLUGIN_DIR}$${CMAKE_PRL_FILE_LOCATION_DEBUG}\" DEBUG
+- _Qt5$${CMAKE_PLUGIN_NAME}_STATIC_DEBUG_LIB_DEPENDENCIES
+- _Qt5$${CMAKE_PLUGIN_NAME}_STATIC_DEBUG_LINK_FLAGS
+-)
+-!!ELSE
+-_qt5_$${CMAKE_MODULE_NAME}_process_prl_file(
+- \"$${CMAKE_PLUGIN_DIR}$${CMAKE_PRL_FILE_LOCATION_DEBUG}\" DEBUG
+- _Qt5$${CMAKE_PLUGIN_NAME}_STATIC_DEBUG_LIB_DEPENDENCIES
+- _Qt5$${CMAKE_PLUGIN_NAME}_STATIC_DEBUG_LINK_FLAGS
+-)
+-!!ENDIF
+ _populate_$${CMAKE_MODULE_NAME}_plugin_properties(Qt5::$$CMAKE_MODULE_NAME Qt5::$$CMAKE_PLUGIN_NAME $$CMAKE_PLUGIN_NAME RELEASE \"$${CMAKE_PLUGIN_LOCATION_RELEASE}\")
!!ENDIF
+-
+-set_property(TARGET Qt5::$$CMAKE_PLUGIN_NAME PROPERTY INTERFACE_SOURCES
+- \"${CMAKE_CURRENT_LIST_DIR}/Qt5$${CMAKE_MODULE_NAME}_$${CMAKE_PLUGIN_NAME}_Import.cpp\"
+-)
+ !!ENDIF
+
+-!!IF !isEmpty(CMAKE_RELEASE_TYPE)
+-_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME RELEASE \"$${CMAKE_PLUGIN_LOCATION_RELEASE}\" $${CMAKE_DEBUG_AND_RELEASE})
+-!!ENDIF
!!IF !isEmpty(CMAKE_DEBUG_TYPE)
--_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME DEBUG \"$${CMAKE_PLUGIN_LOCATION_DEBUG}\")
+-_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME DEBUG \"$${CMAKE_PLUGIN_LOCATION_DEBUG}\" $${CMAKE_DEBUG_AND_RELEASE})
+ _populate_$${CMAKE_MODULE_NAME}_plugin_properties(Qt5::$$CMAKE_MODULE_NAME Qt5::$$CMAKE_PLUGIN_NAME $$CMAKE_PLUGIN_NAME DEBUG \"$${CMAKE_PLUGIN_LOCATION_DEBUG}\")
!!ENDIF
list(APPEND Qt5$${CMAKE_MODULE_NAME}_PLUGINS Qt5::$$CMAKE_PLUGIN_NAME)
+-set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} APPEND PROPERTY QT_ALL_PLUGINS_$${CMAKE_PLUGIN_TYPE_ESCAPED} Qt5::$${CMAKE_PLUGIN_NAME})
+-!!IF !isEmpty(CMAKE_STATIC_TYPE)
+-# $<GENEX_EVAL:...> wasn\'t added until CMake 3.12, so put a version guard around it
+-if(CMAKE_VERSION VERSION_LESS \"3.12\")
+- set(_manual_plugins_genex \"$<TARGET_PROPERTY:QT_PLUGINS>\")
+- set(_plugin_type_genex \"$<TARGET_PROPERTY:QT_PLUGINS_$${CMAKE_PLUGIN_TYPE_ESCAPED}>\")
+- set(_no_plugins_genex \"$<TARGET_PROPERTY:QT_NO_PLUGINS>\")
+-else()
+- set(_manual_plugins_genex \"$<GENEX_EVAL:$<TARGET_PROPERTY:QT_PLUGINS>>\")
+- set(_plugin_type_genex \"$<GENEX_EVAL:$<TARGET_PROPERTY:QT_PLUGINS_$${CMAKE_PLUGIN_TYPE_ESCAPED}>>\")
+- set(_no_plugins_genex \"$<GENEX_EVAL:$<TARGET_PROPERTY:QT_NO_PLUGINS>>\")
+
-+endif()
+ endif()
+-set(_user_specified_genex
+- \"$<IN_LIST:Qt5::$$CMAKE_PLUGIN_NAME,${_manual_plugins_genex};${_plugin_type_genex}>\"
+-)
+-string(CONCAT _plugin_genex
+- \"$<$<OR:\"
+- # Add this plugin if it\'s in the list of manual plugins or plugins for the type
+- \"${_user_specified_genex},\"
+- # Add this plugin if the list of plugins for the type is empty, the PLUGIN_EXTENDS
+- # is either empty or equal to the module name, and the user hasn\'t blacklisted it
+- \"$<AND:\"
+- \"$<STREQUAL:${_plugin_type_genex},>,\"
+- \"$<OR:\"
+- \"$<STREQUAL:$<TARGET_PROPERTY:Qt5::$${CMAKE_PLUGIN_NAME},QT_PLUGIN_EXTENDS>,Qt5::$${CMAKE_MODULE_NAME}>,\"
+- \"$<STREQUAL:$<TARGET_PROPERTY:Qt5::$${CMAKE_PLUGIN_NAME},QT_PLUGIN_EXTENDS>,>\"
+- \">,\"
+- \"$<NOT:$<IN_LIST:Qt5::$${CMAKE_PLUGIN_NAME},${_no_plugins_genex}>>\"
+- \">\"
+- \">:Qt5::$$CMAKE_PLUGIN_NAME>\"
+-)
+-set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} APPEND PROPERTY INTERFACE_LINK_LIBRARIES
+- ${_plugin_genex}
+-)
+-set_property(TARGET Qt5::$${CMAKE_PLUGIN_NAME} APPEND PROPERTY INTERFACE_LINK_LIBRARIES
+- \"$${CMAKE_PLUGIN_QT5_MODULE_DEPS}\"
+-)
+-!!ENDIF
+-set_property(TARGET Qt5::$${CMAKE_PLUGIN_NAME} PROPERTY QT_PLUGIN_TYPE \"$$CMAKE_PLUGIN_TYPE\")
+-set_property(TARGET Qt5::$${CMAKE_PLUGIN_NAME} PROPERTY QT_PLUGIN_EXTENDS \"$$CMAKE_PLUGIN_EXTENDS\")
--
-2.24.0
+2.24.1
diff --git a/0021-Allow-usage-of-static-version-with-CMake.patch b/0021-Allow-usage-of-static-version-with-CMake.patch
index 4249ddf7b16..1ed096eed9d 100644
--- a/0021-Allow-usage-of-static-version-with-CMake.patch
+++ b/0021-Allow-usage-of-static-version-with-CMake.patch
@@ -1,7 +1,7 @@
-From 2ded2c5cfa1619460df020409ab4328f38de31cd Mon Sep 17 00:00:00 2001
+From 79fd08a26dba663e22ea38d1ab0e59b20601c410 Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Sat, 5 Aug 2017 21:14:26 +0200
-Subject: [PATCH 21/32] Allow usage of static version with CMake
+Subject: [PATCH 21/31] Allow usage of static version with CMake
Allow selecting between dynamic and static Qt versions
installed in the same prefix
@@ -10,22 +10,24 @@ installed in the same prefix
- Static targets are prefixed, eg. StaticQt5::Core
- Set USE_STATIC_QT_BY_DEFAULT to use static version
via regular find_package(Qt5Core)
+
+Change-Id: Ib9411a9edbad2a82414b1af61075172a797f4318
---
- mkspecs/features/create_cmake.prf | 103 +++---
- .../data/cmake/Qt5BasicConfig.cmake.in | 297 ++++++++++++------
- .../data/cmake/Qt5PluginTarget.cmake.in | 18 +-
+ mkspecs/features/create_cmake.prf | 108 ++++---
+ .../data/cmake/Qt5BasicConfig.cmake.in | 304 ++++++++++++------
+ .../data/cmake/Qt5PluginTarget.cmake.in | 22 +-
.../cmake/Qt5StaticOnlyRedirection.cmake.in | 11 +
src/corelib/Qt5CoreConfigExtras.cmake.in | 24 +-
src/gui/Qt5GuiConfigExtras.cmake.in | 8 +-
src/testlib/Qt5TestConfigExtras.cmake.in | 2 +-
- 7 files changed, 310 insertions(+), 153 deletions(-)
+ 7 files changed, 319 insertions(+), 160 deletions(-)
create mode 100644 mkspecs/features/data/cmake/Qt5StaticOnlyRedirection.cmake.in
diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf
-index 8539bd928f..f8b37533a3 100644
+index cb4e136ded..02e28211ac 100644
--- a/mkspecs/features/create_cmake.prf
+++ b/mkspecs/features/create_cmake.prf
-@@ -65,7 +65,7 @@ split_incpath {
+@@ -68,7 +68,7 @@ split_incpath {
$$QT_MODULE_INCLUDE_BASE/$${CMAKE_INCLUDE_NAME}/$$eval(QT.$${MODULE}.VERSION)/$${CMAKE_INCLUDE_NAME})
cmake_extra_source_includes.input = $$PWD/data/cmake/ExtraSourceIncludes.cmake.in
@@ -34,7 +36,7 @@ index 8539bd928f..f8b37533a3 100644
!build_pass:QMAKE_SUBSTITUTES += \
cmake_extra_source_includes
-@@ -115,6 +115,8 @@ win32:!static:!staticlib {
+@@ -118,6 +118,8 @@ win32:!static:!staticlib {
}
static|staticlib:CMAKE_STATIC_TYPE = true
@@ -43,47 +45,60 @@ index 8539bd928f..f8b37533a3 100644
internal_module {
CMAKE_INTERNAL_MODULE = true
-@@ -182,17 +184,19 @@ contains(CONFIG, plugin) {
- CMAKE_PLUGIN_NAME = $$PLUGIN_CLASS_NAME
+@@ -212,23 +214,25 @@ contains(CONFIG, plugin) {
+ CMAKE_PLUGIN_TYPE_ESCAPED = $$replace(PLUGIN_TYPE, [-/], _)
win32 {
- isEmpty(CMAKE_STATIC_TYPE) {
+ mingw {
- CMAKE_PLUGIN_LOCATION_RELEASE = $$PLUGIN_TYPE/$${TARGET}.dll
- CMAKE_PLUGIN_LOCATION_DEBUG = $$PLUGIN_TYPE/$${TARGET}d.dll
+ CMAKE_PLUGIN_LOCATION_RELEASE = $$PLUGIN_TYPE/$${CMAKE_QT_STEM}.dll
+ CMAKE_PLUGIN_LOCATION_DEBUG = $$PLUGIN_TYPE/$${CMAKE_QT_STEM}d.dll
++ CMAKE_PLUGIN_LOCATION_RELEASE_STATIC = $$PLUGIN_TYPE/lib$${CMAKE_QT_STEM}.a
++ CMAKE_PLUGIN_LOCATION_DEBUG_STATIC = $$PLUGIN_TYPE/lib$${CMAKE_QT_STEM}d.a
+ CMAKE_PRL_FILE_LOCATION_RELEASE = $$PLUGIN_TYPE/$${CMAKE_QT_STEM}.prl
+ CMAKE_PRL_FILE_LOCATION_DEBUG = $$PLUGIN_TYPE/$${CMAKE_QT_STEM}d.prl
- } else:mingw {
-- CMAKE_PLUGIN_LOCATION_RELEASE = $$PLUGIN_TYPE/lib$${TARGET}.a
-- CMAKE_PLUGIN_LOCATION_DEBUG = $$PLUGIN_TYPE/lib$${TARGET}d.a
-+ CMAKE_PLUGIN_LOCATION_RELEASE_STATIC = $$PLUGIN_TYPE/lib$${TARGET}.a
-+ CMAKE_PLUGIN_LOCATION_DEBUG_STATIC = $$PLUGIN_TYPE/lib$${TARGET}d.a
+- CMAKE_PLUGIN_LOCATION_RELEASE = $$PLUGIN_TYPE/lib$${CMAKE_QT_STEM}.a
+- CMAKE_PLUGIN_LOCATION_DEBUG = $$PLUGIN_TYPE/lib$${CMAKE_QT_STEM}d.a
+- CMAKE_PRL_FILE_LOCATION_RELEASE = $$PLUGIN_TYPE/lib$${CMAKE_QT_STEM}.prl
+- CMAKE_PRL_FILE_LOCATION_DEBUG = $$PLUGIN_TYPE/lib$${CMAKE_QT_STEM}d.prl
++ CMAKE_PRL_FILE_LOCATION_RELEASE_STATIC = $$PLUGIN_TYPE/$${CMAKE_QT_STEM}.static.prl
++ CMAKE_PRL_FILE_LOCATION_DEBUG_STATIC = $$PLUGIN_TYPE/$${CMAKE_QT_STEM}d.static.prl
} else { # MSVC static
- CMAKE_PLUGIN_LOCATION_RELEASE = $$PLUGIN_TYPE/$${TARGET}.lib
- CMAKE_PLUGIN_LOCATION_DEBUG = $$PLUGIN_TYPE/$${TARGET}d.lib
-+ CMAKE_PLUGIN_LOCATION_RELEASE_STATIC = $$PLUGIN_TYPE/$${TARGET}.lib
-+ CMAKE_PLUGIN_LOCATION_DEBUG_STATIC = $$PLUGIN_TYPE/$${TARGET}d.lib
+ CMAKE_PLUGIN_LOCATION_RELEASE = $$PLUGIN_TYPE/$${CMAKE_QT_STEM}.lib
+ CMAKE_PLUGIN_LOCATION_DEBUG = $$PLUGIN_TYPE/$${CMAKE_QT_STEM}d.lib
++ CMAKE_PLUGIN_LOCATION_RELEASE_STATIC = $$PLUGIN_TYPE/$${CMAKE_QT_STEM}.lib
++ CMAKE_PLUGIN_LOCATION_DEBUG_STATIC = $$PLUGIN_TYPE/$${CMAKE_QT_STEM}d.lib
+ CMAKE_PRL_FILE_LOCATION_RELEASE = $$PLUGIN_TYPE/$${CMAKE_QT_STEM}.prl
+ CMAKE_PRL_FILE_LOCATION_DEBUG = $$PLUGIN_TYPE/$${CMAKE_QT_STEM}d.prl
}
} else {
+ # this branch is broken by the patch, only apply when building for Windows
mac {
- isEmpty(CMAKE_STATIC_TYPE): CMAKE_PlUGIN_EXT = .dylib
- else: CMAKE_PlUGIN_EXT = .a
-@@ -208,13 +212,13 @@ contains(CONFIG, plugin) {
+ isEmpty(CMAKE_STATIC_TYPE): CMAKE_PLUGIN_EXT = .dylib
+ else: CMAKE_PLUGIN_EXT = .a
+@@ -248,9 +252,9 @@ contains(CONFIG, plugin) {
}
}
cmake_target_file.input = $$PWD/data/cmake/Qt5PluginTarget.cmake.in
- cmake_target_file.output = $$CMAKE_OUT_DIR/Qt5$${CMAKE_MODULE_NAME}/Qt5$${CMAKE_MODULE_NAME}_$${PLUGIN_CLASS_NAME}.cmake
+ cmake_target_file.output = $$CMAKE_OUT_DIR/$${DEFAULT_QT_VARIANT_PREFIX}Qt5$${CMAKE_MODULE_NAME}/$${DEFAULT_QT_VARIANT_PREFIX}Qt5$${CMAKE_MODULE_NAME}_$${PLUGIN_CLASS_NAME}.cmake
+ cmake_qt5_plugin_import_file.input = $$PWD/data/cmake/Qt5ImportPlugin.cpp.in
+- cmake_qt5_plugin_import_file.output = $$CMAKE_OUT_DIR/Qt5$${CMAKE_MODULE_NAME}/Qt5$${CMAKE_MODULE_NAME}_$${PLUGIN_CLASS_NAME}_Import.cpp
++ cmake_qt5_plugin_import_file.output = $$CMAKE_OUT_DIR/$${DEFAULT_QT_VARIANT_PREFIX}Qt5$${CMAKE_MODULE_NAME}/Qt5$${CMAKE_MODULE_NAME}_$${PLUGIN_CLASS_NAME}_Import.cpp
- !build_pass:QMAKE_SUBSTITUTES += \
- cmake_target_file
+ !build_pass {
+ QMAKE_SUBSTITUTES += cmake_target_file
+@@ -259,7 +263,7 @@ contains(CONFIG, plugin) {
cmake_qt5_plugin_file.files = $$cmake_target_file.output
+ static|staticlib: cmake_qt5_plugin_file.files += $$cmake_qt5_plugin_import_file.output
- cmake_qt5_plugin_file.path = $$[QT_INSTALL_LIBS]/cmake/Qt5$${CMAKE_MODULE_NAME}
+ cmake_qt5_plugin_file.path = $$[QT_INSTALL_LIBS]/cmake/$${DEFAULT_QT_VARIANT_PREFIX}Qt5$${CMAKE_MODULE_NAME}
INSTALLS += cmake_qt5_plugin_file
return()
-@@ -227,25 +231,34 @@ mod_deps =
+@@ -272,26 +276,34 @@ mod_deps =
lib_deps =
aux_mod_deps =
aux_lib_deps =
@@ -113,16 +128,16 @@ index 8539bd928f..f8b37533a3 100644
+CMAKE_QT5_MODULE_DEPS_STATIC = $$join(lib_deps_static, ";")
CMAKE_INTERFACE_MODULE_DEPS = $$join(aux_mod_deps, ";")
CMAKE_INTERFACE_QT5_MODULE_DEPS = $$join(aux_lib_deps, ";")
+ CMAKE_MODULE_PLUGIN_TYPES = $$join(QT.$${MODULE}.plugin_types, ";")
+CMAKE_INTERFACE_QT5_MODULE_DEPS_STATIC = $$join(aux_lib_deps_static, ";")
+CMAKE_INTERFACE_COMPILE_DEFINITIONS_STATIC = $$join(aux_compile_defs_static, ";")
-+
mac {
+ # this branch is broken by the patch, only apply when building for Windows
!isEmpty(CMAKE_STATIC_TYPE) {
CMAKE_LIB_FILE_LOCATION_DEBUG = lib$${CMAKE_QT_STEM}_debug.a
CMAKE_LIB_FILE_LOCATION_RELEASE = lib$${CMAKE_QT_STEM}.a
-@@ -274,35 +287,33 @@ mac {
+@@ -320,35 +332,33 @@ mac {
CMAKE_WINMAIN_FILE_LOCATION_DEBUG = libqt5main$${QT_LIBINFIX}.a
CMAKE_WINMAIN_FILE_LOCATION_RELEASE = libqt5main$${QT_LIBINFIX}.a
@@ -177,7 +192,7 @@ index 8539bd928f..f8b37533a3 100644
!isEmpty(CMAKE_STATIC_TYPE) {
CMAKE_LIB_FILE_LOCATION_DEBUG = lib$${CMAKE_QT_STEM}.a
CMAKE_LIB_FILE_LOCATION_RELEASE = lib$${CMAKE_QT_STEM}.a
-@@ -322,12 +333,12 @@ mac {
+@@ -368,12 +378,12 @@ mac {
INSTALLS += cmake_qt5_module_files
cmake_config_file.input = $$PWD/data/cmake/Qt5BasicConfig.cmake.in
@@ -192,7 +207,7 @@ index 8539bd928f..f8b37533a3 100644
!build_pass:QMAKE_SUBSTITUTES += \
cmake_config_file \
-@@ -337,11 +348,29 @@ cmake_qt5_module_files.files = \
+@@ -383,11 +393,29 @@ cmake_qt5_module_files.files = \
$$cmake_config_file.output \
$$cmake_config_version_file.output
@@ -223,7 +238,7 @@ index 8539bd928f..f8b37533a3 100644
!build_pass:QMAKE_SUBSTITUTES += cmake_extras_file
-@@ -353,7 +382,7 @@ cmake_macros_file.input = $$_PRO_FILE_PWD_/Qt5$${CMAKE_MODULE_NAME}Macros.cmake
+@@ -399,7 +427,7 @@ cmake_macros_file.input = $$_PRO_FILE_PWD_/Qt5$${CMAKE_MODULE_NAME}Macros.cmake
exists($$cmake_macros_file.input) {
CMAKE_MODULE_MACROS = "true"
@@ -232,7 +247,7 @@ index 8539bd928f..f8b37533a3 100644
cmake_macros_file.CONFIG = verbatim
!build_pass:QMAKE_SUBSTITUTES += cmake_macros_file
-@@ -361,7 +390,7 @@ exists($$cmake_macros_file.input) {
+@@ -407,7 +435,7 @@ exists($$cmake_macros_file.input) {
cmake_qt5_module_files.files += $$cmake_macros_file.output
}
@@ -242,7 +257,7 @@ index 8539bd928f..f8b37533a3 100644
# We are generating cmake files. Most developers of Qt are not aware of cmake,
# so we require automatic tests to be available. The only module which should
diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
-index 88ea04ce2c..316a87aa85 100644
+index a2ceede0cf..5883af96d3 100644
--- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
+++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
@@ -3,6 +3,33 @@ if (CMAKE_VERSION VERSION_LESS 3.1.0)
@@ -526,7 +541,7 @@ index 88ea04ce2c..316a87aa85 100644
$$VERSION ${_Qt5$${CMAKE_MODULE_NAME}_FIND_VERSION_EXACT}
${_Qt5$${CMAKE_MODULE_NAME}_DEPENDENCIES_FIND_QUIET}
${_Qt5$${CMAKE_MODULE_NAME}_FIND_DEPENDENCIES_REQUIRED}
-@@ -335,28 +408,32 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+@@ -335,25 +408,25 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
)
endif()
@@ -563,6 +578,17 @@ index 88ea04ce2c..316a87aa85 100644
+ list(REMOVE_DUPLICATES ${QT_VARIANT_PREFIX}Qt5$${CMAKE_MODULE_NAME}_EXECUTABLE_COMPILE_FLAGS)
!!ENDIF // TEMPLATE != aux
+ # It can happen that the same FooConfig.cmake file is included when calling find_package()
+@@ -368,11 +441,16 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+ #
+ # Make sure to return early in the original Config inclusion, because the target has already
+ # been defined as part of the second inclusion.
+- if(TARGET Qt5::$${CMAKE_MODULE_NAME})
++ set(TARGET_NAME ${QT_VARIANT_PREFIX}Qt5::$${CMAKE_MODULE_NAME})
++ if(TARGET ${TARGET_NAME})
+ return()
+ endif()
+
+!!IF !isEmpty(CMAKE_STATIC_TYPE)
+ set(_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES \"$${CMAKE_QT5_MODULE_DEPS_STATIC}\")
+!!ELSE
@@ -571,7 +597,7 @@ index 88ea04ce2c..316a87aa85 100644
!!IF !isEmpty(CMAKE_INTERFACE_QT5_MODULE_DEPS)
list(APPEND _Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES \"$${CMAKE_INTERFACE_QT5_MODULE_DEPS}\")
-@@ -367,13 +444,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+@@ -383,13 +461,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
!!IF !isEmpty(CMAKE_DEBUG_TYPE)
!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
_qt5_$${CMAKE_MODULE_NAME}_process_prl_file(
@@ -587,7 +613,7 @@ index 88ea04ce2c..316a87aa85 100644
_Qt5$${CMAKE_MODULE_NAME}_STATIC_DEBUG_LIB_DEPENDENCIES
_Qt5$${CMAKE_MODULE_NAME}_STATIC_DEBUG_LINK_FLAGS
)
-@@ -383,13 +460,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+@@ -399,13 +477,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
!!IF !isEmpty(CMAKE_RELEASE_TYPE)
!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
_qt5_$${CMAKE_MODULE_NAME}_process_prl_file(
@@ -603,14 +629,13 @@ index 88ea04ce2c..316a87aa85 100644
_Qt5$${CMAKE_MODULE_NAME}_STATIC_RELEASE_LIB_DEPENDENCIES
_Qt5$${CMAKE_MODULE_NAME}_STATIC_RELEASE_LINK_FLAGS
)
-@@ -397,30 +474,44 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+@@ -413,32 +491,45 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
!!ENDIF
endif()
- add_library(Qt5::$${CMAKE_MODULE_NAME} STATIC IMPORTED)
- set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} PROPERTY IMPORTED_LINK_INTERFACE_LANGUAGES "CXX")
+!!ENDIF
-+ set(TARGET_NAME ${QT_VARIANT_PREFIX}Qt5::$${CMAKE_MODULE_NAME})
+!!IF !isEmpty(CMAKE_STATIC_TYPE)
+ add_library(${TARGET_NAME} STATIC IMPORTED)
+ set_property(TARGET ${TARGET_NAME} PROPERTY IMPORTED_LINK_INTERFACE_LANGUAGES "CXX")
@@ -656,9 +681,12 @@ index 88ea04ce2c..316a87aa85 100644
+ set_property(TARGET ${TARGET_NAME} PROPERTY INTERFACE_QT_ENABLED_FEATURES $$join(QT.$${MODULE}.enabled_features, ";"))
+ set_property(TARGET ${TARGET_NAME} PROPERTY INTERFACE_QT_DISABLED_FEATURES $$join(QT.$${MODULE}.disabled_features, ";"))
+- set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} PROPERTY INTERFACE_QT_PLUGIN_TYPES \"$${CMAKE_MODULE_PLUGIN_TYPES}\")
++ set_property(TARGET ${TARGET_NAME} PROPERTY INTERFACE_QT_PLUGIN_TYPES \"$${CMAKE_MODULE_PLUGIN_TYPES}\")
+
# Find plugin targets
file(GLOB pluginTargetsMaybe \"${CMAKE_CURRENT_LIST_DIR}/*Qt5$${CMAKE_MODULE_NAME}_*.cmake\")
-@@ -434,7 +525,11 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+@@ -452,7 +543,11 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
endforeach()
endif()
@@ -670,7 +698,7 @@ index 88ea04ce2c..316a87aa85 100644
set_property(TARGET ${PLUGIN_TARGET_NAME} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${CONFIG})
!!IF isEmpty(CMAKE_PLUGIN_DIR_IS_ABSOLUTE)
-@@ -442,7 +537,11 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+@@ -460,7 +555,11 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
!!ELSE
set(imported_location \"$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\")
!!ENDIF
@@ -682,12 +710,16 @@ index 88ea04ce2c..316a87aa85 100644
set_target_properties(${PLUGIN_TARGET_NAME} PROPERTIES
\"IMPORTED_LOCATION_${CONFIG}\" ${imported_location}
)
-@@ -473,16 +572,16 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+@@ -490,17 +589,20 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+ endforeach()
endif()
++ # set TARGET_NAME back to current module (when loading plugin targets other modules might have been loaded in the meantime)
++ set(TARGET_NAME ${QT_VARIANT_PREFIX}Qt5::$${CMAKE_MODULE_NAME})
++
set(_Qt5$${CMAKE_MODULE_NAME}_PRIVATE_DIRS_EXIST TRUE)
- foreach (_Qt5$${CMAKE_MODULE_NAME}_PRIVATE_DIR ${Qt5$${CMAKE_MODULE_NAME}_OWN_PRIVATE_INCLUDE_DIRS})
-+ foreach (_Qt5$${CMAKE_MODULE_NAME}_PRIVATE_DIR ${${QT_VARIANT_PREFIX}Qt5$${CMAKE_MODULE_NAME}_OWN_PRIVATE_INCLUDE_DIRS})
++ foreach (_Qt5$${CMAKE_MODULE_NAME}_PRIVATE_DIR ${${TARGET_NAME}_OWN_PRIVATE_INCLUDE_DIRS})
if (NOT EXISTS ${_Qt5$${CMAKE_MODULE_NAME}_PRIVATE_DIR})
set(_Qt5$${CMAKE_MODULE_NAME}_PRIVATE_DIRS_EXIST FALSE)
endif()
@@ -699,11 +731,11 @@ index 88ea04ce2c..316a87aa85 100644
- INTERFACE_INCLUDE_DIRECTORIES ${Qt5$${CMAKE_MODULE_NAME}_OWN_PRIVATE_INCLUDE_DIRS}
+ add_library(${TARGET_NAME}Private INTERFACE IMPORTED)
+ set_property(TARGET ${TARGET_NAME}Private PROPERTY
-+ INTERFACE_INCLUDE_DIRECTORIES ${${QT_VARIANT_PREFIX}Qt5$${CMAKE_MODULE_NAME}_OWN_PRIVATE_INCLUDE_DIRS}
++ INTERFACE_INCLUDE_DIRECTORIES ${${TARGET_NAME}_OWN_PRIVATE_INCLUDE_DIRS}
)
set(_Qt5$${CMAKE_MODULE_NAME}_PRIVATEDEPS)
foreach(dep ${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES})
-@@ -491,69 +590,72 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+@@ -509,69 +611,72 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
endif()
endforeach()
!!IF !isEmpty(CMAKE_STATIC_TYPE)
@@ -799,7 +831,7 @@ index 88ea04ce2c..316a87aa85 100644
if (EXISTS
!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
\"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_RELEASE}\"
-@@ -566,7 +668,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+@@ -584,7 +689,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
!!ELSE
\"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
!!ENDIF
@@ -808,7 +840,7 @@ index 88ea04ce2c..316a87aa85 100644
endif()
!!ENDIF // CMAKE_STATIC_TYPE
-@@ -576,19 +678,22 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+@@ -594,19 +699,22 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
!!ENDIF // CMAKE_DEBUG_TYPE
!!ELSE // TEMPLATE != aux
@@ -837,16 +869,30 @@ index 88ea04ce2c..316a87aa85 100644
endif()
diff --git a/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in b/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in
-index ec5f3cc437..1e4d98086c 100644
+index 25f2162fe6..eb286293b7 100644
--- a/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in
+++ b/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in
-@@ -1,14 +1,22 @@
+@@ -1,13 +1,13 @@
# Some Qt modules also load plugin target in extra config, so check whether the target already exists
-if(NOT TARGET Qt5::$$CMAKE_PLUGIN_NAME)
- add_library(Qt5::$$CMAKE_PLUGIN_NAME MODULE IMPORTED)
+if(NOT TARGET ${QT_VARIANT_PREFIX}Qt5::$$CMAKE_PLUGIN_NAME)
+ add_library(${QT_VARIANT_PREFIX}Qt5::$$CMAKE_PLUGIN_NAME MODULE IMPORTED)
+ !!IF !isEmpty(CMAKE_STATIC_TYPE)
+ set(_Qt5$${CMAKE_PLUGIN_NAME}_MODULE_DEPENDENCIES \"$${CMAKE_PLUGIN_MODULE_DEPS}\")
+
+ foreach(_module_dep ${_Qt5$${CMAKE_PLUGIN_NAME}_MODULE_DEPENDENCIES})
+- if(NOT Qt5${_module_dep}_FOUND)
+- find_package(Qt5${_module_dep}
++ if(NOT ${QT_VARIANT_PREFIX}Qt5${_module_dep}_FOUND)
++ find_package(${QT_VARIANT_PREFIX}Qt5${_module_dep}
+ $$VERSION ${_Qt5$${CMAKE_MODULE_NAME}_FIND_VERSION_EXACT}
+ ${_Qt5$${CMAKE_MODULE_NAME}_DEPENDENCIES_FIND_QUIET}
+ ${_Qt5$${CMAKE_MODULE_NAME}_FIND_DEPENDENCIES_REQUIRED}
+@@ -17,14 +17,22 @@ foreach(_module_dep ${_Qt5$${CMAKE_PLUGIN_NAME}_MODULE_DEPENDENCIES})
+ endforeach()
+
!!IF !isEmpty(CMAKE_RELEASE_TYPE)
- _populate_$${CMAKE_MODULE_NAME}_plugin_properties(Qt5::$$CMAKE_MODULE_NAME Qt5::$$CMAKE_PLUGIN_NAME $$CMAKE_PLUGIN_NAME RELEASE \"$${CMAKE_PLUGIN_LOCATION_RELEASE}\")
+!!IF !isEmpty(CMAKE_STATIC_TYPE)
@@ -855,6 +901,8 @@ index ec5f3cc437..1e4d98086c 100644
+ _populate_$${CMAKE_MODULE_NAME}_plugin_properties(${QT_VARIANT_PREFIX}Qt5::$$CMAKE_MODULE_NAME ${QT_VARIANT_PREFIX}Qt5::$$CMAKE_PLUGIN_NAME $$CMAKE_PLUGIN_NAME RELEASE \"$${CMAKE_PLUGIN_LOCATION_RELEASE}\")
+!!ENDIF
!!ENDIF
+ !!ENDIF
+
!!IF !isEmpty(CMAKE_DEBUG_TYPE)
- _populate_$${CMAKE_MODULE_NAME}_plugin_properties(Qt5::$$CMAKE_MODULE_NAME Qt5::$$CMAKE_PLUGIN_NAME $$CMAKE_PLUGIN_NAME DEBUG \"$${CMAKE_PLUGIN_LOCATION_DEBUG}\")
+!!IF !isEmpty(CMAKE_STATIC_TYPE)
@@ -886,7 +934,7 @@ index 0000000000..0091940fd2
+set(OVERRIDE_QT_VARIANT_PREFIX "${ORIGINAL_OVERRIDE_QT_VARIANT_PREFIX}")
+
diff --git a/src/corelib/Qt5CoreConfigExtras.cmake.in b/src/corelib/Qt5CoreConfigExtras.cmake.in
-index e0652fdcf9..f0add757bb 100644
+index 9b672327ef..58d1d5b366 100644
--- a/src/corelib/Qt5CoreConfigExtras.cmake.in
+++ b/src/corelib/Qt5CoreConfigExtras.cmake.in
@@ -1,4 +1,6 @@
@@ -896,7 +944,7 @@ index e0652fdcf9..f0add757bb 100644
if (NOT TARGET Qt5::qmake)
add_executable(Qt5::qmake IMPORTED)
-@@ -50,9 +52,9 @@ set(Qt5Core_QMAKE_EXECUTABLE Qt5::qmake)
+@@ -52,9 +54,9 @@ set(Qt5Core_QMAKE_EXECUTABLE Qt5::qmake)
set(Qt5Core_MOC_EXECUTABLE Qt5::moc)
set(Qt5Core_RCC_EXECUTABLE Qt5::rcc)
@@ -909,7 +957,7 @@ index e0652fdcf9..f0add757bb 100644
COMPATIBLE_INTERFACE_STRING QT_MAJOR_VERSION QT_COORD_TYPE
)
-@@ -63,7 +65,7 @@ foreach(_dir ${_qt5_corelib_extra_includes})
+@@ -65,7 +67,7 @@ foreach(_dir ${_qt5_corelib_extra_includes})
endforeach()
list(APPEND Qt5Core_INCLUDE_DIRS ${_qt5_corelib_extra_includes})
@@ -918,7 +966,7 @@ index e0652fdcf9..f0add757bb 100644
set(_qt5_corelib_extra_includes)
# Targets using Qt need to use the POSITION_INDEPENDENT_CODE property. The
-@@ -78,7 +80,7 @@ set(Qt5_POSITION_INDEPENDENT_CODE True)
+@@ -80,7 +82,7 @@ set(Qt5_POSITION_INDEPENDENT_CODE True)
# Applications now need to be compiled with the -fPIC option if the Qt option
# \"reduce relocations\" is active. For backward compatibility only, Qt accepts
# the use of -fPIE for GCC 4.x versions.
@@ -927,7 +975,7 @@ index e0652fdcf9..f0add757bb 100644
# TODO Qt6: Remove
set(Qt5Core_EXECUTABLE_COMPILE_FLAGS \"\")
-@@ -86,7 +88,7 @@ set(Qt5Core_EXECUTABLE_COMPILE_FLAGS \"\")
+@@ -88,7 +90,7 @@ set(Qt5Core_EXECUTABLE_COMPILE_FLAGS \"\")
!!IF !isEmpty(QT_NAMESPACE)
list(APPEND Qt5Core_DEFINITIONS -DQT_NAMESPACE=$$QT_NAMESPACE)
list(APPEND Qt5Core_COMPILE_DEFINITIONS QT_NAMESPACE=$$QT_NAMESPACE)
@@ -936,7 +984,7 @@ index e0652fdcf9..f0add757bb 100644
!!ENDIF
!!IF !isEmpty(CMAKE_DISABLED_FEATURES)
-@@ -95,9 +97,9 @@ set(Qt5_DISABLED_FEATURES
+@@ -97,9 +99,9 @@ set(Qt5_DISABLED_FEATURES
)
!!ENDIF
@@ -948,7 +996,7 @@ index e0652fdcf9..f0add757bb 100644
!!IF qtConfig(reduce_exports)
set(QT_VISIBILITY_AVAILABLE \"True\")
-@@ -145,14 +147,14 @@ if (NOT TARGET Qt5::WinMain)
+@@ -147,14 +149,14 @@ if (NOT TARGET Qt5::WinMain)
set(_isWin32 $<BOOL:$<TARGET_PROPERTY:WIN32_EXECUTABLE>>)
set(_isNotExcluded $<NOT:$<BOOL:$<TARGET_PROPERTY:Qt5_NO_LINK_QTMAIN>>>)
set(_isPolicyNEW $<TARGET_POLICY:CMP0020>)
@@ -1010,5 +1058,5 @@ index 2a575958ae..ca0e3be3b5 100644
INTERFACE_COMPILE_DEFINITIONS QT_TESTCASE_BUILDDIR=\\\"\${CMAKE_BINARY_DIR}\\\"
)
--
-2.24.0
+2.24.1
diff --git a/0022-Adjust-linker-flags-for-static-build-with-cmake-ming.patch b/0022-Adjust-linker-flags-for-static-build-with-cmake-ming.patch
index e5bdc2cc3a5..3b6042f5b99 100644
--- a/0022-Adjust-linker-flags-for-static-build-with-cmake-ming.patch
+++ b/0022-Adjust-linker-flags-for-static-build-with-cmake-ming.patch
@@ -1,7 +1,7 @@
-From afef15710db64b5892939103c7b95076b926703f Mon Sep 17 00:00:00 2001
+From 918b0fcbabce59d577fc50f20df512d58f49d975 Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Fri, 2 Jun 2017 16:42:07 +0200
-Subject: [PATCH 22/32] Adjust linker flags for static build with
+Subject: [PATCH 22/31] Adjust linker flags for static build with
cmake/mingw-w64
Change-Id: I33b88976d8f5ce87ce431a6f422fe87785bf5b8d
@@ -10,11 +10,11 @@ Change-Id: I33b88976d8f5ce87ce431a6f422fe87785bf5b8d
1 file changed, 7 insertions(+)
diff --git a/src/corelib/Qt5CoreConfigExtras.cmake.in b/src/corelib/Qt5CoreConfigExtras.cmake.in
-index f0add757bb..5328da2e80 100644
+index 58d1d5b366..967dc64a19 100644
--- a/src/corelib/Qt5CoreConfigExtras.cmake.in
+++ b/src/corelib/Qt5CoreConfigExtras.cmake.in
-@@ -173,3 +173,10 @@ get_filename_component(_Qt5CoreConfigDir ${CMAKE_CURRENT_LIST_FILE} PATH)
- set(_Qt5CTestMacros \"${_Qt5CoreConfigDir}/Qt5CTestMacros.cmake\")
+@@ -179,3 +179,10 @@ if (ANDROID_PLATFORM)
+ endif()
_qt5_Core_check_file_exists(${_Qt5CTestMacros})
+
@@ -25,5 +25,5 @@ index f0add757bb..5328da2e80 100644
+unset(_isExe)
+!!ENDIF
--
-2.24.0
+2.24.1
diff --git a/0023-Use-correct-pkg-config-static-flag.patch b/0023-Use-correct-pkg-config-static-flag.patch
index 64106dcb674..3f3253e9c80 100644
--- a/0023-Use-correct-pkg-config-static-flag.patch
+++ b/0023-Use-correct-pkg-config-static-flag.patch
@@ -1,14 +1,14 @@
-From a618febf21e6118164eac2d0548e278bc2992941 Mon Sep 17 00:00:00 2001
+From c71d77d69a2b62bee1cd1b9dc704e2b56eef0c6e Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Sun, 18 Sep 2016 18:50:21 +0200
-Subject: [PATCH 23/32] Use correct pkg-config --static flag
+Subject: [PATCH 23/31] Use correct pkg-config --static flag
---
configure.pri | 3 +++
1 file changed, 3 insertions(+)
diff --git a/configure.pri b/configure.pri
-index c108b2843c..9525dd6336 100644
+index 05dc704cde..60d55eb569 100644
--- a/configure.pri
+++ b/configure.pri
@@ -345,6 +345,9 @@ defineTest(qtConfTest_detectPkgConfig) {
@@ -22,5 +22,5 @@ index c108b2843c..9525dd6336 100644
$$qtConfEvaluate("features.cross_compile") {
# cross compiling, check that pkg-config is set up sanely
--
-2.24.0
+2.24.1
diff --git a/0024-Fix-macro-invoking-moc-rcc-and-uic.patch b/0024-Fix-macro-invoking-moc-rcc-and-uic.patch
index 99cf9aea76c..dd7f66ccacf 100644
--- a/0024-Fix-macro-invoking-moc-rcc-and-uic.patch
+++ b/0024-Fix-macro-invoking-moc-rcc-and-uic.patch
@@ -1,7 +1,7 @@
-From 66b806863d218a367f67b8d0a75610b614ff13b3 Mon Sep 17 00:00:00 2001
+From f2e043c1c3d6e268ac890062068ff4bb3306d2ff Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Sun, 4 Dec 2016 20:35:47 +0100
-Subject: [PATCH 24/32] Fix macro invoking moc, rcc and uic
+Subject: [PATCH 24/31] Fix macro invoking moc, rcc and uic
* Otherwise the arguments aren't passed correctly leading to errors like
```
@@ -18,7 +18,7 @@ Change-Id: I6fde86d0a3ade37b4376604a1eb6d5723eda8b4c
2 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/src/corelib/Qt5CoreMacros.cmake b/src/corelib/Qt5CoreMacros.cmake
-index 0f006fe1e3..1db4bed272 100644
+index 17cc19fc4e..29022697a4 100644
--- a/src/corelib/Qt5CoreMacros.cmake
+++ b/src/corelib/Qt5CoreMacros.cmake
@@ -132,8 +132,9 @@ function(QT5_CREATE_MOC_COMMAND infile outfile moc_flags moc_options moc_target
@@ -70,5 +70,5 @@ index 737371a5ad..d103278cdf 100644
MAIN_DEPENDENCY ${infile} VERBATIM)
set_source_files_properties(${infile} PROPERTIES SKIP_AUTOUIC ON)
--
-2.24.0
+2.24.1
diff --git a/0025-Ignore-errors-about-missing-feature-static.patch b/0025-Ignore-errors-about-missing-feature-static.patch
index 8cfe19d0b2f..9e24895c532 100644
--- a/0025-Ignore-errors-about-missing-feature-static.patch
+++ b/0025-Ignore-errors-about-missing-feature-static.patch
@@ -1,7 +1,7 @@
-From b5fccc2c7f1da12f76fa55d15f32f2c0d80f820c Mon Sep 17 00:00:00 2001
+From 3b2e2f35716d183cba076dfea9de6ce73bd2ed1d Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Wed, 25 Jan 2017 20:59:54 +0100
-Subject: [PATCH 25/32] Ignore errors about missing feature static
+Subject: [PATCH 25/31] Ignore errors about missing feature static
Not sure why this error occurs, let's hope for the best
---
@@ -10,10 +10,10 @@ Not sure why this error occurs, let's hope for the best
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/mkspecs/features/qt_build_config.prf b/mkspecs/features/qt_build_config.prf
-index 8a7c9c28d3..003a694f44 100644
+index 8273ba3fe1..4cdb55d4b3 100644
--- a/mkspecs/features/qt_build_config.prf
+++ b/mkspecs/features/qt_build_config.prf
-@@ -143,5 +143,5 @@ defineTest(qtConfig) {
+@@ -150,5 +150,5 @@ defineTest(qtConfig) {
contains(QT.$${module}.disabled_features, $$1): \
return(false)
}
@@ -21,10 +21,10 @@ index 8a7c9c28d3..003a694f44 100644
+ !equals($$1, "static"): error("Could not find feature $${1}.")
}
diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf
-index 1903e509c8..1fcb597fa3 100644
+index 661b7dd961..86c873e3fd 100644
--- a/mkspecs/features/qt_functions.prf
+++ b/mkspecs/features/qt_functions.prf
-@@ -348,5 +348,5 @@ defineTest(qtConfig) {
+@@ -359,5 +359,5 @@ defineTest(qtConfig) {
contains(QT.$${module}.disabled_features, $$1): \
return(false)
}
@@ -32,5 +32,5 @@ index 1903e509c8..1fcb597fa3 100644
+ !equals($$1, "static"): error("Could not find feature $${1}.")
}
--
-2.24.0
+2.24.1
diff --git a/0026-Enable-and-fix-use-of-iconv.patch b/0026-Enable-and-fix-use-of-iconv.patch
index ab235be98f6..ce2faf169bc 100644
--- a/0026-Enable-and-fix-use-of-iconv.patch
+++ b/0026-Enable-and-fix-use-of-iconv.patch
@@ -1,7 +1,7 @@
-From 302e9b9cc7d031079f174d4cede3f9407a254b29 Mon Sep 17 00:00:00 2001
+From 14edd208b85c55eb5e313600752e769627199cde Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Wed, 25 Jan 2017 21:08:20 +0100
-Subject: [PATCH 26/32] Enable and fix use of iconv
+Subject: [PATCH 26/31] Enable and fix use of iconv
Change-Id: I5f0ab27afca0800dec11c7af74d196190820ae5c
---
@@ -49,7 +49,7 @@ index 9c39727946..cc14036b25 100644
#else
char **inBytesPtr = &inBytes;
diff --git a/src/corelib/configure.json b/src/corelib/configure.json
-index 1b01b2b817..4247c10b03 100644
+index ae360239c6..5fd57a1a66 100644
--- a/src/corelib/configure.json
+++ b/src/corelib/configure.json
@@ -72,7 +72,7 @@
@@ -61,7 +61,7 @@ index 1b01b2b817..4247c10b03 100644
"char *outp;",
"size_t inbytes, outbytes;",
"iconv(x, &inp, &inbytes, &outp, &outbytes);",
-@@ -632,9 +632,9 @@
+@@ -672,9 +672,9 @@
},
"gnu-libiconv": {
"label": "GNU iconv",
@@ -74,5 +74,5 @@ index 1b01b2b817..4247c10b03 100644
},
"icu": {
--
-2.24.0
+2.24.1
diff --git a/0027-Ignore-failing-pkg-config-test.patch b/0027-Ignore-failing-pkg-config-test.patch
index 0988bde57ec..60d97e003ec 100644
--- a/0027-Ignore-failing-pkg-config-test.patch
+++ b/0027-Ignore-failing-pkg-config-test.patch
@@ -1,7 +1,7 @@
-From 548b80f87af82a5ce41400748c0492769821657d Mon Sep 17 00:00:00 2001
+From d608eb4d39293401ba8cdf887385c4231c1eaae4 Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Wed, 25 Jan 2017 21:08:48 +0100
-Subject: [PATCH 27/32] Ignore failing pkg-config test
+Subject: [PATCH 27/31] Ignore failing pkg-config test
Didn't investigate why it fails, let's hope for the best
---
@@ -9,10 +9,10 @@ Didn't investigate why it fails, let's hope for the best
1 file changed, 1 deletion(-)
diff --git a/configure.json b/configure.json
-index 36545a593b..087c2f6419 100644
+index bf7c14906f..19221ba008 100644
--- a/configure.json
+++ b/configure.json
-@@ -728,7 +728,6 @@
+@@ -755,7 +755,6 @@
"pkg-config": {
"label": "Using pkg-config",
"autoDetect": "!config.darwin && !config.win32",
@@ -21,5 +21,5 @@ index 36545a593b..087c2f6419 100644
"publicFeature",
{ "type": "publicQtConfig", "negative": true },
--
-2.24.0
+2.24.1
diff --git a/0028-Prevent-qmake-from-messing-static-lib-dependencies.patch b/0028-Prevent-qmake-from-messing-static-lib-dependencies.patch
index 91cf089e372..27265ae6d5e 100644
--- a/0028-Prevent-qmake-from-messing-static-lib-dependencies.patch
+++ b/0028-Prevent-qmake-from-messing-static-lib-dependencies.patch
@@ -1,43 +1,45 @@
-From 27693312f0cd1911215e23fd6d20ed1022b247e3 Mon Sep 17 00:00:00 2001
+From 479bc0ec33883ccc56930eb0bf54530acd4bd2dc Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Tue, 7 Feb 2017 18:25:28 +0100
-Subject: [PATCH 28/32] Prevent qmake from messing static lib dependencies
+Subject: [PATCH 28/31] Prevent qmake from messing static lib dependencies
In particular, it messes resolving cyclic dependency between
static freetype2 and harfbuzz
+
+Change-Id: Ie5a4e2ad96bd613ae4c26486edb30c74929459b0
---
qmake/generators/unix/unixmake.cpp | 3 +++
qmake/generators/win32/winmakefile.cpp | 3 +++
2 files changed, 6 insertions(+)
diff --git a/qmake/generators/unix/unixmake.cpp b/qmake/generators/unix/unixmake.cpp
-index d7c9413290..3026318a70 100644
+index f7bd6dc663..b76c444012 100644
--- a/qmake/generators/unix/unixmake.cpp
+++ b/qmake/generators/unix/unixmake.cpp
-@@ -393,6 +393,9 @@ UnixMakefileGenerator::fixLibFlag(const ProString &lib)
+@@ -391,6 +391,9 @@ UnixMakefileGenerator::fixLibFlag(const ProString &lib)
bool
UnixMakefileGenerator::findLibraries(bool linkPrl, bool mergeLflags)
{
+ if(project->isActiveConfig("staticlib")) {
+ return false; // prevent qmake from messing static lib dependencies
+ }
- QList<QMakeLocalFileName> libdirs, frameworkdirs;
+ QVector<QMakeLocalFileName> libdirs, frameworkdirs;
int libidx = 0, fwidx = 0;
for (const ProString &dlib : project->values("QMAKE_DEFAULT_LIBDIRS"))
diff --git a/qmake/generators/win32/winmakefile.cpp b/qmake/generators/win32/winmakefile.cpp
-index 17592c2492..26f3f5cd82 100644
+index 3b4372ad05..cd10225e99 100644
--- a/qmake/generators/win32/winmakefile.cpp
+++ b/qmake/generators/win32/winmakefile.cpp
-@@ -87,6 +87,9 @@ Win32MakefileGenerator::findLibraries(bool linkPrl, bool mergeLflags)
+@@ -106,6 +106,9 @@ Win32MakefileGenerator::findLibraries(bool linkPrl, bool mergeLflags)
impexts.append(project->values("QMAKE_EXTENSION_IMPORTLIB"));
impexts.append(project->values("QMAKE_EXTENSION_STATICLIB"));
}
+ if(project->isActiveConfig("staticlib")) {
+ return false; // prevent qmake from messing static lib dependencies
+ }
- QList<QMakeLocalFileName> dirs;
+ QVector<LibrarySearchPath> dirs;
int libidx = 0;
for (const ProString &dlib : project->values("QMAKE_DEFAULT_LIBDIRS"))
--
-2.24.0
+2.24.1
diff --git a/0029-Hardcode-linker-flags-for-platform-plugins.patch b/0029-Hardcode-linker-flags-for-platform-plugins.patch
index 8754a4dbd98..3562d503232 100644
--- a/0029-Hardcode-linker-flags-for-platform-plugins.patch
+++ b/0029-Hardcode-linker-flags-for-platform-plugins.patch
@@ -1,20 +1,22 @@
-From 4956ef34ebadffb50a27e5d81762d7e349be5339 Mon Sep 17 00:00:00 2001
+From 6779a50c73ed1683dca19efc018b6f657c146a91 Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Wed, 25 Jan 2017 23:42:30 +0100
-Subject: [PATCH 29/32] Hardcode linker flags for platform plugins
+Subject: [PATCH 29/31] Hardcode linker flags for platform plugins
Otherwise incorrect order of libs leads to errors
when building libqminimal.dll, libqoffscreen.dll,
libqwindows.dll and libqdirect2d.dll
+
+Change-Id: Ibff901ecce864ae8d5ca2adbe37bcec28e5912f3
---
src/plugins/platforms/direct2d/direct2d.pro | 30 ++++++++++++++---
src/plugins/platforms/minimal/minimal.pro | 15 +++++++--
src/plugins/platforms/offscreen/offscreen.pro | 14 ++++++--
- src/plugins/platforms/windows/windows.pro | 32 +++++++++++++------
- 4 files changed, 73 insertions(+), 18 deletions(-)
+ src/plugins/platforms/windows/windows.pro | 33 +++++++++++++------
+ 4 files changed, 73 insertions(+), 19 deletions(-)
diff --git a/src/plugins/platforms/direct2d/direct2d.pro b/src/plugins/platforms/direct2d/direct2d.pro
-index 9764272632..25994da1da 100644
+index 6e73bd14f9..e009a5387a 100644
--- a/src/plugins/platforms/direct2d/direct2d.pro
+++ b/src/plugins/platforms/direct2d/direct2d.pro
@@ -1,12 +1,32 @@
@@ -53,8 +55,8 @@ index 9764272632..25994da1da 100644
+LIBS += $$QT_BUILD_TREE/lib/$${QMAKE_PREFIX_STATICLIB}Qt5WindowsUIAutomationSupport.$${QMAKE_EXTENSION_STATICLIB}
+INCLUDEPATH += $$QT_SOURCE_TREE/include/Qt5WindowsUIAutomationSupport/$${QT_VERSION}
- LIBS += -ldwmapi -lversion -lgdi32
- QMAKE_USE_PRIVATE += dwrite_1 d2d1_1 d3d11_1 dxgi1_2
+ LIBS += -ldwmapi -lversion
+ QMAKE_USE_PRIVATE += gdi32 dwrite_1 d2d1_1 d3d11_1 dxgi1_2
diff --git a/src/plugins/platforms/minimal/minimal.pro b/src/plugins/platforms/minimal/minimal.pro
index a1a2da547b..e32225d9b9 100644
--- a/src/plugins/platforms/minimal/minimal.pro
@@ -107,10 +109,10 @@ index f226132592..d8ab86b322 100644
DEFINES += QT_NO_FOREACH
diff --git a/src/plugins/platforms/windows/windows.pro b/src/plugins/platforms/windows/windows.pro
-index 174bc7b609..285d90c6d3 100644
+index 50a3bb41a9..285d90c6d3 100644
--- a/src/plugins/platforms/windows/windows.pro
+++ b/src/plugins/platforms/windows/windows.pro
-@@ -1,14 +1,28 @@
+@@ -1,15 +1,28 @@
TARGET = qwindows
-QT += \
@@ -121,7 +123,8 @@ index 174bc7b609..285d90c6d3 100644
-qtConfig(accessibility): QT += accessibility_support-private
-qtConfig(vulkan): QT += vulkan_support-private
-
--LIBS += -lgdi32 -ldwmapi
+-LIBS += -ldwmapi
+-QMAKE_USE_PRIVATE += gdi32
+QT += core-private gui-private
+
+# Fix linker error when building libqwindows.dll by specifying linker flags for
@@ -149,5 +152,5 @@ index 174bc7b609..285d90c6d3 100644
include(windows.pri)
--
-2.24.0
+2.24.1
diff --git a/0030-Fix-linking-against-static-plugins-with-qmake.patch b/0030-Fix-linking-against-static-plugins-with-qmake.patch
index 540405268dc..78a46018f27 100644
--- a/0030-Fix-linking-against-static-plugins-with-qmake.patch
+++ b/0030-Fix-linking-against-static-plugins-with-qmake.patch
@@ -1,7 +1,7 @@
-From ef72bc6a1e58813a89587ca11bb27e039cba2fc5 Mon Sep 17 00:00:00 2001
+From 2860688da70e78bbff63e0089d41364e528b73f4 Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Fri, 25 Aug 2017 17:07:17 +0200
-Subject: [PATCH 30/32] Fix linking against static plugins with qmake
+Subject: [PATCH 30/31] Fix linking against static plugins with qmake
Required because qtConfig(static) does not work
with 'Merge shared and static library trees'
@@ -33,5 +33,5 @@ index d6299d8eed..5311748953 100644
# Check if the plugin is known to Qt. We can use this to determine
# the plugin path. Unknown plugins must rely on the default link path.
--
-2.24.0
+2.24.1
diff --git a/0032-Prevent-Cannot-find-feature-windows_vulkan_sdk.patch b/0031-Prevent-Cannot-find-feature-windows_vulkan_sdk.patch
index 8c18ed6c0b9..882692f05fd 100644
--- a/0032-Prevent-Cannot-find-feature-windows_vulkan_sdk.patch
+++ b/0031-Prevent-Cannot-find-feature-windows_vulkan_sdk.patch
@@ -1,7 +1,7 @@
-From 371d6eafd848635479a988a20e16d05d0a72db77 Mon Sep 17 00:00:00 2001
+From a56c12fc0a7428ca32dc7e7f4f54ed725ef288fa Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Mon, 24 Jun 2019 13:51:02 +0200
-Subject: [PATCH 32/32] Prevent 'Cannot find feature windows_vulkan_sdk'
+Subject: [PATCH 31/31] Prevent 'Cannot find feature windows_vulkan_sdk'
See https://bugreports.qt.io/browse/QTBUG-76660
---
@@ -18,7 +18,7 @@ index da061422dc..a5a8ec68d2 100644
+load(win32/windows_vulkan_sdk)
QMAKE_LIBS_VULKAN =
diff --git a/mkspecs/features/qmake_use.prf b/mkspecs/features/qmake_use.prf
-index 64faa4f215..f899792e4e 100644
+index 8475e4111a..c0eb8faa17 100644
--- a/mkspecs/features/qmake_use.prf
+++ b/mkspecs/features/qmake_use.prf
@@ -15,7 +15,9 @@ for(ever) {
@@ -33,5 +33,5 @@ index 64faa4f215..f899792e4e 100644
LD_USES = $$resolve_depends(LD_USES, QMAKE_DEPENDS_, _LD)
for (nu, LD_USES) {
--
-2.24.0
+2.24.1
diff --git a/0031-Prevent-static-build-to-prefer-dynamic-libraries.patch b/0031-Prevent-static-build-to-prefer-dynamic-libraries.patch
deleted file mode 100644
index 6b262a3f648..00000000000
--- a/0031-Prevent-static-build-to-prefer-dynamic-libraries.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 51a0ac0ff3a726f88af9e8cd472779b33117d304 Mon Sep 17 00:00:00 2001
-From: Martchus <martchus@gmx.net>
-Date: Sun, 3 Feb 2019 14:34:42 +0100
-Subject: [PATCH 31/32] Prevent static build to prefer dynamic libraries
-
-The static build should not attempt to link against dynamic libraries
-in order to get a fully statically linked binary in the end.
----
- mkspecs/features/qt_configure.prf | 12 ++++++------
- 1 file changed, 6 insertions(+), 6 deletions(-)
-
-diff --git a/mkspecs/features/qt_configure.prf b/mkspecs/features/qt_configure.prf
-index 81110e9f6d..61f7cf27d1 100644
---- a/mkspecs/features/qt_configure.prf
-+++ b/mkspecs/features/qt_configure.prf
-@@ -577,12 +577,12 @@ defineTest(qtConfResolveLibs) {
- # Under Windows, we look only for static libraries, as even for DLLs
- # one actually links against a static import library.
- mingw {
-- lcan += \
-- # MinGW supports UNIX-style library naming in addition to
-- # the MSVC style.
-- lib$${lib}.dll.a lib$${lib}.a \
-- # Fun fact: prefix-less libraries are also supported.
-- $${lib}.dll.a $${lib}.a
-+ # prefer (import) libraries for dynamic linking unless we're doing a
-+ # static build where we solely rely on presence of static libraries
-+ shared {
-+ lcan += $${QMAKE_PREFIX_STATICLIB}$${lib}.$${QMAKE_EXTENSION_IMPORTLIB} $${lib}.$${QMAKE_EXTENSION_IMPORTLIB}
-+ }
-+ lcan += $${QMAKE_PREFIX_STATICLIB}$${lib}.$${QMAKE_EXTENSION_STATICLIB} $${lib}.$${QMAKE_EXTENSION_STATICLIB}
- }
- lcan += $${lib}.lib
- }
---
-2.24.0
-
diff --git a/PKGBUILD b/PKGBUILD
index 4af7e3f6458..0ad24731c7d 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -32,7 +32,7 @@ isNoOpenGL() {
}
pkgname=mingw-w64-qt5-base-static
-pkgver=5.13.2
+pkgver=5.14.0
pkgrel=1
pkgdesc='A cross-platform application and UI framework (mingw-w64)'
# The static variant doesn't contain any executables which need to be executed on the build machine
@@ -47,7 +47,7 @@ optdepends=('mingw-w64-mesa: use LLVMpipe software rasterizer for Qt Quick'
'mingw-w64-postgresql: PostgreSQL support'
'mingw-w64-mariadb-connector-c: MySQL support')
makedepends=('mingw-w64-gcc' 'mingw-w64-postgresql' 'mingw-w64-mariadb-connector-c'
- 'mingw-w64-vulkan-headers' 'mingw-w64-pkg-config')
+ 'mingw-w64-vulkan-headers' 'mingw-w64-pkg-config' 'mingw-w64-environment')
# For running fxc.exe WINE coulde be used:
#if isANGLE || isDynamic; then
# makedepends+=('mingw-w64-wine')
@@ -85,41 +85,39 @@ source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/subm
'0028-Prevent-qmake-from-messing-static-lib-dependencies.patch'
'0029-Hardcode-linker-flags-for-platform-plugins.patch'
'0030-Fix-linking-against-static-plugins-with-qmake.patch'
- '0031-Prevent-static-build-to-prefer-dynamic-libraries.patch'
- '0032-Prevent-Cannot-find-feature-windows_vulkan_sdk.patch')
-sha256sums=('26b6b686d66a7ad28eaca349e55e2894e5a735f3831e45f2049e93b1daa92121'
- '35196184205cb58bdb1ade09c02bfc660679ed4af6dc1d807a24f1c52999545e'
- '4c66ecd2e2e215afb7f53382139b5a3a9cc87bfec2dd75af3ab8111ce3556378'
- 'dcc5acb3e160b99101b967bd696dd48a099c65754b3908c16b46c1703f134e08'
- '586bea4aa870423778eb497df48479819aa50de8d07977327eb1a0f84565813a'
- 'b5363b325198c3cfaba6437d21cc2cde6c5843d33475fc559f9eae4b20e0c867'
- '9f835025a78ab4d7dd08b1a2cb5d499790b8e01a3039741f50c93bc6722f3c71'
- '5217bae23859289898060a05769cc6088852f09206d7fc681cdcb492353be219'
- '39d32e743984904c878616afb8ffd16ad5421bc2e67606831a4245b9ef924c7b'
- 'f5fc4b36f288bb59d662c58b49a15de84f60be05d13e89719342893138f9a903'
- '48f5efe578913656ab79a35f899e15bd09fde58cc10adf8f7f5dbdc0a5022b7d'
- 'f89779100c07431fee063e0f40bcb0006662794afa522e9c5a57ac1eca24f621'
- 'f5ea9cc35754556045dd2dc07745bca89f677ade9b8566539c717d35f4ae0bd1'
- '212aeb8f2f287108d2d884c17c2f55177b8f3c39e10357e36c2f1ef2e582a12a'
- '2e7145b8a8fca349ce5838d4241d29059dd421c8722260cda5d063b75ffe3b5f'
- 'c0eff682bbc11e2258c5c40591d0222e88af0d2c136b3cede8e4792a7efba2d3'
- '8d3879a05e0fe574671bb8952393a4e7ca44183e8116053dbf01776b2d6ad4cf'
- '8b06afd5adab795a47520f1dfdb8827507f8d451eb98a02dbf1b57ede08fa6e2'
- '21f7e13919ec7d6ae88835ce34185f7d3ff3c541a1a7bad25e4354fac0201723'
- '5e08c43b1a4bfc1dfe93330119cfb85d5de873b8642cbf920d4cfbdad05a7ce5'
- 'ee0412e276bac12f57f1019807f678818cc3b166afaa2523e6d3cfbcc6baf5bf'
- 'f5f57e3b1e6314203bb3a98d7ad47c46b4894651b7d4e74749df6b7f0f7548f5'
- '22bdbef1d761426c0388a5335c2b80be52aa75e83c75f1d134eba70091de59ed'
- 'fd37d3c487790922e6dede40964d6a8abab9908d674413748c37672863374a65'
- '1c4b6e6bbc985b742e4d2124b7be002948b2cb43be4524b8b713253f2afebe96'
- '94de3861dedd76133bd3e42793f3db3a1e8b52a921095ff853038cb5b4064a5f'
- 'cd4c07f83cad7b8b1fb2995a398a3ac2ed9b4606efc0154231821db7f793676c'
- 'b15f3a0d0dd1c14c5728444ad449f2753f6c668e73e6e2ad0477fab405c338e9'
- '45af95f6f2e228f04ee3e39756cf752a04a0e58da5ed445ab79dbac0c8c7472f'
- '29ded7cd3b82e31660d4559f0d2cefde8e18af8c4cea34fd816096946ad72189'
- '13aa6ba82a4a28099c0219060deab3d3023424a8c5dcf8df6b105f3831a9a184'
- '095a39a517844a3c3ce9282a44f39478dc6d5661b6be7f5b8517f195f0fe1b14'
- 'f8aa4f1a129d0fd98f71e9a108513ff9ca78b3d86a80554e830cf6f1ba5edb00')
+ '0031-Prevent-Cannot-find-feature-windows_vulkan_sdk.patch')
+sha256sums=('4ef921c0f208a1624439801da8b3f4344a3793b660ce1095f2b7f5c4246b9463'
+ '1f4fd0f8518160f3ec0e5bc39226d857387aa4caec897201999d8eada2b328ef'
+ '450aba36cf8c60a8659406f9367a85e2055a40e1cf0a8711c6de44de1927d857'
+ '7899cdcd3450f5f0bb9cb4cd71ac6529285d4368586e1a2fabb4e14d7b3dee67'
+ '579595a48fa45191941f393defe155c57d02426e6eba1296f3f7f501f6f32576'
+ '1d233841e73c8f69a1d09b666438b26299530b23ac354e6e1e0ccbe58f3ed54c'
+ '56bdecf98463853875e257cc347141967d1edd48e21b0724d16012dd1cc8ef90'
+ '28155531ed86617a074c7a2ac8d753c052707034009ad5dcbf0f2c6dc00ee977'
+ '8f5c7da6b4ae5ce95d887372398fb147678748bca1b8970901bb0417b3440423'
+ 'f1f71a736d2cbe9aa3ac04343ae171ef3fda32b5db93bd189c9fc5510c9210e4'
+ 'c4b45dd1d19331caaa7ac89cb0d276cb6ec53ee1d2ed2f72fb119d1af000e907'
+ '2d74d87a8da273ed296890a7a717ea8c84242a2af534830ba07a44be88d90d70'
+ '37f11888ee60b68570b759ec66e1ab49e0bb0df0663b808380df5b34f054b5fe'
+ '68d3eeea07f398133d068151ca5ba65d5bf4e1396a7db739cdd77377e261a785'
+ '6e5ab1df1c7aac94259aca4bb8c8469939a944104cc847ddf4fdaf7f278dd225'
+ '4e421ed2b892911725a4a3e6aad9803339dc6d27af9a5caba0dcf082f5a08fa7'
+ 'f0629049a60362f83ebd3e9a6a67d71274e9c2f2eae21ba97062b8d5b11d759a'
+ '31d08dbfde790dd702d87f3b995322118919fc9828f22c9b1c044e912ae6f870'
+ '8ab7f64f5d017b650c39aa6e845252be71e4f37a1bfdfeee0f17aec65e233728'
+ '6c95b8fa7ed5a2c8fb48a237d172916c6b1f3197f32b3e627216d6c9759bce14'
+ '74a4fe7f163bba1312cda135c983644260cc8794cdd950385212911eb27d985c'
+ '7e415f8aad7d950add53466406ea3e0cb67180ce6493ea768937bb96ff8de33d'
+ 'eb02f4a52b712dcf8bffe57cec420b77bea060e8227f28239056b0721c494075'
+ '62a99e8e345fe776619fb5928334c40d4116e7fae59c773de70ef690dfec1d5f'
+ '87e271140d4a831a9feac53a7d0d7fae0fee9a1c20040a3181a43472c3e6f15a'
+ 'c5162eac72b87e34fcbc64c53f38c0a3dd2b174cdb049db258d899510c4febfb'
+ '1d4956c53a0759988d68ebfcae12d74f1332db075efdd85d762629d12421678c'
+ 'fd2eeb783fcc83fa7951b7fd07a87033f0229827282b4142047378297688a4b9'
+ 'c9cb158dbc2d5446f36f031478e7174188660150a1b7bcb94d7f761a51aa7342'
+ '7611dcb33265962ecfab480771db0360f1083c7672ba874b83b335e18d8909a5'
+ 'f5b2a9a54eacc2d86531005b222dff7a3313430baa55d5bae407a5fdb6028d07'
+ '65889bbb2ed14dd9e7a884a6a9015b883bbfc0d558210cc296bb3d41bee4212e')
_architectures='i686-w64-mingw32 x86_64-w64-mingw32'
@@ -146,22 +144,20 @@ prepare() {
patch -p1 -i "$patch"
done
- # make sure the Qt 5 build system uses our external ANGLE library
- #rm -rf src/3rdparty/angle include/QtANGLE/{EGL,GLES2,GLES3,KHR}
-
# make sure the Qt 5 build system uses our external PCRE library and zlib
rm -rf src/3rdparty/{pcre,zlib}
- # build qmake using mingw-w64 {C,LD}FLAGS
- # This also sets default {C,CXX,LD}FLAGS for projects built using qmake
- CPPFLAGS="${MINGW_CPPFLAGS:--D_FORTIFY_SOURCE=2}"
- CFLAGS="${MINGW_CFLAGS:-$CPPFLAGS -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4}"
- CXXFLAGS="${MINGW_CXXFLAGS:-$CPPFLAGS -O2 -pipe -fno-plt -fexceptions --param=ssp-buffer-size=4}"
- LDFLAGS="${MINGW_LDFLAGS:--Wl,-O1,--sort-common,--as-needed -fstack-protector}"
+ # clear buildflags ('!buildflags' only effects build() but not prepare())
+ unset CPPFLAGS CFLAGS CXXFLAGS LDFLAGS PKG_CONFIG_PATH
+
+ # build qmake using mingw-w64 {C,CXX,LD}FLAGS
+ # * This also sets default {C,CXX,LD}FLAGS for projects built using qmake.
+ source mingw-env
sed -i -e "s|^\(QMAKE_CFLAGS_RELEASE.*=\).*$|\1 ${CFLAGS}|" \
-e "s|^\(QMAKE_CXXFLAGS_RELEASE.*=\).*$|\1 ${CXXFLAGS}|" \
-e "s|^\(QMAKE_LFLAGS_RELEASE.*=\).*$|\1 ${LDFLAGS}|" \
- mkspecs/common/gcc-base.conf
+ mkspecs/common/gcc-base.conf \
+ mkspecs/common/g++-win32.conf
sed -i -e "s|^\(QMAKE_LFLAGS_RELEASE.*=\).*$|\1|" \
mkspecs/common/g++-unix.conf
}
@@ -169,15 +165,6 @@ prepare() {
build() {
cd "${srcdir}/${_pkgfqn}"
- # do not set any flags here, flags are configured via mkspec
- # (Setting flags here is not appropriate as it does not allow to
- # distinguish between flags for native compiler and cross compiler.
- # See prepare() function.)
- unset CFLAGS
- unset CXXFLAGS
- unset LDFLAGS
- unset PKG_CONFIG_PATH
-
for _arch in ${_architectures}; do
# define general configure arguments
local qt_configure_args="\