diff options
36 files changed, 324 insertions, 273 deletions
@@ -1,7 +1,7 @@ pkgbase = mingw-w64-qt5-base pkgdesc = A cross-platform application and UI framework (mingw-w64) - pkgver = 5.12.0 - pkgrel = 2 + pkgver = 5.12.1 + pkgrel = 1 url = https://www.qt.io/ arch = i686 arch = x86_64 @@ -29,7 +29,7 @@ pkgbase = mingw-w64-qt5-base options = !buildflags options = staticlibs options = !emptydirs - source = https://download.qt.io/official_releases/qt/5.12/5.12.0/submodules/qtbase-everywhere-src-5.12.0.tar.xz + source = https://download.qt.io/official_releases/qt/5.12/5.12.1/submodules/qtbase-everywhere-src-5.12.1.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-Use-external-ANGLE-library.patch @@ -63,40 +63,42 @@ pkgbase = mingw-w64-qt5-base source = 0031-Hardcode-linker-flags-for-platform-plugins.patch source = 0032-Fix-linking-against-static-plugins-with-qmake.patch source = 0033-Disable-hardware-randomizer-for-32-bit.patch - sha256sums = 5e03221d780e121aabd734896aab8f331e5d8c9d9b54f1eb04907d0818eaeecb - sha256sums = 5384b242223f2219c933c098397c287f387ef0b736633200c647c6feed69cc85 - sha256sums = 01e71d5375ff6fb214e0b4f623f3c007485885d8e1fdfc185a1d25b6d1ea615a - sha256sums = c2d68bcba25bd39f3d7f95271de99a28f0de33f98ae0a4f102728a48a58fa2b8 - sha256sums = cbeb19172eab4d2faef020560fb83190ac975fa54acaaf006a7b720e45b4fa43 - sha256sums = 81f9e6a05b8c78392b0b8eb08535480cd9e0ebb6ed77ecffcf382f133482f55f - sha256sums = fbcb5b586ec3a6723ac19378c40f1b28d12e8f0745db1016e38e040e6aad5e7b - sha256sums = cffb2cc60dd4aed39dec14bef889e0e4a5fe8d1171297fdd0d31d65c58cb6591 - sha256sums = 971f0176651edf8bafb1cd5062f04f1e840cc703ee85fabc1d04face637368b2 - sha256sums = 6a2e839aa513a32a2f615fbd9a010a4e9db219fe5a35678b290d52ed4ebde9eb - sha256sums = 7696e92e2b5d9c6be69d0ffe520f3539ee8b25d019b460319e7e6c1a90805b8f - sha256sums = 4db1340b60add08de2eb9e365c2c9b45fbdbb9137a42c1631e6589527b66f197 - sha256sums = a3ceba043bd7eb078a850a0189afe8e0c431e39a5d88c8c4f1609917388b8606 - sha256sums = 9471df45a4c536f83d51e2ec83bdfd3b1d6233b4fcaa992c48a1155cc31396cd - sha256sums = e2401d6cb5ccdd51406d0ff9abb8a75f28abcf0eeb5fa77cc7f02f9122f200b9 - sha256sums = 25be17392e2b73f7d8a8868d1d0671c52ab58c7d03011f3e4a9c186e9a6a2a9a - sha256sums = 84fb80ff48e6146d57530df475532a94002812e4b11a04e49ee1537ad0c91242 - sha256sums = 0e3a3f2c2bbdf5c66d823a6a4c9afa88794d97901e97c927f0ee761a9bf11db6 - sha256sums = bcef0c63c33e609098dd834e0a07e684eb75776ffd2f7db20edbc433b780fed0 - sha256sums = 6c23bc2a75720c3f66f23ecb1944d5c58ac39d6a87e1609b0d444d87a5b3df5d - sha256sums = df7a6f64dd5973a5208fc82ab2604be5e468c0460e78659a63649a9fe4bda865 - sha256sums = e983f369f7bacb6ecacbe5964ddd09a07abe2e6ddb8b8be5abeb6f4a3b2510d6 - sha256sums = 86b494b28602b0c5228e3ab14f5d22c66e2d9f19b77bc6027eb991cd99b8c1e0 - sha256sums = 00ce0189c216b3baf3874d2ae2f9437c6e7ef117206cca1abcf6b1108c7b2ad9 - sha256sums = e04105e95ecf5220f87dbf4d4bc4a5a09fb00a77a107679a63c9cbb62c84afae - sha256sums = 03d97deef6266959afefc3cb4c39b9be15880b07a16bb6f5cf72c71c0ae2897f - sha256sums = 4c1ce0fa776f7a7f62239e4c4ffd0270e99f9bd7545c3bf32c3ceb5276bede93 - sha256sums = 2bb0550e924d57da83ce586dab9b90180daee196d0f5303dce0af07a7e509e0b - sha256sums = 73bfcc40a301521a5c977e0ed427e40d780ee7d1416f4fbb3c67d4e6c101bcd3 - sha256sums = d252d96f69c41f3b3112304d53773ff7549cb95cbe0cde171a79e41ee55f89ab - sha256sums = 9bb54043cc8a3b18aca222cea873d1651e881132985ad49402d63a69df518baa - sha256sums = e4ee1aabed10b1ea4192498b6e80998425ab581d7ad44a9d880066f7017d481e - sha256sums = a6640e6680f323f846e63e28f4ef343cfbec75397f7a103119b7b3415bcee260 - sha256sums = 7758fd6412d8007518099b351e6661b5157a59e253f328c94f42980e3f977260 + source = 0034-Prevent-static-build-to-prefer-dynamic-libraries.patch + sha256sums = 533078ce02678988576e224cb3844979907950cf83e0fda3364bc1d5701c9049 + sha256sums = 4e1dbb878b77dbba96a9564ecbded6dbd74482b52e1cf4becaa1ce741c8cf489 + sha256sums = f54815ff2fede9dbdc0ade572305ff684940714ca65e76d25f5b15cd0cb0a3da + sha256sums = c60e6cef5d0c95b6d034ade75fde3cf150e1570f5ca62d6b32d942abcb937f86 + sha256sums = 0a82cde28edae5abb8d624cea407db515c1d52e8963f07aa8430c1d1f810e54a + sha256sums = 39059ed786851c1cdf416c4d0a9a5b042edda83bddd03b5bfcbcae1eaf8f7694 + sha256sums = 4ef83cf4d211c446a5715cfa422f130492ae18bfb5cb42db9ff6516ed7fb29f1 + sha256sums = 48ee96ffc01d5ab7c648f4aae6cee286992e4eb406e48718058092206f8ad2eb + sha256sums = 58f27f2359b3571aac44a3770a705692eed9e6fd24b6e6bf730e7aad5ee4a030 + sha256sums = cf6154d83655efbf30281c4f83d29feb252fd104849f8e2ad495da688e581314 + sha256sums = edf080092f4d158d2e42cedd50f80b3b5715ae47f740b16fa43132f1dc68cf9d + sha256sums = 1c3c46c26809e59e91732d2ff082a445dac4986294f400277272c2337d8c21f3 + sha256sums = 3ee7b4f4ed6ea86794a5d119c7000033d0f61208150e37f35428e52611f7ae3f + sha256sums = 1d18e225c4bda89fe024a47834a8b79d9c8e4d1ba884d7dc6b07a93bf0307a85 + sha256sums = 2affe7ac03016cfd536f63d61c0f5bd42932fc3823b7f2dbabca9c2db5a53ae6 + sha256sums = d0a2e33d20c4d6063f7546fbc84d2f6a5a96955f998ba7af4320bc005fa2a722 + sha256sums = 9941e9c883496bb3409a12ef3f73b6f3d76e106061381deb74380eafb1ac472f + sha256sums = f336402daf227aa529080ab31612a205c936438ecbfab3627252164d8903c1b1 + sha256sums = 8cf716c22bf0fface6e3c015cd4d621425e3b20771b15ab03eeeeb59db248756 + sha256sums = 95f9847a1fe05ad78ae4a682208894d995becc0ca4f3463d39781e8a52543017 + sha256sums = 132fc790cfa528063fe95c3bc104826cb82105cd24e05ed77593115212987dc3 + sha256sums = 8ace42d2ec1b7a05a6bacf93f899775906c407f349efbbd2533b942fb474f200 + sha256sums = 8849864de4abf2dd70ffe2fe70aabb608c296eccdc41e6f4061645bd39f63c50 + sha256sums = 60ca9adfe6ae46d6dc7b4874c3202b46bc57f6649a45fb5301e4e4b63e70aa5e + sha256sums = 47f83f04256afe1bd8701c31673e00e445b65840b5fe2bd132a98c8f292aa9c4 + sha256sums = 305b30fad80fba756bd3ad6c34c95030fc3927d52a3dc9b90d2705b390831734 + sha256sums = 91f37e9098e78881c1953c85e592e108be27dae08a83278f4a9885cb296a6871 + sha256sums = 9ca5f2175d8679b7312d8cb718ddc648e161a6aae631b5d4c9e528594a020d1a + sha256sums = 3a5619542cb549ba7cc2bf1f9b77d524e5f9aa78d1e8dea6cd75c4f09b6aabc9 + sha256sums = e30cf84af1ff7764cb0e0644a7bfbde920f463af9c24aab53abef9cf3410ceb3 + sha256sums = fdd36ed82c5a8df7a0157b4ce9a3be16ec4c2b98cdf071a2be662603045da652 + sha256sums = 55b42d68ca7981ef777a7f081f840b1b80ada8c0dc9508092ec9fba151a88dfd + sha256sums = 06f98f6ce25da7010e7398111ee7b79f380b79a7ab125eba3ef6d051af92cf8a + sha256sums = 5a097dc80dc07aa755e77c50a469c3c08bf5b562ad9b116dbbf891a072e7bdc2 + sha256sums = 66047e08db2282d69563b3081b847fa7c041c3c387ab00ca72ff481b91124925 pkgname = mingw-w64-qt5-base 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 772e92de1ac6..96b590a38c29 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 916b6a82bc084162432f9ed36934940892679ebd Mon Sep 17 00:00:00 2001 +From 2ac45582566cb492858de99cf06cabf2fa575e30 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Fri, 3 Feb 2017 18:30:51 +0100 -Subject: [PATCH 01/33] Adjust win32-g++ profile for cross compilation with +Subject: [PATCH 01/34] Adjust win32-g++ profile for cross compilation with mingw-w64 Adding a new, separate mkspec instead of patching the existing one @@ -13,13 +13,13 @@ Also see the following issues: * https://github.com/Martchus/PKGBUILDs/issues/59 * https://github.com/Martchus/PKGBUILDs/issues/60 --- - mkspecs/common/g++-win32.conf | 53 ++++++++++++++++++++---------- + mkspecs/common/g++-win32.conf | 52 ++++++++++++++++++++---------- mkspecs/win32-clang-g++/qmake.conf | 4 +-- mkspecs/win32-g++/qmake.conf | 4 +-- - 3 files changed, 40 insertions(+), 21 deletions(-) + 3 files changed, 39 insertions(+), 21 deletions(-) diff --git a/mkspecs/common/g++-win32.conf b/mkspecs/common/g++-win32.conf -index f0df324b64..48d1c49d44 100644 +index f0df324b64..07e2b6a88e 100644 --- a/mkspecs/common/g++-win32.conf +++ b/mkspecs/common/g++-win32.conf @@ -8,18 +8,24 @@ @@ -58,11 +58,9 @@ index f0df324b64..48d1c49d44 100644 QMAKE_INCDIR = -@@ -42,41 +49,53 @@ QMAKE_RUN_CC_IMP = $(CC) -c $(CFLAGS) $(INCPATH) -o $@ $< - QMAKE_RUN_CXX = $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $obj $src +@@ -43,40 +50,51 @@ QMAKE_RUN_CXX = $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $obj $src QMAKE_RUN_CXX_IMP = $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $< -+QMAKE_LFLAGS = -g QMAKE_LFLAGS_EXCEPTIONS_ON = -mthreads -QMAKE_LFLAGS_RELEASE = -Wl,-s +QMAKE_LFLAGS_RELEASE = @@ -127,7 +125,7 @@ index f0df324b64..48d1c49d44 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..4981a28736 100644 +index 4630ec4602..3f9fdc72b1 100644 --- a/mkspecs/win32-clang-g++/qmake.conf +++ b/mkspecs/win32-clang-g++/qmake.conf @@ -14,11 +14,11 @@ include(../common/g++-win32.conf) @@ -135,17 +133,17 @@ index 4630ec4602..4981a28736 100644 QMAKE_CC = $${CROSS_COMPILE}clang -QMAKE_CFLAGS += -+QMAKE_CFLAGS += -g -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4 -fno-keep-inline-dllexport $${CROSS_COMPILE_CFLAGS} ++QMAKE_CFLAGS += $${CROSS_COMPILE_CFLAGS} QMAKE_CFLAGS_WARN_ON += -Wextra -Wno-ignored-attributes QMAKE_CXX = $${CROSS_COMPILE}clang++ -QMAKE_CXXFLAGS += -+QMAKE_CXXFLAGS += $${QMAKE_CFLAGS} ++QMAKE_CXXFLAGS += $${CROSS_COMPILE_CXXFLAGS} QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON QMAKE_LINK = $${CROSS_COMPILE}clang++ diff --git a/mkspecs/win32-g++/qmake.conf b/mkspecs/win32-g++/qmake.conf -index ed131c6823..b77d86cd6b 100644 +index ed131c6823..b8e08df0be 100644 --- a/mkspecs/win32-g++/qmake.conf +++ b/mkspecs/win32-g++/qmake.conf @@ -12,11 +12,11 @@ include(../common/g++-win32.conf) @@ -153,12 +151,12 @@ index ed131c6823..b77d86cd6b 100644 QMAKE_CC = $${CROSS_COMPILE}gcc -QMAKE_CFLAGS += -fno-keep-inline-dllexport -+QMAKE_CFLAGS += -g -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4 -fno-keep-inline-dllexport $${CROSS_COMPILE_CFLAGS} ++QMAKE_CFLAGS += $${CROSS_COMPILE_CFLAGS} QMAKE_CFLAGS_WARN_ON += -Wextra QMAKE_CXX = $${CROSS_COMPILE}g++ -QMAKE_CXXFLAGS += -fno-keep-inline-dllexport -+QMAKE_CXXFLAGS += $${QMAKE_CFLAGS} ++QMAKE_CXXFLAGS += $${CROSS_COMPILE_CXXFLAGS} QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON QMAKE_LINK = $${CROSS_COMPILE}g++ 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 1095d6a6d27a..e3d0f710364c 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 cf9119f68b3e575ef07853ab177259f4ef044e0b Mon Sep 17 00:00:00 2001 +From 1083693a799b03cde91c83ff25d890640c01d780 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 13:36:53 +0200 -Subject: [PATCH 02/33] Ensure GLdouble is defined when using dynamic OpenGL +Subject: [PATCH 02/34] Ensure GLdouble is defined when using dynamic OpenGL FIXME: Not sure whether this is still required --- diff --git a/0003-Use-external-ANGLE-library.patch b/0003-Use-external-ANGLE-library.patch index fbb9e6fb55fc..f364abc566ef 100644 --- a/0003-Use-external-ANGLE-library.patch +++ b/0003-Use-external-ANGLE-library.patch @@ -1,7 +1,7 @@ -From dcfdcfea110398d0ce98c184b975f59354d4528b Mon Sep 17 00:00:00 2001 +From 0be0cdb753a85725e603a02ada330cc9fd2c161e Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 13:41:38 +0200 -Subject: [PATCH 03/33] Use external ANGLE library +Subject: [PATCH 03/34] Use external ANGLE library --- src/gui/Qt5GuiConfigExtras.cmake.in | 4 ++-- @@ -66,7 +66,7 @@ index 8b2349ff2f..f5e43c6adc 100644 HEADERS += qgl.h \ qgl_p.h \ diff --git a/src/plugins/platforms/windows/windows.pri b/src/plugins/platforms/windows/windows.pri -index db06a6a2a3..25c00ed17b 100644 +index 7004d7e854..a0b0bd81db 100644 --- a/src/plugins/platforms/windows/windows.pri +++ b/src/plugins/platforms/windows/windows.pri @@ -4,6 +4,7 @@ LIBS += -lole32 -luser32 -lwinspool -limm32 -lwinmm -loleaut32 diff --git a/0004-Fix-too-many-sections-assemler-error-in-OpenGL-facto.patch b/0004-Fix-too-many-sections-assemler-error-in-OpenGL-facto.patch index 12a3432b7a0e..6261b6283119 100644 --- a/0004-Fix-too-many-sections-assemler-error-in-OpenGL-facto.patch +++ b/0004-Fix-too-many-sections-assemler-error-in-OpenGL-facto.patch @@ -1,7 +1,7 @@ -From 42ab8012488408bfb6ab77fb056b27f3400d40ce Mon Sep 17 00:00:00 2001 +From 987045e209769c2b4f8f48046167b5ef9106dd70 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 13:48:51 +0200 -Subject: [PATCH 04/33] Fix too many sections assemler error in OpenGL factory +Subject: [PATCH 04/34] Fix too many sections assemler error in OpenGL factory On x86_64 qopenglversionfunctionsfactory.o exceeds the limit of 32768 sections. diff --git a/0005-Make-sure-.pc-files-are-installed-correctly.patch b/0005-Make-sure-.pc-files-are-installed-correctly.patch index f008c9ec6c6c..77cc1ad19b9e 100644 --- a/0005-Make-sure-.pc-files-are-installed-correctly.patch +++ b/0005-Make-sure-.pc-files-are-installed-correctly.patch @@ -1,7 +1,7 @@ -From 07fa0fe80bd49e335ff8663ee8c67aa6b0f042c8 Mon Sep 17 00:00:00 2001 +From 08286bb3f862fdc5f6cbdbb104d56d29d06b840a Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 13:54:12 +0200 -Subject: [PATCH 05/33] Make sure *.pc files are installed correctly +Subject: [PATCH 05/34] Make sure *.pc files are installed correctly --- qmake/generators/makefile.cpp | 8 ++++++-- @@ -10,10 +10,10 @@ Subject: [PATCH 05/33] 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 b7e591d2ab..5abf0624f4 100644 +index f824f12bce..07abba9e5f 100644 --- a/qmake/generators/makefile.cpp +++ b/qmake/generators/makefile.cpp -@@ -3189,7 +3189,7 @@ MakefileGenerator::openOutput(QFile &file, const QString &build) const +@@ -3227,7 +3227,7 @@ MakefileGenerator::openOutput(QFile &file, const QString &build) const } QString @@ -22,7 +22,7 @@ index b7e591d2ab..5abf0624f4 100644 { QString ret = project->first("QMAKE_PKGCONFIG_FILE").toQString(); if (ret.isEmpty()) { -@@ -3214,7 +3214,11 @@ MakefileGenerator::pkgConfigFileName(bool fixify) +@@ -3252,7 +3252,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 b7e591d2ab..5abf0624f4 100644 return ret; } diff --git a/qmake/generators/makefile.h b/qmake/generators/makefile.h -index b5c150e1cb..afb0e91381 100644 +index 0535017ff6..b2f8b961c0 100644 --- a/qmake/generators/makefile.h +++ b/qmake/generators/makefile.h -@@ -89,7 +89,7 @@ protected: +@@ -92,7 +92,7 @@ protected: virtual void writeDefaultVariables(QTextStream &t); QString pkgConfigPrefix() const; @@ -49,10 +49,10 @@ index b5c150e1cb..afb0e91381 100644 void writePkgConfigFile(); // for pkg-config diff --git a/qmake/generators/win32/winmakefile.cpp b/qmake/generators/win32/winmakefile.cpp -index e0d03ccc1c..37eee7fca3 100644 +index 6046e5791e..87157f31ae 100644 --- a/qmake/generators/win32/winmakefile.cpp +++ b/qmake/generators/win32/winmakefile.cpp -@@ -747,7 +747,7 @@ QString Win32MakefileGenerator::defaultInstall(const QString &t) +@@ -751,7 +751,7 @@ QString Win32MakefileGenerator::defaultInstall(const QString &t) } if(!ret.isEmpty()) ret += "\n\t"; diff --git a/0006-Don-t-add-resource-files-to-LIBS-parameter.patch b/0006-Don-t-add-resource-files-to-LIBS-parameter.patch index 1e9b435cfbf7..842d9c28242b 100644 --- a/0006-Don-t-add-resource-files-to-LIBS-parameter.patch +++ b/0006-Don-t-add-resource-files-to-LIBS-parameter.patch @@ -1,7 +1,7 @@ -From f02b2a6ef057ac969eb813735a88e3dfedf924a2 Mon Sep 17 00:00:00 2001 +From fdec0d79a76384fcefd55c06722380a2eccbbe22 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 13:58:28 +0200 -Subject: [PATCH 06/33] Don't add resource files to LIBS parameter +Subject: [PATCH 06/34] Don't add resource files to LIBS parameter Solves an issue where the generated pkg-config files contained invalid Libs.private references diff --git a/0007-Prevent-debug-library-names-in-pkg-config-files.patch b/0007-Prevent-debug-library-names-in-pkg-config-files.patch index c6fa285fd409..bc386a79a343 100644 --- a/0007-Prevent-debug-library-names-in-pkg-config-files.patch +++ b/0007-Prevent-debug-library-names-in-pkg-config-files.patch @@ -1,7 +1,7 @@ -From 941886c8d4ca7655cdd165eeb439d93abcf9eab2 Mon Sep 17 00:00:00 2001 +From a7d2f0dacfb8e30058dcacf34450a467a5ff5d94 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 14:01:14 +0200 -Subject: [PATCH 07/33] Prevent debug library names in pkg-config files +Subject: [PATCH 07/34] 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 5abf0624f4..a7f1285c26 100644 +index 07abba9e5f..e640fb8079 100644 --- a/qmake/generators/makefile.cpp +++ b/qmake/generators/makefile.cpp -@@ -3203,6 +3203,9 @@ MakefileGenerator::pkgConfigFileName(bool fixify, bool onlyPrependDestdir) +@@ -3241,6 +3241,9 @@ MakefileGenerator::pkgConfigFileName(bool fixify, bool onlyPrependDestdir) if (dot != -1) ret = ret.left(dot); } diff --git a/0008-Fix-linking-against-shared-static-libpng.patch b/0008-Fix-linking-against-shared-static-libpng.patch index 4ff5d8dce57e..c6d0a2cbfb69 100644 --- a/0008-Fix-linking-against-shared-static-libpng.patch +++ b/0008-Fix-linking-against-shared-static-libpng.patch @@ -1,7 +1,7 @@ -From 00538d150502debca140f94c2057c1a541b8333f Mon Sep 17 00:00:00 2001 +From 95710d93c0d010afaa8ac7433b99827346bc011b Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Thu, 26 Jan 2017 17:51:31 +0100 -Subject: [PATCH 08/33] Fix linking against shared/static libpng +Subject: [PATCH 08/34] 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 0332631ec8..dbb6f708b0 100644 +index 89934c8f1d..9124e3e77e 100644 --- a/src/gui/configure.json +++ b/src/gui/configure.json -@@ -308,8 +308,10 @@ +@@ -385,8 +385,10 @@ { "type": "pkgConfig", "args": "libpng" }, { "libs": "-llibpng16", "condition": "config.msvc" }, { "libs": "-llibpng", "condition": "config.msvc" }, diff --git a/0009-Fix-linking-against-static-D-Bus.patch b/0009-Fix-linking-against-static-D-Bus.patch index aeb565801af5..db73366a5da7 100644 --- a/0009-Fix-linking-against-static-D-Bus.patch +++ b/0009-Fix-linking-against-static-D-Bus.patch @@ -1,7 +1,7 @@ -From 3acf388e10fd40909af87cfdba35768f2be26be6 Mon Sep 17 00:00:00 2001 +From 5c645a6510d3ac66a845b695c5e30c76944f22a0 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Fri, 3 Feb 2017 19:36:25 +0100 -Subject: [PATCH 09/33] Fix linking against static D-Bus +Subject: [PATCH 09/34] Fix linking against static D-Bus --- configure.json | 9 +++++++-- @@ -9,17 +9,18 @@ Subject: [PATCH 09/33] Fix linking against static D-Bus 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/configure.json b/configure.json -index 522bd34e9b..17446b6c21 100644 +index 9fce6d039e..c673f9a5fc 100644 --- a/configure.json +++ b/configure.json -@@ -170,17 +170,22 @@ +@@ -169,18 +169,23 @@ + "dbus": { "label": "D-Bus >= 1.2", "test": { - "include": "dbus/dbus.h", - "main": "(void) dbus_bus_get_private(DBUS_BUS_SYSTEM, (DBusError *)NULL);" + "main": "(void) dbus_bus_get_private(DBUS_BUS_SYSTEM, (DBusError *)NULL);", + "qmake": "static: DEFINES += DBUS_STATIC_BUILD" }, + "headers": "dbus/dbus.h", "sources": [ { "type": "pkgConfig", "args": "dbus-1 >= 1.2" }, + { diff --git a/0010-Don-t-try-to-use-debug-version-of-D-Bus-library.patch b/0010-Don-t-try-to-use-debug-version-of-D-Bus-library.patch index f7e47739b1fb..deddac803f14 100644 --- a/0010-Don-t-try-to-use-debug-version-of-D-Bus-library.patch +++ b/0010-Don-t-try-to-use-debug-version-of-D-Bus-library.patch @@ -1,7 +1,7 @@ -From 27a1638bad652da1e73bbe1533aca8b625eeda4d Mon Sep 17 00:00:00 2001 +From 75d943609ad0a9814656ce151a353fb391b5df33 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Fri, 2 Jun 2017 18:28:10 +0200 -Subject: [PATCH 10/33] Don't try to use debug version of D-Bus library +Subject: [PATCH 10/34] 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,7 +12,7 @@ Change-Id: Ic34e1025fda55f9659e065f5bbe9d51f55420adb 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.json b/configure.json -index 17446b6c21..5b37371a7b 100644 +index c673f9a5fc..15b0f21e58 100644 --- a/configure.json +++ b/configure.json @@ -182,7 +182,7 @@ diff --git a/0011-Fix-linking-against-static-freetype2.patch b/0011-Fix-linking-against-static-freetype2.patch index 688a32d1af39..bcbdbf749b03 100644 --- a/0011-Fix-linking-against-static-freetype2.patch +++ b/0011-Fix-linking-against-static-freetype2.patch @@ -1,32 +1,30 @@ -From f4d9c0c1b22a122df1393b47d485a0f4416ad8bc Mon Sep 17 00:00:00 2001 +From 54e2fd21f8daa2f61c44d764ea19f31e03390b1d Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Fri, 3 Feb 2017 20:51:19 +0100 -Subject: [PATCH 11/33] Fix linking against static freetype2 +Subject: [PATCH 11/34] Fix linking against static freetype2 --- - src/gui/configure.json | 9 ++++++--- - 1 file changed, 6 insertions(+), 3 deletions(-) + 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 dbb6f708b0..a7ffa0f113 100644 +index 9124e3e77e..f3628f415d 100644 --- a/src/gui/configure.json +++ b/src/gui/configure.json -@@ -163,9 +163,12 @@ - ] +@@ -237,8 +237,11 @@ }, + "headers": "ft2build.h", "sources": [ - { "type": "pkgConfig", "args": "freetype2" }, - { "type": "freetype", "libs": "-lfreetype", "condition": "!config.wasm" }, -- { "type": "freetype", "libs": "-s USE_FREETYPE=1", "condition": "config.wasm" } + { "type": "pkgConfig", "args": "--static --libs freetype2", "condition": "!features.shared" }, + { "type": "pkgConfig", "args": "--libs freetype2", "condition": "features.shared" }, + { "libs": "-lfreetype -lharfbuzz -lfreetype -lglib-2.0 -lintl -lws2_32 -lole32 -lwinmm -lshlwapi -lpcre -lintl -lpcre -lintl -liconv -lgraphite2 -lbz2", "condition": "!features.shared && !config.wasm" }, + { "libs": "-Wl,-Bdynamic -lfreetype -Wl,-Bstatic", "condition": "!features.shared && !config.wasm" }, + { "libs": "-lfreetype", "condition": "features.shared && !config.wasm" }, -+ { "type": "freetype", "libs": "-s USE_FREETYPE=1", "condition": "features.shared && config.wasm" } - ] - }, - "fontconfig": { + { "libs": "-s USE_FREETYPE=1", "condition": "config.wasm" } + ], + "use": [ -- 2.20.1 diff --git a/0012-Fix-linking-against-static-harfbuzz.patch b/0012-Fix-linking-against-static-harfbuzz.patch index abd08e7e7734..ee2b3334d3d5 100644 --- a/0012-Fix-linking-against-static-harfbuzz.patch +++ b/0012-Fix-linking-against-static-harfbuzz.patch @@ -1,19 +1,19 @@ -From dbb80749d9fa50db27c240769aa9f59b24067f3f Mon Sep 17 00:00:00 2001 +From bdfd1226b5fcf7ede805676a2bb4bb8fbe047d6a Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 14:22:56 +0200 -Subject: [PATCH 12/33] Fix linking against static harfbuzz +Subject: [PATCH 12/34] 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 a7ffa0f113..796cd5aaa7 100644 +index f3628f415d..b12a0e8ff2 100644 --- a/src/gui/configure.json +++ b/src/gui/configure.json -@@ -227,7 +227,11 @@ - ] +@@ -304,7 +304,11 @@ }, + "headers": "harfbuzz/hb.h", "sources": [ - "-lharfbuzz" + { "type": "pkgConfig", "args": "--static --libs harfbuzz", "condition": "!features.shared" }, diff --git a/0013-Fix-linking-against-static-pcre.patch b/0013-Fix-linking-against-static-pcre.patch index 8999b3a2abb2..a2042b983b3d 100644 --- a/0013-Fix-linking-against-static-pcre.patch +++ b/0013-Fix-linking-against-static-pcre.patch @@ -1,7 +1,7 @@ -From 4d4b4bede0fbdd326c41333e3605225cafd8861a Mon Sep 17 00:00:00 2001 +From 52634efb9b9b2f3de1a2941297c7670ec7d4bdfc Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 14:24:01 +0200 -Subject: [PATCH 13/33] Fix linking against static pcre +Subject: [PATCH 13/34] Fix linking against static pcre Change-Id: I3225c6e82dc4d17aef37d4289c16eb7a5ea3c5a1 --- @@ -9,7 +9,7 @@ Change-Id: I3225c6e82dc4d17aef37d4289c16eb7a5ea3c5a1 1 file changed, 4 insertions(+) diff --git a/src/corelib/tools/qregularexpression.cpp b/src/corelib/tools/qregularexpression.cpp -index 908e7ff0d6..e5786a10cf 100644 +index bdaa2d3243..90f8250c03 100644 --- a/src/corelib/tools/qregularexpression.cpp +++ b/src/corelib/tools/qregularexpression.cpp @@ -53,6 +53,10 @@ diff --git a/0014-Fix-linking-against-shared-static-MariaDB.patch b/0014-Fix-linking-against-shared-static-MariaDB.patch index 88735a9e5b67..77c84b11845c 100644 --- a/0014-Fix-linking-against-shared-static-MariaDB.patch +++ b/0014-Fix-linking-against-shared-static-MariaDB.patch @@ -1,23 +1,22 @@ -From c0ac12f99fde7a3a4d6355e68c631fbac5356f82 Mon Sep 17 00:00:00 2001 +From 6d8c6ce62a3a418cc30a6e3016eaf38ff945697b Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 18:56:55 +0200 -Subject: [PATCH 14/33] Fix linking against shared/static MariaDB +Subject: [PATCH 14/34] Fix linking against shared/static MariaDB Change-Id: I9722c154d845f288a2d4d1ab14a014066b28819b --- - src/plugins/sqldrivers/configure.json | 3 +++ - 1 file changed, 3 insertions(+) + src/plugins/sqldrivers/configure.json | 2 ++ + 1 file changed, 2 insertions(+) diff --git a/src/plugins/sqldrivers/configure.json b/src/plugins/sqldrivers/configure.json -index 4802d3b04d..fac6be7301 100644 +index cd20eef1df..babd0465ce 100644 --- a/src/plugins/sqldrivers/configure.json +++ b/src/plugins/sqldrivers/configure.json -@@ -69,6 +69,9 @@ - "main": "mysql_get_client_version();" +@@ -67,6 +67,8 @@ }, + "headers": "mysql.h", "sources": [ + { "libs": "-lmariadbclient -lssl -lcrypto -lgdi32 -lws2_32 -lpthread -lz -lm", "condition": "config.win32 && !features.shared" }, -+ { "libs": "-Wl,-Bdynamic -lmariadb -Wl,-Bstatic", "condition": "config.win32 && !features.shared" }, + { "libs": "-lmariadb", "condition": "config.win32 && features.shared" }, { "type": "mysqlConfig", "query": "--libs_r", "cleanlibs": true }, { "type": "mysqlConfig", "query": "--libs", "cleanlibs": true }, diff --git a/0015-Fix-linking-against-shared-static-PostgreSQL.patch b/0015-Fix-linking-against-shared-static-PostgreSQL.patch index f298ac4e42f7..dd9d62329dea 100644 --- a/0015-Fix-linking-against-shared-static-PostgreSQL.patch +++ b/0015-Fix-linking-against-shared-static-PostgreSQL.patch @@ -1,25 +1,24 @@ -From e9810c35b4a294691ffea20dd51ba8ef2faf41ed Mon Sep 17 00:00:00 2001 +From 0c7b1782160144c9a0839f02efd365716816400d Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 18:58:25 +0200 -Subject: [PATCH 15/33] Fix linking against shared/static PostgreSQL +Subject: [PATCH 15/34] Fix linking against shared/static PostgreSQL --- - src/plugins/sqldrivers/configure.json | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) + src/plugins/sqldrivers/configure.json | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/plugins/sqldrivers/configure.json b/src/plugins/sqldrivers/configure.json -index fac6be7301..305aac405c 100644 +index babd0465ce..b4b3bdec6b 100644 --- a/src/plugins/sqldrivers/configure.json +++ b/src/plugins/sqldrivers/configure.json -@@ -91,9 +91,10 @@ - ] +@@ -88,9 +88,9 @@ }, + "headers": "libpq-fe.h", "sources": [ - { "type": "pkgConfig", "args": "libpq" }, { "type": "psqlConfig" }, - { "type": "psqlEnv", "libs": "-llibpq -lws2_32 -ladvapi32", "condition": "config.win32" }, -+ { "type": "psqlEnv", "libs": "-lpq -lintl -lssl -lcrypto -lshell32 -lws2_32 -lsecur32", "condition": "config.win32 && !features.shared" }, -+ { "type": "psqlEnv", "libs": "-Wl,-Bdynamic -lpq -Wl,-Bstatic", "condition": "config.win32 && !features.shared" }, ++ { "type": "psqlEnv", "libs": "-lpq -lintl -lssl -lcrypto -lshell32 -lws2_32 -lsecur32 -liconv", "condition": "config.win32 && !features.shared" }, + { "type": "psqlEnv", "libs": "-lpq", "condition": "config.win32 && features.shared" }, { "type": "psqlEnv", "libs": "-lpq", "condition": "!config.win32" } ] diff --git a/0016-Rename-qtmain-to-qt5main.patch b/0016-Rename-qtmain-to-qt5main.patch index 9bcc0242f895..cfec875be259 100644 --- a/0016-Rename-qtmain-to-qt5main.patch +++ b/0016-Rename-qtmain-to-qt5main.patch @@ -1,7 +1,7 @@ -From 23c9fc7eaa3164d47e0c6049e61bfeec0bd30a0f Mon Sep 17 00:00:00 2001 +From c37572ff090abe65285eacaedf7e7022af92aae6 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 14:25:40 +0200 -Subject: [PATCH 16/33] Rename qtmain to qt5main +Subject: [PATCH 16/34] Rename qtmain to qt5main Prevents conflict with mingw-w64-qt4 package --- @@ -12,10 +12,10 @@ Prevents conflict with mingw-w64-qt4 package 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/mkspecs/common/g++-win32.conf b/mkspecs/common/g++-win32.conf -index 48d1c49d44..a011f681eb 100644 +index 07e2b6a88e..5bfbcfdca6 100644 --- a/mkspecs/common/g++-win32.conf +++ b/mkspecs/common/g++-win32.conf -@@ -87,7 +87,7 @@ QMAKE_LIBS_OPENGL = -lglu32 -lopengl32 -lgdi32 -luser32 +@@ -86,7 +86,7 @@ QMAKE_LIBS_OPENGL = -lglu32 -lopengl32 -lgdi32 -luser32 QMAKE_LIBS_OPENGL_ES2 = -l$${LIBEGL_NAME} -l$${LIBGLESV2_NAME} -ld3d9 -ldxguid -lgdi32 -luser32 QMAKE_LIBS_OPENGL_ES2_DEBUG = -l$${LIBEGL_NAME} -l$${LIBGLESV2_NAME} -ld3d9 -ldxguid -lgdi32 -luser32 QMAKE_LIBS_COMPAT = -ladvapi32 -lshell32 -lcomdlg32 -luser32 -lgdi32 -lws2_32 @@ -53,7 +53,7 @@ index ecb167bf18..7c9368c3b3 100644 QMAKE_LIBS += -L$$QT.core.libs CONFIG(debug, debug|release): QMAKE_LIBS += $${entryLib}$${QT_LIBINFIX}d diff --git a/src/winmain/winmain.pro b/src/winmain/winmain.pro -index 4140ae48de..9ae73db74b 100644 +index 61e9f29d23..a1795bf265 100644 --- a/src/winmain/winmain.pro +++ b/src/winmain/winmain.pro @@ -2,7 +2,7 @@ diff --git a/0017-Build-dynamic-host-libraries.patch b/0017-Build-dynamic-host-libraries.patch index 477d081ad5bb..719a036024b4 100644 --- a/0017-Build-dynamic-host-libraries.patch +++ b/0017-Build-dynamic-host-libraries.patch @@ -1,7 +1,7 @@ -From 29f7e60d2712d9229d96d5aa1ec3fd0253075bca Mon Sep 17 00:00:00 2001 +From 901d666dd3a5609f40b5fce75620b9016660b4c5 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 14:27:28 +0200 -Subject: [PATCH 17/33] Build dynamic host libraries +Subject: [PATCH 17/34] Build dynamic host libraries This came initially from Fedora, not sure whether it makes sense to keep it. Regular Arch package diff --git a/0018-Enable-rpath-for-build-tools.patch b/0018-Enable-rpath-for-build-tools.patch index d84c1d8921da..d8537cdcdf12 100644 --- a/0018-Enable-rpath-for-build-tools.patch +++ b/0018-Enable-rpath-for-build-tools.patch @@ -1,7 +1,7 @@ -From 9baddb1d9432c91c6f4e7f8687d13fa7e38308d3 Mon Sep 17 00:00:00 2001 +From 8ae9fed6ff5f5bf2e4c1d031baa7c03282268b35 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 17:59:27 +0200 -Subject: [PATCH 18/33] Enable rpath for build tools +Subject: [PATCH 18/34] Enable rpath for build tools - Required because various tools depend on libQt5Bootstrap.so which resides in folder /usr/${_arch}/lib diff --git a/0019-Use-system-zlib-for-build-tools.patch b/0019-Use-system-zlib-for-build-tools.patch index 5b7d00d92e67..fd0e888322be 100644 --- a/0019-Use-system-zlib-for-build-tools.patch +++ b/0019-Use-system-zlib-for-build-tools.patch @@ -1,22 +1,24 @@ -From f844ba34e2c4d29613345477dee10fa883275fd4 Mon Sep 17 00:00:00 2001 +From 9056f0faf07d8493969ead198f30edc958f86fd7 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 18:04:42 +0200 -Subject: [PATCH 19/33] Use system zlib for build tools +Subject: [PATCH 19/34] Use system zlib for build tools --- - src/tools/bootstrap/bootstrap.pro | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) + 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..6b1db38486 100644 +index 83e44ff9a4..4734623936 100644 --- a/src/tools/bootstrap/bootstrap.pro +++ b/src/tools/bootstrap/bootstrap.pro -@@ -135,7 +135,7 @@ macx { +@@ -135,7 +135,9 @@ macx { ../../corelib/io/qstandardpaths_win.cpp } -!qtConfig(system-zlib)|cross_compile { -+!qtConfig(system-zlib) { ++cross_compile { ++ LIBS += -lz ++} else:!qtConfig(system-zlib) { include(../../3rdparty/zlib.pri) } else { CONFIG += no_core_dep diff --git a/0020-Use-.dll.a-as-import-lib-extension.patch b/0020-Use-.dll.a-as-import-lib-extension.patch index bd08de63a059..e6b4ff5d472c 100644 --- a/0020-Use-.dll.a-as-import-lib-extension.patch +++ b/0020-Use-.dll.a-as-import-lib-extension.patch @@ -1,14 +1,14 @@ -From 47c3ea27e0aba1475c450dcc590f01846b054a07 Mon Sep 17 00:00:00 2001 +From 5e28a49dd99a5b682fcc9cd78985fc138a1cbc2f Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 18:26:18 +0200 -Subject: [PATCH 20/33] Use *.dll.a as import lib extension +Subject: [PATCH 20/34] Use *.dll.a as import lib extension The variables used here are provided by mingw-w64 specific mkspec --- mkspecs/features/create_cmake.prf | 5 +++-- - qmake/generators/win32/winmakefile.cpp | 17 ++++++++++++----- - 2 files changed, 15 insertions(+), 7 deletions(-) + qmake/generators/win32/winmakefile.cpp | 15 +++++++++++---- + 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf index e67917cc96..2a94964b49 100644 @@ -27,29 +27,27 @@ index e67917cc96..2a94964b49 100644 } else { CMAKE_WINMAIN_FILE_LOCATION_DEBUG = qtmain$${QT_LIBINFIX}d.lib diff --git a/qmake/generators/win32/winmakefile.cpp b/qmake/generators/win32/winmakefile.cpp -index 37eee7fca3..59b394ca51 100644 +index 87157f31ae..4592fed7b2 100644 --- a/qmake/generators/win32/winmakefile.cpp +++ b/qmake/generators/win32/winmakefile.cpp -@@ -80,10 +80,14 @@ Win32MakefileGenerator::parseLibFlag(const ProString &flag, ProString *arg) +@@ -80,9 +80,13 @@ Win32MakefileGenerator::parseLibFlag(const ProString &flag, ProString *arg) bool Win32MakefileGenerator::findLibraries(bool linkPrl, bool mergeLflags) { - ProStringList impexts = project->values("QMAKE_LIB_EXTENSIONS"); - if (impexts.isEmpty()) - impexts = project->values("QMAKE_EXTENSION_STATICLIB"); -- QList<QMakeLocalFileName> dirs; -+ ProStringList impexts; -+ if (project->isActiveConfig("staticlib")) { -+ impexts.append(project->values("QMAKE_EXTENSION_STATICLIB")); -+ } else { -+ impexts.append(project->values("QMAKE_EXTENSION_IMPORTLIB")); -+ impexts.append(project->values("QMAKE_EXTENSION_STATICLIB")); -+ } -+ QList<QMakeLocalFileName> dirs; - static const char * const lflags[] = { "LIBS", "LIBS_PRIVATE", - "QMAKE_LIBS", "QMAKE_LIBS_PRIVATE", nullptr }; - for (int i = 0; lflags[i]; i++) { -@@ -253,9 +257,12 @@ void Win32MakefileGenerator::fixTargetExt() ++ ProStringList impexts; ++ if (project->isActiveConfig("staticlib")) { ++ impexts.append(project->values("QMAKE_EXTENSION_STATICLIB")); ++ } else { ++ impexts.append(project->values("QMAKE_EXTENSION_IMPORTLIB")); ++ impexts.append(project->values("QMAKE_EXTENSION_STATICLIB")); ++ } + QList<QMakeLocalFileName> dirs; + for (const ProString &dlib : project->values("QMAKE_DEFAULT_LIBDIRS")) + dirs.append(QMakeLocalFileName(dlib.toQString())); +@@ -255,9 +259,12 @@ void Win32MakefileGenerator::fixTargetExt() if (!project->values("QMAKE_APP_FLAG").isEmpty()) { project->values("TARGET_EXT").append(".exe"); } else if (project->isActiveConfig("shared")) { diff --git a/0021-Merge-shared-and-static-library-trees.patch b/0021-Merge-shared-and-static-library-trees.patch index a4e446dde42a..142e2cebba30 100644 --- a/0021-Merge-shared-and-static-library-trees.patch +++ b/0021-Merge-shared-and-static-library-trees.patch @@ -1,7 +1,7 @@ -From c14a296d3385a7d2aafbe793c7c1e49aa48d1b66 Mon Sep 17 00:00:00 2001 +From d21a2fde18007e8abbde3407ae20b967b137069e Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 18:45:08 +0200 -Subject: [PATCH 21/33] Merge shared and static library trees +Subject: [PATCH 21/34] Merge shared and static library trees Allow installation of shared and static build in the same prefix --- @@ -13,7 +13,7 @@ Allow installation of shared and static build in the same prefix 5 files changed, 51 insertions(+), 6 deletions(-) diff --git a/configure.pri b/configure.pri -index 64ed6b9ed8..2cc54d15a2 100644 +index b3b3e27c44..3136889a2f 100644 --- a/configure.pri +++ b/configure.pri @@ -1312,3 +1312,12 @@ defineTest(createConfigStatus) { @@ -51,10 +51,10 @@ index fbf1f3b8df..c261c46e72 100644 !have_target:!force_qt: CONFIG -= qt diff --git a/mkspecs/features/qt.prf b/mkspecs/features/qt.prf -index d16b3cf1be..2c4d6cd97e 100644 +index 5da82fdb5b..5b05aa9e2a 100644 --- a/mkspecs/features/qt.prf +++ b/mkspecs/features/qt.prf -@@ -268,6 +268,23 @@ for(ever) { +@@ -246,6 +246,23 @@ for(ever) { !isEmpty(MODULE_WINRT_CAPABILITIES_DEVICE): \ WINRT_MANIFEST.capabilities_device_default += $$MODULE_WINRT_CAPABILITIES_DEVICE } @@ -101,10 +101,10 @@ index 51ea3a8321..275e080ae4 100644 QMAKE_EXT_YACC = .y diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp -index a7f1285c26..879410afef 100644 +index e640fb8079..fc7f729ae6 100644 --- a/qmake/generators/makefile.cpp +++ b/qmake/generators/makefile.cpp -@@ -3206,6 +3206,9 @@ MakefileGenerator::pkgConfigFileName(bool fixify, bool onlyPrependDestdir) +@@ -3244,6 +3244,9 @@ MakefileGenerator::pkgConfigFileName(bool fixify, bool onlyPrependDestdir) if (project->isActiveConfig("debug")) { ret += "d"; } @@ -114,7 +114,7 @@ index a7f1285c26..879410afef 100644 ret += Option::pkgcfg_ext; QString subdir = project->first("QMAKE_PKGCONFIG_DESTDIR").toQString(); if(!subdir.isEmpty()) { -@@ -3380,9 +3383,9 @@ MakefileGenerator::writePkgConfigFile() +@@ -3418,9 +3421,9 @@ MakefileGenerator::writePkgConfigFile() t << endl; // requires diff --git a/0022-Pull-dependencies-of-static-libraries-in-CMake-modul.patch b/0022-Pull-dependencies-of-static-libraries-in-CMake-modul.patch index 72d419cc5f57..d7b6a73cb473 100644 --- a/0022-Pull-dependencies-of-static-libraries-in-CMake-modul.patch +++ b/0022-Pull-dependencies-of-static-libraries-in-CMake-modul.patch @@ -1,7 +1,7 @@ -From f3eab06f0fa50e140a96182b0b7a1555b5e4797c Mon Sep 17 00:00:00 2001 +From 7f561d87a70af23d5d2a0c89e08ba5744b2f9585 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 18:32:00 +0200 -Subject: [PATCH 22/33] Pull dependencies of static libraries in CMake modules +Subject: [PATCH 22/34] 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 @@ -251,10 +251,10 @@ index 5baf0fdb10..ec5f3cc437 100644 + +endif() diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp -index 879410afef..2ff4c4f714 100644 +index fc7f729ae6..095b4d2720 100644 --- a/qmake/generators/makefile.cpp +++ b/qmake/generators/makefile.cpp -@@ -1016,10 +1016,18 @@ MakefileGenerator::writePrlFile(QTextStream &t) +@@ -1019,10 +1019,18 @@ MakefileGenerator::writePrlFile(QTextStream &t) libs << "LIBS" << "QMAKE_LIBS"; else libs << "LIBS" << "LIBS_PRIVATE" << "QMAKE_LIBS" << "QMAKE_LIBS_PRIVATE"; diff --git a/0023-Allow-usage-of-static-version-with-CMake.patch b/0023-Allow-usage-of-static-version-with-CMake.patch index bace1b264e06..a530bbb69148 100644 --- a/0023-Allow-usage-of-static-version-with-CMake.patch +++ b/0023-Allow-usage-of-static-version-with-CMake.patch @@ -1,7 +1,7 @@ -From d5b5246f2422b82b55dd464964884ef31a7fa36c Mon Sep 17 00:00:00 2001 +From c49f1674465685e03c0d95b869d6cea45dcf5447 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sat, 5 Aug 2017 21:14:26 +0200 -Subject: [PATCH 23/33] Allow usage of static version with CMake +Subject: [PATCH 23/34] Allow usage of static version with CMake Allow selecting between dynamic and static Qt versions installed in the same prefix diff --git a/0024-Adjust-linker-flags-for-static-build-with-cmake-ming.patch b/0024-Adjust-linker-flags-for-static-build-with-cmake-ming.patch index 4326eb39905b..3e45a2fccd7a 100644 --- a/0024-Adjust-linker-flags-for-static-build-with-cmake-ming.patch +++ b/0024-Adjust-linker-flags-for-static-build-with-cmake-ming.patch @@ -1,7 +1,7 @@ -From 9c26fcc555b4ff9cca74dec82dae355bb2bc0044 Mon Sep 17 00:00:00 2001 +From 5decd2ed0bdfafd01c119357c73fc91e470b9f61 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Fri, 2 Jun 2017 16:42:07 +0200 -Subject: [PATCH 24/33] Adjust linker flags for static build with +Subject: [PATCH 24/34] Adjust linker flags for static build with cmake/mingw-w64 Change-Id: I33b88976d8f5ce87ce431a6f422fe87785bf5b8d diff --git a/0025-Use-correct-pkg-config-static-flag.patch b/0025-Use-correct-pkg-config-static-flag.patch index cc090e9a0e53..373565402722 100644 --- a/0025-Use-correct-pkg-config-static-flag.patch +++ b/0025-Use-correct-pkg-config-static-flag.patch @@ -1,17 +1,17 @@ -From 5b7d7d07e4f92182bd3292dd63a043bb3fea9261 Mon Sep 17 00:00:00 2001 +From 9a0c4a937083e14ad32a8a25feb92333b5015dda Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 18:50:21 +0200 -Subject: [PATCH 25/33] Use correct pkg-config --static flag +Subject: [PATCH 25/34] Use correct pkg-config --static flag --- configure.pri | 3 +++ 1 file changed, 3 insertions(+) diff --git a/configure.pri b/configure.pri -index 2cc54d15a2..449fe4b9b8 100644 +index 3136889a2f..601629c047 100644 --- a/configure.pri +++ b/configure.pri -@@ -329,6 +329,9 @@ defineTest(qtConfTest_detectPkgConfig) { +@@ -328,6 +328,9 @@ defineTest(qtConfTest_detectPkgConfig) { qtLog("Found pkg-config from path: $$pkgConfig") } } diff --git a/0026-Fix-macro-invoking-moc-rcc-and-uic.patch b/0026-Fix-macro-invoking-moc-rcc-and-uic.patch index 1d244bdc09c2..d0b8a9b1388c 100644 --- a/0026-Fix-macro-invoking-moc-rcc-and-uic.patch +++ b/0026-Fix-macro-invoking-moc-rcc-and-uic.patch @@ -1,7 +1,7 @@ -From 4f58af1580449536e00792fa5e4051352ba8133a Mon Sep 17 00:00:00 2001 +From ad4a59bd142b2b3ab402ed8d0337ac972f77e76c Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 4 Dec 2016 20:35:47 +0100 -Subject: [PATCH 26/33] Fix macro invoking moc, rcc and uic +Subject: [PATCH 26/34] Fix macro invoking moc, rcc and uic * Otherwise the arguments aren't passed correctly leading to errors like ``` diff --git a/0027-Ignore-errors-about-missing-feature-static.patch b/0027-Ignore-errors-about-missing-feature-static.patch index f59dd3296a82..69d58afcd536 100644 --- a/0027-Ignore-errors-about-missing-feature-static.patch +++ b/0027-Ignore-errors-about-missing-feature-static.patch @@ -1,7 +1,7 @@ -From a674be4a5788536a25bc76e6a94e161a76ed9e51 Mon Sep 17 00:00:00 2001 +From a17249171793a58d2a0308879e96465e96c362f1 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Wed, 25 Jan 2017 20:59:54 +0100 -Subject: [PATCH 27/33] Ignore errors about missing feature static +Subject: [PATCH 27/34] Ignore errors about missing feature static Not sure why this error occurs, let's hope for the best --- diff --git a/0028-Enable-and-fix-use-of-iconv.patch b/0028-Enable-and-fix-use-of-iconv.patch index 6d3876541542..da8f6d752468 100644 --- a/0028-Enable-and-fix-use-of-iconv.patch +++ b/0028-Enable-and-fix-use-of-iconv.patch @@ -1,33 +1,19 @@ -From 5872f3ae8556fa1dfd4be8155db37a86db715e20 Mon Sep 17 00:00:00 2001 +From 94bf26c2b8ae87dc5add63ef4df8b765e4067651 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Wed, 25 Jan 2017 21:08:20 +0100 -Subject: [PATCH 28/33] Enable and fix use of iconv +Subject: [PATCH 28/34] Enable and fix use of iconv Change-Id: I5f0ab27afca0800dec11c7af74d196190820ae5c --- - config.tests/gnu-libiconv/gnu-libiconv.cpp | 2 +- - src/corelib/codecs/qiconvcodec.cpp | 7 +++---- - src/corelib/configure.json | 4 ++-- - 3 files changed, 6 insertions(+), 7 deletions(-) + src/corelib/codecs/qiconvcodec.cpp | 7 +++---- + src/corelib/configure.json | 6 +++--- + 2 files changed, 6 insertions(+), 7 deletions(-) -diff --git a/config.tests/gnu-libiconv/gnu-libiconv.cpp b/config.tests/gnu-libiconv/gnu-libiconv.cpp -index fe4b87b923..be4236436f 100644 ---- a/config.tests/gnu-libiconv/gnu-libiconv.cpp -+++ b/config.tests/gnu-libiconv/gnu-libiconv.cpp -@@ -43,7 +43,7 @@ int main(int, char **) - { - iconv_t x = iconv_open("", ""); - -- const char *inp; -+ char *inp; - char *outp; - size_t inbytes, outbytes; - iconv(x, &inp, &inbytes, &outp, &outbytes); diff --git a/src/corelib/codecs/qiconvcodec.cpp b/src/corelib/codecs/qiconvcodec.cpp -index 330eb7c038..88a782b863 100644 +index 9c39727946..cc14036b25 100644 --- a/src/corelib/codecs/qiconvcodec.cpp +++ b/src/corelib/codecs/qiconvcodec.cpp -@@ -49,7 +49,6 @@ QT_REQUIRE_CONFIG(iconv); +@@ -47,7 +47,6 @@ #include <errno.h> #include <locale.h> #include <stdio.h> @@ -35,7 +21,7 @@ index 330eb7c038..88a782b863 100644 // unistd.h is needed for the _XOPEN_UNIX macro #include <unistd.h> -@@ -182,7 +181,7 @@ QString QIconvCodec::convertToUnicode(const char* chars, int len, ConverterState +@@ -180,7 +179,7 @@ QString QIconvCodec::convertToUnicode(const char* chars, int len, ConverterState IconvState *state = *pstate; size_t inBytesLeft = len; // best case assumption, each byte is converted into one UTF-16 character, plus 2 bytes for the BOM @@ -44,7 +30,7 @@ index 330eb7c038..88a782b863 100644 // GNU doesn't disagree with POSIX :/ const char *inBytes = chars; #else -@@ -281,7 +280,7 @@ static bool setByteOrder(iconv_t cd) +@@ -279,7 +278,7 @@ static bool setByteOrder(iconv_t cd) size_t outBytesLeft = sizeof buf; size_t inBytesLeft = sizeof bom; @@ -53,7 +39,7 @@ index 330eb7c038..88a782b863 100644 const char **inBytesPtr = const_cast<const char **>(&inBytes); #else char **inBytesPtr = &inBytes; -@@ -303,7 +302,7 @@ QByteArray QIconvCodec::convertFromUnicode(const QChar *uc, int len, ConverterSt +@@ -301,7 +300,7 @@ QByteArray QIconvCodec::convertFromUnicode(const QChar *uc, int len, ConverterSt char *outBytes; size_t inBytesLeft; @@ -63,10 +49,19 @@ index 330eb7c038..88a782b863 100644 #else char **inBytesPtr = &inBytes; diff --git a/src/corelib/configure.json b/src/corelib/configure.json -index 183eb3a13e..a4560d5a60 100644 +index a22a7459bd..b7ed2f7281 100644 --- a/src/corelib/configure.json +++ b/src/corelib/configure.json -@@ -532,9 +532,9 @@ +@@ -71,7 +71,7 @@ + "test": { + "main": [ + "iconv_t x = iconv_open(\"\", \"\");", +- "const char *inp;", ++ "char *inp;", + "char *outp;", + "size_t inbytes, outbytes;", + "iconv(x, &inp, &inbytes, &outp, &outbytes);", +@@ -615,9 +615,9 @@ }, "gnu-libiconv": { "label": "GNU iconv", diff --git a/0029-Ignore-failing-pkg-config-test.patch b/0029-Ignore-failing-pkg-config-test.patch index 4f7d0cfaa9bb..d4c91f658c9f 100644 --- a/0029-Ignore-failing-pkg-config-test.patch +++ b/0029-Ignore-failing-pkg-config-test.patch @@ -1,7 +1,7 @@ -From 650000771fa6834dfb7faacddbabbc4dfb4830a9 Mon Sep 17 00:00:00 2001 +From 93dcee644f3059e381310bd0e4f905caeebfa05b Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Wed, 25 Jan 2017 21:08:48 +0100 -Subject: [PATCH 29/33] Ignore failing pkg-config test +Subject: [PATCH 29/34] 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 5b37371a7b..ac98495157 100644 +index 15b0f21e58..46cc841148 100644 --- a/configure.json +++ b/configure.json -@@ -646,7 +646,6 @@ +@@ -660,7 +660,6 @@ "pkg-config": { "label": "Using pkg-config", "autoDetect": "!config.darwin && !config.win32", diff --git a/0030-Prevent-qmake-from-messing-static-lib-dependencies.patch b/0030-Prevent-qmake-from-messing-static-lib-dependencies.patch index e6ea0ed96519..cb4dc10dbc7c 100644 --- a/0030-Prevent-qmake-from-messing-static-lib-dependencies.patch +++ b/0030-Prevent-qmake-from-messing-static-lib-dependencies.patch @@ -1,7 +1,7 @@ -From 496054604431db3e647bf89d63a9140ce75d1001 Mon Sep 17 00:00:00 2001 +From e917a88d58047cdb3fb46c1b07fb78648bf74358 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Tue, 7 Feb 2017 18:25:28 +0100 -Subject: [PATCH 30/33] Prevent qmake from messing static lib dependencies +Subject: [PATCH 30/34] Prevent qmake from messing static lib dependencies In particular, it messes resolving cyclic dependency between static freetype2 and harfbuzz @@ -11,7 +11,7 @@ static freetype2 and harfbuzz 2 files changed, 6 insertions(+) diff --git a/qmake/generators/unix/unixmake.cpp b/qmake/generators/unix/unixmake.cpp -index 50ec8db79e..50789b3b9c 100644 +index 4cbe06d9dc..47535f60d5 100644 --- a/qmake/generators/unix/unixmake.cpp +++ b/qmake/generators/unix/unixmake.cpp @@ -393,6 +393,9 @@ UnixMakefileGenerator::fixLibFlag(const ProString &lib) @@ -25,19 +25,19 @@ index 50ec8db79e..50789b3b9c 100644 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 59b394ca51..7788862142 100644 +index 4592fed7b2..b93d0df473 100644 --- a/qmake/generators/win32/winmakefile.cpp +++ b/qmake/generators/win32/winmakefile.cpp @@ -87,6 +87,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; - static const char * const lflags[] = { "LIBS", "LIBS_PRIVATE", - "QMAKE_LIBS", "QMAKE_LIBS_PRIVATE", nullptr }; + 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; + for (const ProString &dlib : project->values("QMAKE_DEFAULT_LIBDIRS")) + dirs.append(QMakeLocalFileName(dlib.toQString())); -- 2.20.1 diff --git a/0031-Hardcode-linker-flags-for-platform-plugins.patch b/0031-Hardcode-linker-flags-for-platform-plugins.patch index 16600f7142ba..958a86f8319a 100644 --- a/0031-Hardcode-linker-flags-for-platform-plugins.patch +++ b/0031-Hardcode-linker-flags-for-platform-plugins.patch @@ -1,7 +1,7 @@ -From e8047d9652035fc4ed438dbe3d4583af05d0535e Mon Sep 17 00:00:00 2001 +From fe25b3abe19208154631b6315587fce9bacc4991 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Wed, 25 Jan 2017 23:42:30 +0100 -Subject: [PATCH 31/33] Hardcode linker flags for platform plugins +Subject: [PATCH 31/34] Hardcode linker flags for platform plugins Otherwise incorrect order of libs leads to errors when building libqminimal.dll, libqoffscreen.dll @@ -14,7 +14,7 @@ and libqwindows.dll 4 files changed, 73 insertions(+), 18 deletions(-) diff --git a/src/plugins/platforms/direct2d/direct2d.pro b/src/plugins/platforms/direct2d/direct2d.pro -index 3bfd02bdc8..4732f89920 100644 +index 9764272632..7310958323 100644 --- a/src/plugins/platforms/direct2d/direct2d.pro +++ b/src/plugins/platforms/direct2d/direct2d.pro @@ -1,12 +1,32 @@ @@ -53,8 +53,8 @@ index 3bfd02bdc8..4732f89920 100644 +LIBS += -lQt5WindowsUIAutomationSupport +INCLUDEPATH += $$QT_SOURCE_TREE/include/Qt5WindowsUIAutomationSupport/$${QT_VERSION} - LIBS += -ldwmapi -ld2d1 -ld3d11 -ldwrite -lversion -lgdi32 - + LIBS += -ldwmapi -lversion -lgdi32 + QMAKE_USE_PRIVATE += 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..7ef91b574d 100644 --- a/src/plugins/platforms/minimal/minimal.pro diff --git a/0032-Fix-linking-against-static-plugins-with-qmake.patch b/0032-Fix-linking-against-static-plugins-with-qmake.patch index 7fcbbc33beae..937d57db9d33 100644 --- a/0032-Fix-linking-against-static-plugins-with-qmake.patch +++ b/0032-Fix-linking-against-static-plugins-with-qmake.patch @@ -1,7 +1,7 @@ -From dc6f09599400e4e6a790ba8bdd8fce3b6dc419de Mon Sep 17 00:00:00 2001 +From 1cd9a4e98c177d3b794f2c0549b6f74ddf0e6e65 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Fri, 25 Aug 2017 17:07:17 +0200 -Subject: [PATCH 32/33] Fix linking against static plugins with qmake +Subject: [PATCH 32/34] Fix linking against static plugins with qmake Required because qtConfig(static) does not work with 'Merge shared and static library trees' @@ -11,7 +11,7 @@ approach 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mkspecs/features/qt.prf b/mkspecs/features/qt.prf -index 2c4d6cd97e..a15ab81899 100644 +index 5b05aa9e2a..2732c94797 100644 --- a/mkspecs/features/qt.prf +++ b/mkspecs/features/qt.prf @@ -69,7 +69,7 @@ all_qt_module_deps = $$resolve_depends(qt_module_deps, "QT.", ".depends" ".run_d diff --git a/0033-Disable-hardware-randomizer-for-32-bit.patch b/0033-Disable-hardware-randomizer-for-32-bit.patch index af0cd2a4420c..63dc75a95f6f 100644 --- a/0033-Disable-hardware-randomizer-for-32-bit.patch +++ b/0033-Disable-hardware-randomizer-for-32-bit.patch @@ -1,7 +1,7 @@ -From a06c30c0f497e4dcef912b2c316f2d97a6f0f933 Mon Sep 17 00:00:00 2001 +From b26414fad10e9ff16f305b3484670260e07df70e Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sat, 26 May 2018 03:47:14 +0200 -Subject: [PATCH 33/33] Disable hardware randomizer for 32-bit +Subject: [PATCH 33/34] Disable hardware randomizer for 32-bit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -19,7 +19,7 @@ during RTL pass: ira 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/corelib/global/qrandom.cpp b/src/corelib/global/qrandom.cpp -index 23e5e499b2..12030eba08 100644 +index 6195c324e7..480af00ebc 100644 --- a/src/corelib/global/qrandom.cpp +++ b/src/corelib/global/qrandom.cpp @@ -90,7 +90,7 @@ DECLSPEC_IMPORT BOOLEAN WINAPI SystemFunction036(PVOID RandomBuffer, ULONG Rando diff --git a/0034-Prevent-static-build-to-prefer-dynamic-libraries.patch b/0034-Prevent-static-build-to-prefer-dynamic-libraries.patch new file mode 100644 index 000000000000..376fb282caad --- /dev/null +++ b/0034-Prevent-static-build-to-prefer-dynamic-libraries.patch @@ -0,0 +1,37 @@ +From 62ddbd09af7ddeb08d21ccbaf2c8724a12c52ef6 Mon Sep 17 00:00:00 2001 +From: Martchus <martchus@gmx.net> +Date: Sun, 3 Feb 2019 14:34:42 +0100 +Subject: [PATCH 34/34] 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 c45439c3ef..7953cdd19e 100644 +--- a/mkspecs/features/qt_configure.prf ++++ b/mkspecs/features/qt_configure.prf +@@ -541,12 +541,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.20.1 + @@ -36,8 +36,8 @@ isNoOpenGL() { } pkgname=mingw-w64-qt5-base -pkgver=5.12.0 -pkgrel=2 +pkgver=5.12.1 +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 isStatic && arch=('any') || arch=('i686' 'x86_64') @@ -84,41 +84,43 @@ source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${pkgver}/subm '0030-Prevent-qmake-from-messing-static-lib-dependencies.patch' '0031-Hardcode-linker-flags-for-platform-plugins.patch' '0032-Fix-linking-against-static-plugins-with-qmake.patch' - '0033-Disable-hardware-randomizer-for-32-bit.patch') -sha256sums=('5e03221d780e121aabd734896aab8f331e5d8c9d9b54f1eb04907d0818eaeecb' - '5384b242223f2219c933c098397c287f387ef0b736633200c647c6feed69cc85' - '01e71d5375ff6fb214e0b4f623f3c007485885d8e1fdfc185a1d25b6d1ea615a' - 'c2d68bcba25bd39f3d7f95271de99a28f0de33f98ae0a4f102728a48a58fa2b8' - 'cbeb19172eab4d2faef020560fb83190ac975fa54acaaf006a7b720e45b4fa43' - '81f9e6a05b8c78392b0b8eb08535480cd9e0ebb6ed77ecffcf382f133482f55f' - 'fbcb5b586ec3a6723ac19378c40f1b28d12e8f0745db1016e38e040e6aad5e7b' - 'cffb2cc60dd4aed39dec14bef889e0e4a5fe8d1171297fdd0d31d65c58cb6591' - '971f0176651edf8bafb1cd5062f04f1e840cc703ee85fabc1d04face637368b2' - '6a2e839aa513a32a2f615fbd9a010a4e9db219fe5a35678b290d52ed4ebde9eb' - '7696e92e2b5d9c6be69d0ffe520f3539ee8b25d019b460319e7e6c1a90805b8f' - '4db1340b60add08de2eb9e365c2c9b45fbdbb9137a42c1631e6589527b66f197' - 'a3ceba043bd7eb078a850a0189afe8e0c431e39a5d88c8c4f1609917388b8606' - '9471df45a4c536f83d51e2ec83bdfd3b1d6233b4fcaa992c48a1155cc31396cd' - 'e2401d6cb5ccdd51406d0ff9abb8a75f28abcf0eeb5fa77cc7f02f9122f200b9' - '25be17392e2b73f7d8a8868d1d0671c52ab58c7d03011f3e4a9c186e9a6a2a9a' - '84fb80ff48e6146d57530df475532a94002812e4b11a04e49ee1537ad0c91242' - '0e3a3f2c2bbdf5c66d823a6a4c9afa88794d97901e97c927f0ee761a9bf11db6' - 'bcef0c63c33e609098dd834e0a07e684eb75776ffd2f7db20edbc433b780fed0' - '6c23bc2a75720c3f66f23ecb1944d5c58ac39d6a87e1609b0d444d87a5b3df5d' - 'df7a6f64dd5973a5208fc82ab2604be5e468c0460e78659a63649a9fe4bda865' - 'e983f369f7bacb6ecacbe5964ddd09a07abe2e6ddb8b8be5abeb6f4a3b2510d6' - '86b494b28602b0c5228e3ab14f5d22c66e2d9f19b77bc6027eb991cd99b8c1e0' - '00ce0189c216b3baf3874d2ae2f9437c6e7ef117206cca1abcf6b1108c7b2ad9' - 'e04105e95ecf5220f87dbf4d4bc4a5a09fb00a77a107679a63c9cbb62c84afae' - '03d97deef6266959afefc3cb4c39b9be15880b07a16bb6f5cf72c71c0ae2897f' - '4c1ce0fa776f7a7f62239e4c4ffd0270e99f9bd7545c3bf32c3ceb5276bede93' - '2bb0550e924d57da83ce586dab9b90180daee196d0f5303dce0af07a7e509e0b' - '73bfcc40a301521a5c977e0ed427e40d780ee7d1416f4fbb3c67d4e6c101bcd3' - 'd252d96f69c41f3b3112304d53773ff7549cb95cbe0cde171a79e41ee55f89ab' - '9bb54043cc8a3b18aca222cea873d1651e881132985ad49402d63a69df518baa' - 'e4ee1aabed10b1ea4192498b6e80998425ab581d7ad44a9d880066f7017d481e' - 'a6640e6680f323f846e63e28f4ef343cfbec75397f7a103119b7b3415bcee260' - '7758fd6412d8007518099b351e6661b5157a59e253f328c94f42980e3f977260') + '0033-Disable-hardware-randomizer-for-32-bit.patch' + '0034-Prevent-static-build-to-prefer-dynamic-libraries.patch') +sha256sums=('533078ce02678988576e224cb3844979907950cf83e0fda3364bc1d5701c9049' + '4e1dbb878b77dbba96a9564ecbded6dbd74482b52e1cf4becaa1ce741c8cf489' + 'f54815ff2fede9dbdc0ade572305ff684940714ca65e76d25f5b15cd0cb0a3da' + 'c60e6cef5d0c95b6d034ade75fde3cf150e1570f5ca62d6b32d942abcb937f86' + '0a82cde28edae5abb8d624cea407db515c1d52e8963f07aa8430c1d1f810e54a' + '39059ed786851c1cdf416c4d0a9a5b042edda83bddd03b5bfcbcae1eaf8f7694' + '4ef83cf4d211c446a5715cfa422f130492ae18bfb5cb42db9ff6516ed7fb29f1' + '48ee96ffc01d5ab7c648f4aae6cee286992e4eb406e48718058092206f8ad2eb' + '58f27f2359b3571aac44a3770a705692eed9e6fd24b6e6bf730e7aad5ee4a030' + 'cf6154d83655efbf30281c4f83d29feb252fd104849f8e2ad495da688e581314' + 'edf080092f4d158d2e42cedd50f80b3b5715ae47f740b16fa43132f1dc68cf9d' + '1c3c46c26809e59e91732d2ff082a445dac4986294f400277272c2337d8c21f3' + '3ee7b4f4ed6ea86794a5d119c7000033d0f61208150e37f35428e52611f7ae3f' + '1d18e225c4bda89fe024a47834a8b79d9c8e4d1ba884d7dc6b07a93bf0307a85' + '2affe7ac03016cfd536f63d61c0f5bd42932fc3823b7f2dbabca9c2db5a53ae6' + 'd0a2e33d20c4d6063f7546fbc84d2f6a5a96955f998ba7af4320bc005fa2a722' + '9941e9c883496bb3409a12ef3f73b6f3d76e106061381deb74380eafb1ac472f' + 'f336402daf227aa529080ab31612a205c936438ecbfab3627252164d8903c1b1' + '8cf716c22bf0fface6e3c015cd4d621425e3b20771b15ab03eeeeb59db248756' + '95f9847a1fe05ad78ae4a682208894d995becc0ca4f3463d39781e8a52543017' + '132fc790cfa528063fe95c3bc104826cb82105cd24e05ed77593115212987dc3' + '8ace42d2ec1b7a05a6bacf93f899775906c407f349efbbd2533b942fb474f200' + '8849864de4abf2dd70ffe2fe70aabb608c296eccdc41e6f4061645bd39f63c50' + '60ca9adfe6ae46d6dc7b4874c3202b46bc57f6649a45fb5301e4e4b63e70aa5e' + '47f83f04256afe1bd8701c31673e00e445b65840b5fe2bd132a98c8f292aa9c4' + '305b30fad80fba756bd3ad6c34c95030fc3927d52a3dc9b90d2705b390831734' + '91f37e9098e78881c1953c85e592e108be27dae08a83278f4a9885cb296a6871' + '9ca5f2175d8679b7312d8cb718ddc648e161a6aae631b5d4c9e528594a020d1a' + '3a5619542cb549ba7cc2bf1f9b77d524e5f9aa78d1e8dea6cd75c4f09b6aabc9' + 'e30cf84af1ff7764cb0e0644a7bfbde920f463af9c24aab53abef9cf3410ceb3' + 'fdd36ed82c5a8df7a0157b4ce9a3be16ec4c2b98cdf071a2be662603045da652' + '55b42d68ca7981ef777a7f081f840b1b80ada8c0dc9508092ec9fba151a88dfd' + '06f98f6ce25da7010e7398111ee7b79f380b79a7ab125eba3ef6d051af92cf8a' + '5a097dc80dc07aa755e77c50a469c3c08bf5b562ad9b116dbbf891a072e7bdc2' + '66047e08db2282d69563b3081b847fa7c041c3c387ab00ca72ff481b91124925') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' @@ -157,6 +159,19 @@ prepare() { # as well as 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}" + 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 + sed -i -e "s|^\(QMAKE_LFLAGS_RELEASE.*=\).*$|\1|" \ + mkspecs/common/g++-unix.conf } build() { @@ -164,7 +179,8 @@ build() { # 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.) + # distinguish between flags for native compiler and cross compiler. + # See prepare() function.) unset CFLAGS unset CXXFLAGS unset LDFLAGS @@ -216,6 +232,7 @@ build() { # allows using ccache despite the use of pre-compile header (sloppiness must be set to pch_defines,time_macros in ccache config for this) qt_configure_args+=' -device-option CROSS_COMPILE_CFLAGS=-fpch-preprocess' + qt_configure_args+=' -device-option CROSS_COMPILE_CXXFLAGS=-fpch-preprocess' # add include directory of freetype2 and dbus manually (pkg-config detection in qmake doesn't work which is currently ignored via a patch) qt_configure_args+=" $(${_arch}-pkg-config --cflags-only-I freetype2 dbus-1 | sed -e "s/-I\/usr\/${_arch}\/include //g")" @@ -329,6 +346,11 @@ package() { # keep a couple pri files not found in base mv "${pkgdir}/usr/${_arch}/lib/qt/mkspecs/modules/qt_plugin_"*.pri "${pkgdir}/usr/${_arch}" + # fix bad library order for static CMake builds caused by Qt5Gui.static.prl + sed -i -e "s|-lfreetype;|-lfreetype;-lharfbuzz;-lfreetype;-lbz2;|" \ + -e "s| -lz;| |" \ + "${pkgdir}/usr/${_arch}/lib/Qt5Gui.static.prl" + # delete duplicate files that are in the base package rm -fR "${pkgdir}/usr/${_arch}/"{include,share} rm -fR "${pkgdir}/usr/${_arch}/lib/"{qt/bin,qt/mkspecs} |