diff options
35 files changed, 687 insertions, 453 deletions
@@ -1,8 +1,8 @@ # Generated by mksrcinfo v8 -# Thu Jul 6 21:12:06 UTC 2017 +# Mon Oct 16 17:36:24 UTC 2017 pkgbase = mingw-w64-qt5-base pkgdesc = A cross-platform application and UI framework (mingw-w64) - pkgver = 5.9.1 + pkgver = 5.9.2 pkgrel = 1 url = https://www.qt.io/ arch = i686 @@ -31,7 +31,7 @@ pkgbase = mingw-w64-qt5-base options = !buildflags options = staticlibs options = !emptydirs - source = https://download.qt.io/official_releases/qt/5.9/5.9.1/submodules/qtbase-opensource-src-5.9.1.tar.xz + source = https://download.qt.io/official_releases/qt/5.9/5.9.2/submodules/qtbase-opensource-src-5.9.2.tar.xz source = 0001-Add-profile-for-cross-compilation-with-mingw-w64.patch source = 0002-Ensure-GLdouble-is-defined-when-using-dynamic-OpenGL.patch source = 0003-Use-external-ANGLE-library.patch @@ -54,47 +54,51 @@ pkgbase = mingw-w64-qt5-base source = 0020-Disable-determing-default-include-and-lib-dirs-at-qm.patch source = 0021-Use-.dll.a-as-import-lib-extension.patch source = 0022-Merge-shared-and-static-library-trees.patch - source = 0023-Allow-usage-of-static-version-with-CMake.patch - source = 0024-Adjust-linker-flags-for-static-build-with-cmake-ming.patch - source = 0025-Use-correct-pkg-config-static-flag.patch - source = 0026-Fix-macro-invoking-moc-rcc-and-uic.patch - source = 0027-Ignore-errors-about-missing-feature-static.patch - source = 0028-Enable-and-fix-use-of-iconv.patch - source = 0029-Ignore-failing-pkg-config-test.patch - source = 0030-Prevent-qmake-from-messing-static-lib-dependencies.patch - source = 0031-Hardcode-linker-flags-for-platform-plugins.patch - sha256sums = bc9a21e9f6fff9629019fdf9f989f064751d5073c3a28dc596def92f4d4275c6 - sha256sums = f52c581e355a7da69c96c0b31dd42f13b298f11bb616945e6215804fef06866b - sha256sums = e540286f502a72dc55649006d671c9bcca5eef174ad4c275087a88f56bc40bfd - sha256sums = dc6d77dfa426aabcebbbda7e05f0bf8746a1700519a9bcbc4bf590b47af51eee - sha256sums = cb799952f673b18ab9e81528f31b0748adc9313335eccc2a8a3b30cb202d458f - sha256sums = 79634ff2647f5c7c93462ea97e9fca5b2be386450a2c9b27c26ec6f6cfc1f0ee - sha256sums = c447040e2fbaae9aae2bda5c8ed21e71cf2f83f9aa57ceba9cce6e1d1386ed12 - sha256sums = 99735144a8437b8bc03141e998c5f750b6b5f82490cca5e31c67c013ec7f5b36 - sha256sums = 7866105da64a96722a2676318e90951d2ac3e7bbe5793557af2ea5a73d0f321a - sha256sums = 37397374c1e373c74a69c4608834dc642832b51ef5532baad5313889ad477fc4 - sha256sums = d67c33f9b990ebbd486ad38f5d5907a0f2d4989e5c2c5057ff017ee06e6493b1 - sha256sums = 1a4f497ca54cecbb055303d4dd25eb63f5b2261d32d0b045eea4ae8f4e3bbbe5 - sha256sums = 11e329848dbfe42abda9c9531370437ee5a0d69483c333766655e847d2b05a62 - sha256sums = d3b395a536afb2986a0fc4aabaddc9c5ac465b4f7eb7a58a30c9918be07f2f62 - sha256sums = 864ba163f331620ecc4df00132dc7fd9b85427038a8209571ddf7b43e5bb2ecd - sha256sums = 68220dc824e0294e604512cec9e6d40e55184d86bf7577dcb5b1af6462da9c66 - sha256sums = 1ba5e6862f81456c94e3f57cc37a303d67912269661028357c716de8bf21aeb9 - sha256sums = a4c60391632d84a085896db61aa4e94f1742be34448c23a97a1aa0910cd2e29a - sha256sums = 3db5c1fe5f6957cecdaef9ce767f27e4d5fdd4d9d775d527dba6c093808f371d - sha256sums = d3e0d6d4daea62fd710416f4549c943f601b7c0e5e84c5cc8c524fabb1dd402b - sha256sums = 569a2f1d7e07d439c82754703b1b007ce6907b12743211b10138a394965258c4 - sha256sums = 589955c161c1e975536ee6e21ab1470cf6f8d3a5c50f170ba9ee9d855e347c59 - sha256sums = b1b43064960ca3eb35eb3baed7abf28b00f606d32baeb38d53ffbf96c21dc716 - sha256sums = cbfbb01f52c17cd37d6724e5fad0708d8337d4ba11b87f59dbbe108863aca7dd - sha256sums = f9b1e01c870a1640865d2d57cb756a9c754c047c66ef78f8cadc6e609677ede0 - sha256sums = 25138daad7bfc00cb6f6556da53e6efb2ad0c7b09743cfc3633c86b46ad538cc - sha256sums = 19809d59b5b1fd9ffea8bee6afeca0a3992170f362d0cb99d9f20b2148b859a4 - sha256sums = e0841bd69b6037303bfba1de3072bd55a31ca12c57b8d4e01c28d4ef447b1bed - sha256sums = 4d9204b4e4d634391704954ba152651ccfdd0a00efaabc892c62c710fc6068b4 - sha256sums = b0e505ceef8cf052a9ceef9a508c9c1f5e4c1b4d49e08f954bcb42e4c1aed79e - sha256sums = 389bee66acc6aa9d36f6ab206d217e43b0aca8ba290dc7b1d170c98b79d64cf2 - sha256sums = e2dde7f878d8b5176d5aa925aedeaf60e7b3bf14f98a55327af5f7adcff2eb8c + source = 0023-Pull-dependencies-of-static-libraries-in-CMake-modul.patch + source = 0024-Allow-usage-of-static-version-with-CMake.patch + source = 0025-Adjust-linker-flags-for-static-build-with-cmake-ming.patch + source = 0026-Use-correct-pkg-config-static-flag.patch + source = 0027-Fix-macro-invoking-moc-rcc-and-uic.patch + source = 0028-Ignore-errors-about-missing-feature-static.patch + source = 0029-Enable-and-fix-use-of-iconv.patch + source = 0030-Ignore-failing-pkg-config-test.patch + source = 0031-Prevent-qmake-from-messing-static-lib-dependencies.patch + source = 0032-Hardcode-linker-flags-for-platform-plugins.patch + source = 0033-Fix-linking-against-static-plugins-with-qmake.patch + sha256sums = 7fe2bb468955f633c71b3ddd3c269e68a2c4137a4e5b8dd12dcdb34cbc6d609b + sha256sums = 685fd08e1c4e97bbf6990959cb3dbe88dd3ed494221400dce6aef159d277c34a + sha256sums = 4e5115e62b952acface29882c5f6423569cd1c439c454e58594b5fb2cb740916 + sha256sums = 0b339563844ccd325486d78711592561996fb256f0612c63b33b6ea52a6fc77e + sha256sums = 18945eb521df54d37922894c9bc82ccd03eb3fd9f6e0aed986facf2b49f336d4 + sha256sums = 2c2b5f9b3db02750ae9a9626ea8a24a3516c881c5eaa9b19fb9a2621fc1263fc + sha256sums = 81559290cc03f7ff6042f28a6eb319882264876076a20e24531641ebe4ef3aee + sha256sums = a3d657ee7f8bfa6c3e5a4aa626710bc27fc82fea3d834098bde2b2f67244d11c + sha256sums = 3df9bf81a936c737cc7ca53bdea9cfd2a4010fa190fe3e1a45611097d8213ef4 + sha256sums = 5aac41daaf223726d31ab5a7aec0bdc050aa182522ca732cc31c3b5ac8cd28dc + sha256sums = 6844b7106e636d513b077edeba318990641b1ee294f2a70739830e3d0a9b0d02 + sha256sums = 12b51c32069270e49e05e64b0f54d6e3e871523660fd17673e0ee6e67206955e + sha256sums = 4baa73f8b3d61b503a9de1437bdc9f7f84cd2443280afc1461456ae34d222e9b + sha256sums = e34eec672f9f681302edd809cbcb7d6848a310a02acc5711e2e348aab1b8d74c + sha256sums = d70f44c06a7bae6fbd91022ec79f09e2d658969aa5a6602bff6eb61076801b6e + sha256sums = f705fcfe1f552536318c2c63d59e5ec95640321d9f1fff1016a34d1bc862c9df + sha256sums = 60034cce435d3eca60906e4af2f1ad55edd12b4e95ccc9905e793bc7b9d66917 + sha256sums = 295c307f6b075b0c20b7d714b6ecff1bc25927b80dd60d725052b4bc05d1b055 + sha256sums = 37c2d0bce780a15e7bdb477324936b1ae0ebe576c64d3a713a9086586518d50a + sha256sums = 36b6a2e1d2bf478746e931da5223dcfeffc5eda513b64596ffbbd663fd5e63e7 + sha256sums = e1b45c50ca09b065f218442a1fc3ddf3c8de1357a818925497fe0e3e7c28cacd + sha256sums = 03feabae42553a6960c2a257eb951d956fe31a9a4440a92b373e8a0d6cb301ff + sha256sums = 1ec8a7ebaf5e400aca7a0abe8cee78d0dae6b662c30bf245b81814cfcd048dd3 + sha256sums = bc2f049471853a6bb2e83de3c2691a4206d55c7fe018bb7910215e9968759082 + sha256sums = 8611ac15ee36b803b5095466509c57d45532ab017d61513f2be7b34d5c13da0f + sha256sums = f999f20131f0180439b59320ab350a284b169e5ee5e21379fa74dc07d4aeda25 + sha256sums = d9fed680c0313c89458361ac253a5710379fa8022c7c24b05d2807ecaf4f803a + sha256sums = d263509d7951f12d9ccfa841cd7f205aebc7b9db28913925b65a23e627258023 + sha256sums = 092176255153bae63f779833d25e5f64a2c489a1b6f33e8e158ff59629916b36 + sha256sums = 65023b59b41797281876b5fcd8cb1542ad790b9b6f83125b6b0aa1e02d9de4fb + sha256sums = 3d5202be8837bccab4dedc9b6f10b3722ca57ea8b663e08b55d0235381397508 + sha256sums = 4df4c2ad348c13a3b82c3a9b127464492898379a82dfd6db9d3ff9d051a08dab + sha256sums = cfa48754bef9f7a95f1350c0c1ec1699c9dc413013ef78d218206f5d60335823 + sha256sums = 135123e630efdbeb6d4edc9bc200754f2c881760652fe5152f0903ae238ce2c9 pkgname = mingw-w64-qt5-base diff --git a/0001-Add-profile-for-cross-compilation-with-mingw-w64.patch b/0001-Add-profile-for-cross-compilation-with-mingw-w64.patch index aaad1e4810b9..9fa075d16c77 100644 --- a/0001-Add-profile-for-cross-compilation-with-mingw-w64.patch +++ b/0001-Add-profile-for-cross-compilation-with-mingw-w64.patch @@ -1,7 +1,7 @@ -From 519d5f635192522a5dd273a19446071fd4c6970a Mon Sep 17 00:00:00 2001 +From 76b918b0c930c9c4c704f4ce947822e30c1bf1ec Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Fri, 3 Feb 2017 18:30:51 +0100 -Subject: [PATCH 01/31] Add profile for cross compilation with mingw-w64 +Subject: [PATCH 01/33] Add profile for cross compilation with mingw-w64 --- mkspecs/mingw-w64-g++/qmake.conf | 126 +++++++++++++++++++++++++++ @@ -304,5 +304,5 @@ index 0000000000..c5a70b1445 + +#endif // QPLATFORMDEFS_H -- -2.13.2 +2.14.2 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 5a619c4d7c1d..e644e2aacb4d 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 916435c7d9d9732ce2076c16492ae71aabc38904 Mon Sep 17 00:00:00 2001 +From 31fa3e1192849fb5460b346a3fc1f91fe1431f8e Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 13:36:53 +0200 -Subject: [PATCH 02/31] Ensure GLdouble is defined when using dynamic OpenGL +Subject: [PATCH 02/33] Ensure GLdouble is defined when using dynamic OpenGL FIXME: Not sure whether this is still required --- @@ -23,5 +23,5 @@ index 0a5de2c9af..35798a2a28 100644 #ifdef Q_ENABLE_OPENGL_FUNCTIONS_DEBUG #include <stdio.h> -- -2.13.2 +2.14.2 diff --git a/0003-Use-external-ANGLE-library.patch b/0003-Use-external-ANGLE-library.patch index 6a889d768002..f753a01a597f 100644 --- a/0003-Use-external-ANGLE-library.patch +++ b/0003-Use-external-ANGLE-library.patch @@ -1,7 +1,7 @@ -From 76a624154113a86a11459b3c331e23a14ec5b255 Mon Sep 17 00:00:00 2001 +From 00b0e801caf246047f3ea18bead0ffc7c7631dad Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 13:41:38 +0200 -Subject: [PATCH 03/31] Use external ANGLE library +Subject: [PATCH 03/33] Use external ANGLE library --- src/gui/Qt5GuiConfigExtras.cmake.in | 4 ++-- @@ -28,7 +28,7 @@ index 07869efd7d..2e32911a64 100644 _qt5_Gui_check_file_exists(${Qt5Gui_EGL_INCLUDE_DIRS}) diff --git a/src/gui/gui.pro b/src/gui/gui.pro -index cfdb5e889b..4afb45e592 100644 +index f7d077e656..b7fc6fadaf 100644 --- a/src/gui/gui.pro +++ b/src/gui/gui.pro @@ -18,12 +18,6 @@ MODULE_PLUGIN_TYPES = \ @@ -44,9 +44,9 @@ index cfdb5e889b..4afb45e592 100644 # Code coverage with TestCocoon # The following is required as extra compilers use $$QMAKE_CXX instead of $(CXX). # Without this, testcocoon.prf is read only after $$QMAKE_CXX is used by the -@@ -34,6 +28,8 @@ testcocoon { - +@@ -35,6 +29,8 @@ testcocoon { osx: LIBS_PRIVATE += -framework AppKit + darwin: LIBS_PRIVATE += -framework CoreGraphics +win32:qtConfig(angle): LIBS_PRIVATE += -lGLESv2 + @@ -54,7 +54,7 @@ index cfdb5e889b..4afb45e592 100644 include(accessible/accessible.pri) diff --git a/src/opengl/opengl.pro b/src/opengl/opengl.pro -index 718a886809..89965709ed 100644 +index 016db46405..02f1204f0f 100644 --- a/src/opengl/opengl.pro +++ b/src/opengl/opengl.pro @@ -11,6 +11,7 @@ QMAKE_DOCS = $$PWD/doc/qtopengl.qdocconf @@ -93,5 +93,5 @@ index 43fc06f2e5..4188d4ea6b 100644 SUBDIRS += src_3rdparty_libpng src_3rdparty_freetype.depends += src_3rdparty_libpng -- -2.13.2 +2.14.2 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 fef86f9c8623..b3ae560de48c 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 7e740ad2c4de0297b0414acff0e51193dc7a0748 Mon Sep 17 00:00:00 2001 +From 6f9daffcc9b83acbcae94ced0708f6f96f2e99c4 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 13:48:51 +0200 -Subject: [PATCH 04/31] Fix too many sections assemler error in OpenGL factory +Subject: [PATCH 04/33] 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 4c778b184e..1dd1755d7f 100644 HEADERS += opengl/qopengl.h \ opengl/qopengl_p.h \ -- -2.13.2 +2.14.2 diff --git a/0005-Make-sure-.pc-files-are-installed-correctly.patch b/0005-Make-sure-.pc-files-are-installed-correctly.patch index 3e510a596d3d..e99439dbf7b9 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 6c77b092c06551fbbed5df56e674f7ce0370a02a Mon Sep 17 00:00:00 2001 +From 198b5f7e944f21a7f9caaeb686afddfc9e87c768 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 13:54:12 +0200 -Subject: [PATCH 05/31] Make sure *.pc files are installed correctly +Subject: [PATCH 05/33] Make sure *.pc files are installed correctly --- qmake/generators/makefile.cpp | 8 ++++++-- @@ -62,5 +62,5 @@ index 75bb5d236d..737f3abc3a 100644 uninst.append("\n\t"); uninst.append("-$(DEL_FILE) " + escapeFilePath(dst_pc)); -- -2.13.2 +2.14.2 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 82cc017729e9..43268114c14f 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 ec5bc4a14e14c982902366f4345cb34e40f6ce1d Mon Sep 17 00:00:00 2001 +From 5731914d9e5d8a026901e5bbab3f3ee1b3ea50f3 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 13:58:28 +0200 -Subject: [PATCH 06/31] Don't add resource files to LIBS parameter +Subject: [PATCH 06/33] Don't add resource files to LIBS parameter Solves an issue where the generated pkg-config files contained invalid Libs.private references @@ -11,7 +11,7 @@ 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 b9895fb10d..06211572e8 100644 +index bad53dc5b7..c730d641b2 100644 --- a/qmake/generators/win32/mingw_make.cpp +++ b/qmake/generators/win32/mingw_make.cpp @@ -202,7 +202,7 @@ void MingwMakefileGenerator::init() @@ -24,5 +24,5 @@ index b9895fb10d..06211572e8 100644 if (project->isActiveConfig("dll")) { QString destDir = ""; -- -2.13.2 +2.14.2 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 e34889808291..f09d6fae4298 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 46cd5894bb960c5c67e31f372737ae3268924b67 Mon Sep 17 00:00:00 2001 +From 285b5fee5b5ada6cd82ddaf33eb9c1a05b564bc6 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 14:01:14 +0200 -Subject: [PATCH 07/31] Prevent debug library names in pkg-config files +Subject: [PATCH 07/33] 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 @@ -29,5 +29,5 @@ index 0be4b1ef01..c7e075b5bc 100644 QString subdir = project->first("QMAKE_PKGCONFIG_DESTDIR").toQString(); if(!subdir.isEmpty()) { -- -2.13.2 +2.14.2 diff --git a/0008-Fix-linking-against-shared-static-libpng.patch b/0008-Fix-linking-against-shared-static-libpng.patch index 330b5979cabb..d1b4f7ac33e8 100644 --- a/0008-Fix-linking-against-shared-static-libpng.patch +++ b/0008-Fix-linking-against-shared-static-libpng.patch @@ -1,7 +1,7 @@ -From dcc3c951ab71f84f0cc32ffd75ac375b56de1e1a Mon Sep 17 00:00:00 2001 +From 1ee8c85cd86ca49c2d43d81af0c57eb49b877372 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Thu, 26 Jan 2017 17:51:31 +0100 -Subject: [PATCH 08/31] Fix linking against shared/static libpng +Subject: [PATCH 08/33] Fix linking against shared/static libpng Change-Id: Ic7a0ec9544059b8e647a5d0186f1b88c00911dcf --- @@ -9,10 +9,10 @@ Change-Id: Ic7a0ec9544059b8e647a5d0186f1b88c00911dcf 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gui/configure.json b/src/gui/configure.json -index 2fb03a452a..3f07fba4d5 100644 +index 28c8034c75..7e9148500b 100644 --- a/src/gui/configure.json +++ b/src/gui/configure.json -@@ -176,7 +176,8 @@ +@@ -294,7 +294,8 @@ "sources": [ { "type": "pkgConfig", "args": "libpng" }, { "libs": "-llibpng", "condition": "config.msvc" }, @@ -23,5 +23,5 @@ index 2fb03a452a..3f07fba4d5 100644 "use": [ { "lib": "zlib", "condition": "features.system-zlib" } -- -2.13.2 +2.14.2 diff --git a/0009-Fix-linking-against-static-D-Bus.patch b/0009-Fix-linking-against-static-D-Bus.patch index 6f325993e8c6..d07abaee8c3c 100644 --- a/0009-Fix-linking-against-static-D-Bus.patch +++ b/0009-Fix-linking-against-static-D-Bus.patch @@ -1,41 +1,33 @@ -From dbbf044c7f0b3b521f90376f87fe94f45d74b795 Mon Sep 17 00:00:00 2001 +From 3e04b4a701a7dde06f5ea046198ac5646b644e86 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Fri, 3 Feb 2017 19:36:25 +0100 -Subject: [PATCH 09/31] Fix linking against static D-Bus +Subject: [PATCH 09/33] Fix linking against static D-Bus --- - config.tests/unix/dbus/dbus.cpp | 4 ++++ - configure.json | 6 +++++- - src/dbus/qdbus_symbols_p.h | 4 ++++ - 3 files changed, 13 insertions(+), 1 deletion(-) + configure.json | 9 +++++++-- + src/dbus/qdbus_symbols_p.h | 4 ++++ + 2 files changed, 11 insertions(+), 2 deletions(-) -diff --git a/config.tests/unix/dbus/dbus.cpp b/config.tests/unix/dbus/dbus.cpp -index 295c904400..80d3e9c044 100644 ---- a/config.tests/unix/dbus/dbus.cpp -+++ b/config.tests/unix/dbus/dbus.cpp -@@ -37,6 +37,10 @@ - ** - ****************************************************************************/ - -+#ifdef QT_STATIC -+# define DBUS_STATIC_BUILD -+#endif -+ - #define DBUS_API_SUBJECT_TO_CHANGE - #include <dbus/dbus.h> - diff --git a/configure.json b/configure.json -index b572a3d1f5..cd918abc98 100644 +index a91456aaf3..55c56369ba 100644 --- a/configure.json +++ b/configure.json -@@ -159,12 +159,16 @@ +@@ -171,18 +171,23 @@ + "CONFIG(debug, debug|release): \\", + " LIBS += $$LIBS_DEBUG", + "else: \\", +- " LIBS += $$LIBS_RELEASE" ++ " LIBS += $$LIBS_RELEASE", ++ "static: DEFINES += DBUS_STATIC_BUILD" + ] + }, "sources": [ { "type": "pkgConfig", "args": "dbus-1 >= 1.2" }, - { ++ { + "libs": "-ldbus-1 -lws2_32 -liphlpapi", + "condition": "config.win32 && !features.shared" + }, -+ { + { "libs": "", "builds": { "debug": "-ldbus-1d", @@ -62,5 +54,5 @@ index cfc0e12046..65f1397cd6 100644 # include <dbus/dbus.h> #else -- -2.13.2 +2.14.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 dbdd95612eba..02a01b1190e8 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 347aa4cd9a6563d841827eccf73d0f81fc57372d Mon Sep 17 00:00:00 2001 +From 28750e29ab3549300823ff8af3c2064479e71c95 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Fri, 2 Jun 2017 18:28:10 +0200 -Subject: [PATCH 10/31] Don't try to use debug version of D-Bus library +Subject: [PATCH 10/33] 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 cd918abc98..f5d92d001b 100644 +index 55c56369ba..9914bf0487 100644 --- a/configure.json +++ b/configure.json -@@ -165,7 +165,7 @@ +@@ -184,7 +184,7 @@ { "libs": "", "builds": { @@ -25,5 +25,5 @@ index cd918abc98..f5d92d001b 100644 }, "condition": "config.win32 && features.shared" -- -2.13.2 +2.14.2 diff --git a/0011-Fix-linking-against-static-freetype2.patch b/0011-Fix-linking-against-static-freetype2.patch index b8b08fe257c0..aa7a66d490f9 100644 --- a/0011-Fix-linking-against-static-freetype2.patch +++ b/0011-Fix-linking-against-static-freetype2.patch @@ -1,19 +1,19 @@ -From 531643d6b3f73cd23ccd6e8d1229874c306d3057 Mon Sep 17 00:00:00 2001 +From e7e7c7500e07d5d1eaa69550ac6c760e55e857a4 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Fri, 3 Feb 2017 20:51:19 +0100 -Subject: [PATCH 11/31] Fix linking against static freetype2 +Subject: [PATCH 11/33] 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 3f07fba4d5..b000d00801 100644 +index 7e9148500b..27f8257c18 100644 --- a/src/gui/configure.json +++ b/src/gui/configure.json -@@ -107,8 +107,11 @@ - "label": "FreeType", - "test": "unix/freetype", +@@ -156,8 +156,11 @@ + ] + }, "sources": [ - { "type": "pkgConfig", "args": "freetype2" }, - { "type": "freetype", "libs": "-lfreetype" } @@ -26,5 +26,5 @@ index 3f07fba4d5..b000d00801 100644 }, "fontconfig": { -- -2.13.2 +2.14.2 diff --git a/0012-Fix-linking-against-static-harfbuzz.patch b/0012-Fix-linking-against-static-harfbuzz.patch index 8458a11db585..91364f8ce46b 100644 --- a/0012-Fix-linking-against-static-harfbuzz.patch +++ b/0012-Fix-linking-against-static-harfbuzz.patch @@ -1,19 +1,19 @@ -From 3b6fa1aeceb994d9d845f6de533c6c1517e56ab8 Mon Sep 17 00:00:00 2001 +From 38b3a06ebd65bab1765c95537eb8503286e31754 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 14:22:56 +0200 -Subject: [PATCH 12/31] Fix linking against static harfbuzz +Subject: [PATCH 12/33] 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 b000d00801..5ba7fa26ae 100644 +index 27f8257c18..1a87110831 100644 --- a/src/gui/configure.json +++ b/src/gui/configure.json -@@ -133,7 +133,11 @@ - "label": "HarfBuzz", - "test": "unix/harfbuzz", +@@ -221,7 +221,11 @@ + ] + }, "sources": [ - "-lharfbuzz" + { "type": "pkgConfig", "args": "--static --libs harfbuzz", "condition": "!features.shared" }, @@ -25,5 +25,5 @@ index b000d00801..5ba7fa26ae 100644 }, "imf": { -- -2.13.2 +2.14.2 diff --git a/0013-Fix-linking-against-static-pcre.patch b/0013-Fix-linking-against-static-pcre.patch index 44beaa9b2b46..0bdd68d8748b 100644 --- a/0013-Fix-linking-against-static-pcre.patch +++ b/0013-Fix-linking-against-static-pcre.patch @@ -1,7 +1,7 @@ -From d7112cd9c3e2979881cd97b54a75342ec7569a0f Mon Sep 17 00:00:00 2001 +From f5a1650b08d90f854b1b8eb12c0e6b9a5c3f5cc4 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 14:24:01 +0200 -Subject: [PATCH 13/31] Fix linking against static pcre +Subject: [PATCH 13/33] Fix linking against static pcre Change-Id: I3225c6e82dc4d17aef37d4289c16eb7a5ea3c5a1 --- @@ -24,5 +24,5 @@ index 88b696f53a..afe444027e 100644 #include <pcre2.h> -- -2.13.2 +2.14.2 diff --git a/0014-Fix-linking-against-shared-static-MariaDB.patch b/0014-Fix-linking-against-shared-static-MariaDB.patch index d584bc8bf63e..402f1dd8f821 100644 --- a/0014-Fix-linking-against-shared-static-MariaDB.patch +++ b/0014-Fix-linking-against-shared-static-MariaDB.patch @@ -1,7 +1,7 @@ -From b4f40814cb08f20a6af9437627afa5f87596072a Mon Sep 17 00:00:00 2001 +From a1d177d63fb62d1bb77225fd90c5eb2883322a26 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 18:56:55 +0200 -Subject: [PATCH 14/31] Fix linking against shared/static MariaDB +Subject: [PATCH 14/33] Fix linking against shared/static MariaDB Change-Id: I9722c154d845f288a2d4d1ab14a014066b28819b --- @@ -9,12 +9,12 @@ Change-Id: I9722c154d845f288a2d4d1ab14a014066b28819b 1 file changed, 3 insertions(+) diff --git a/src/plugins/sqldrivers/configure.json b/src/plugins/sqldrivers/configure.json -index 5603ceb37b..ba74280e8c 100644 +index 234f880579..4619db4a54 100644 --- a/src/plugins/sqldrivers/configure.json +++ b/src/plugins/sqldrivers/configure.json -@@ -57,6 +57,9 @@ - "label": "MySQL", - "test": "unix/mysql", +@@ -69,6 +69,9 @@ + "main": "mysql_get_client_version();" + }, "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" }, @@ -23,5 +23,5 @@ index 5603ceb37b..ba74280e8c 100644 { "type": "mysqlConfig", "query": "--libs", "cleanlibs": true }, { "type": "mysqlConfig", "query": "--libs_r", "cleanlibs": false }, -- -2.13.2 +2.14.2 diff --git a/0015-Fix-linking-against-shared-static-PostgreSQL.patch b/0015-Fix-linking-against-shared-static-PostgreSQL.patch index d79b96ff74d7..ec7e9178c4e2 100644 --- a/0015-Fix-linking-against-shared-static-PostgreSQL.patch +++ b/0015-Fix-linking-against-shared-static-PostgreSQL.patch @@ -1,19 +1,19 @@ -From b40b9c32be9f991b907493b43c42ba94ee29852c Mon Sep 17 00:00:00 2001 +From 603ca5161d67e72432128a21478bd623d8b973c2 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 18:58:25 +0200 -Subject: [PATCH 15/31] Fix linking against shared/static PostgreSQL +Subject: [PATCH 15/33] Fix linking against shared/static PostgreSQL --- src/plugins/sqldrivers/configure.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/plugins/sqldrivers/configure.json b/src/plugins/sqldrivers/configure.json -index ba74280e8c..78169f46ca 100644 +index 4619db4a54..ef0d45f6cc 100644 --- a/src/plugins/sqldrivers/configure.json +++ b/src/plugins/sqldrivers/configure.json -@@ -73,9 +73,10 @@ - "label": "PostgreSQL", - "test": "unix/psql", +@@ -91,9 +91,10 @@ + ] + }, "sources": [ - { "type": "pkgConfig", "args": "libpq" }, { "type": "psqlConfig" }, @@ -25,5 +25,5 @@ index ba74280e8c..78169f46ca 100644 ] }, -- -2.13.2 +2.14.2 diff --git a/0016-Rename-qtmain-to-qt5main.patch b/0016-Rename-qtmain-to-qt5main.patch index 8db7d578efb7..a2a5d38761f6 100644 --- a/0016-Rename-qtmain-to-qt5main.patch +++ b/0016-Rename-qtmain-to-qt5main.patch @@ -1,7 +1,7 @@ -From c887523c4b788a35d5d90b1de46c3e3acf4ef03c Mon Sep 17 00:00:00 2001 +From eed57ae8b6b9a2a8a6183751f08f16c9921bf32b Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 14:25:40 +0200 -Subject: [PATCH 16/31] Rename qtmain to qt5main +Subject: [PATCH 16/33] Rename qtmain to qt5main Prevents conflict with mingw-w64-qt4 package --- @@ -52,5 +52,5 @@ index 4140ae48de..9ae73db74b 100644 CONFIG += static -- -2.13.2 +2.14.2 diff --git a/0017-Build-dynamic-host-libraries.patch b/0017-Build-dynamic-host-libraries.patch index 4ca34fb5fece..2f2262c1b1b5 100644 --- a/0017-Build-dynamic-host-libraries.patch +++ b/0017-Build-dynamic-host-libraries.patch @@ -1,7 +1,7 @@ -From 0ba4160aef8e9d3d9a20a442e51edf7bf40de0aa Mon Sep 17 00:00:00 2001 +From b5a1c1909c58b62705f1ff46adfac40ed26b0f5d Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 14:27:28 +0200 -Subject: [PATCH 17/31] Build dynamic host libraries +Subject: [PATCH 17/33] Build dynamic host libraries This came initially from Fedora, not sure whether it makes sense to keep it. Regular Arch package @@ -37,5 +37,5 @@ index c3ed27d979..30d2114aa1 100644 -INSTALLS = lib +INSTALLS += lib -- -2.13.2 +2.14.2 diff --git a/0018-Enable-rpath-for-build-tools.patch b/0018-Enable-rpath-for-build-tools.patch index 672422165323..4740f5c0ab64 100644 --- a/0018-Enable-rpath-for-build-tools.patch +++ b/0018-Enable-rpath-for-build-tools.patch @@ -1,7 +1,7 @@ -From e626efd93b2c7d8b8d41ce37b8686511ceb4c066 Mon Sep 17 00:00:00 2001 +From 7b40a97b618dda07f6e9fdaf28db958c0f5b33fc Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 17:59:27 +0200 -Subject: [PATCH 18/31] Enable rpath for build tools +Subject: [PATCH 18/33] Enable rpath for build tools - Required because various tools depend on libQt5Bootstrap.so which resides in folder /usr/${_arch}/lib @@ -13,10 +13,10 @@ Change-Id: I9808062a66406cdec7446a75150b40b2f30038c7 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mkspecs/features/qt_app.prf b/mkspecs/features/qt_app.prf -index cb84ae0da8..8d9471ed0a 100644 +index 883f8ca215..786f2e660c 100644 --- a/mkspecs/features/qt_app.prf +++ b/mkspecs/features/qt_app.prf -@@ -20,6 +20,7 @@ isEmpty(QMAKE_INFO_PLIST): CONFIG -= app_bundle +@@ -24,6 +24,7 @@ isEmpty(QMAKE_INFO_PLIST): CONFIG -= app_bundle QMAKE_LFLAGS += $$QMAKE_LFLAGS_GCSECTIONS host_build: QT -= gui # no host tool will ever use gui @@ -24,7 +24,7 @@ index cb84ae0da8..8d9471ed0a 100644 host_build:force_bootstrap { !build_pass:qtConfig(release_tools): CONFIG += release contains(QT, core(-private)?|xml) { -@@ -30,7 +31,6 @@ host_build:force_bootstrap { +@@ -34,7 +35,6 @@ host_build:force_bootstrap { } else { !build_pass:qtConfig(debug_and_release): CONFIG += release target.path = $$[QT_INSTALL_BINS] @@ -33,5 +33,5 @@ index cb84ae0da8..8d9471ed0a 100644 INSTALLS += target -- -2.13.2 +2.14.2 diff --git a/0019-Use-system-zlib-for-build-tools.patch b/0019-Use-system-zlib-for-build-tools.patch index 441dbdd513d8..834f8cccf203 100644 --- a/0019-Use-system-zlib-for-build-tools.patch +++ b/0019-Use-system-zlib-for-build-tools.patch @@ -1,7 +1,7 @@ -From daf956f7f429c85b1a760e7bca8a2e344878ef9b Mon Sep 17 00:00:00 2001 +From 25849eed06ade33131bb0dfa2bdb3e890b2e9ee7 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 18:04:42 +0200 -Subject: [PATCH 19/31] Use system zlib for build tools +Subject: [PATCH 19/33] Use system zlib for build tools --- src/tools/bootstrap/bootstrap.pro | 2 +- @@ -21,5 +21,5 @@ index 521dd5f0f2..eb8cb4770c 100644 } else { CONFIG += no_core_dep -- -2.13.2 +2.14.2 diff --git a/0020-Disable-determing-default-include-and-lib-dirs-at-qm.patch b/0020-Disable-determing-default-include-and-lib-dirs-at-qm.patch index 448293a1dee1..ff40a8085b48 100644 --- a/0020-Disable-determing-default-include-and-lib-dirs-at-qm.patch +++ b/0020-Disable-determing-default-include-and-lib-dirs-at-qm.patch @@ -1,7 +1,7 @@ -From 8dda97434f6aa975741278347f873f479bf856c0 Mon Sep 17 00:00:00 2001 +From 98a2adad712fb0c23ad2813e1a35a793317461ad Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 18:20:25 +0200 -Subject: [PATCH 20/31] Disable determing default include and lib dirs at qmake +Subject: [PATCH 20/33] Disable determing default include and lib dirs at qmake time when building with mingw-w64 --- @@ -9,10 +9,10 @@ Subject: [PATCH 20/31] Disable determing default include and lib dirs at qmake 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mkspecs/features/toolchain.prf b/mkspecs/features/toolchain.prf -index 34bd8f1d78..9e5f361d16 100644 +index 35175f1744..96afeeca57 100644 --- a/mkspecs/features/toolchain.prf +++ b/mkspecs/features/toolchain.prf -@@ -21,7 +21,7 @@ isEmpty($${target_prefix}.INCDIRS) { +@@ -31,7 +31,7 @@ isEmpty($${target_prefix}.INCDIRS) { # # Get default include and library paths from compiler # @@ -22,5 +22,5 @@ index 34bd8f1d78..9e5f361d16 100644 cmd_prefix = "LC_ALL=C" cmd_suffix = "</dev/null >/dev/null" -- -2.13.2 +2.14.2 diff --git a/0021-Use-.dll.a-as-import-lib-extension.patch b/0021-Use-.dll.a-as-import-lib-extension.patch index f7969fa4026b..b3f9e5dc11f0 100644 --- a/0021-Use-.dll.a-as-import-lib-extension.patch +++ b/0021-Use-.dll.a-as-import-lib-extension.patch @@ -1,7 +1,7 @@ -From 049d164d606149cb8b7052dfa8fd67c55e135fa8 Mon Sep 17 00:00:00 2001 +From 5cb315e62e7c4114d62767c274952c58ebe88b06 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 18:26:18 +0200 -Subject: [PATCH 21/31] Use *.dll.a as import lib extension +Subject: [PATCH 21/33] Use *.dll.a as import lib extension The variables used here are provided by mingw-w64 specific mkspec @@ -64,5 +64,5 @@ index 737f3abc3a..2e6d5d94a9 100644 + project->first("QMAKE_EXTENSION_SHLIB")); project->values("TARGET").first() = project->first("QMAKE_PREFIX_SHLIB") + project->first("TARGET"); -- -2.13.2 +2.14.2 diff --git a/0022-Merge-shared-and-static-library-trees.patch b/0022-Merge-shared-and-static-library-trees.patch index 6904e4e61cc5..c2c02d585df6 100644 --- a/0022-Merge-shared-and-static-library-trees.patch +++ b/0022-Merge-shared-and-static-library-trees.patch @@ -1,22 +1,22 @@ -From aacc349ec8e9241ff95678d9730d71805289256b Mon Sep 17 00:00:00 2001 +From 0401a8dd7051a1d6aca6288fd5a5d0bef006168e Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 18:45:08 +0200 -Subject: [PATCH 22/31] Merge shared and static library trees +Subject: [PATCH 22/33] Merge shared and static library trees Allow installation of shared and static build in the same prefix --- - configure.pri | 7 +++++++ + configure.pri | 9 +++++++++ mkspecs/features/default_post.prf | 11 +++++++++++ mkspecs/features/qt.prf | 15 +++++++++++++++ mkspecs/features/spec_pre.prf | 11 ++++++++--- qmake/generators/makefile.cpp | 9 ++++++--- - 5 files changed, 47 insertions(+), 6 deletions(-) + 5 files changed, 49 insertions(+), 6 deletions(-) diff --git a/configure.pri b/configure.pri -index 76bb27e4ae..7dd19be845 100644 +index 83c0dee141..a05c3d98e6 100644 --- a/configure.pri +++ b/configure.pri -@@ -1212,3 +1212,10 @@ defineTest(createConfigStatus) { +@@ -1212,3 +1212,12 @@ defineTest(createConfigStatus) { QMAKE_POST_CONFIGURE += \ "createConfigStatus()" @@ -26,6 +26,8 @@ index 76bb27e4ae..7dd19be845 100644 + CONFIG -= shared + QT_CONFIG += static jpeg gif + QT_CONFIG -= shared ++ # prevent smart library merge from messing cyclic dependency between freetype2 and harfbuzz ++ CONFIG += no_smart_library_merge +} diff --git a/mkspecs/features/default_post.prf b/mkspecs/features/default_post.prf index 7e027325bd..ad0db62b78 100644 @@ -124,5 +126,5 @@ index c7e075b5bc..d61f7b05e5 100644 t << endl; -- -2.13.2 +2.14.2 diff --git a/0023-Pull-dependencies-of-static-libraries-in-CMake-modul.patch b/0023-Pull-dependencies-of-static-libraries-in-CMake-modul.patch new file mode 100644 index 000000000000..2fd999f636c3 --- /dev/null +++ b/0023-Pull-dependencies-of-static-libraries-in-CMake-modul.patch @@ -0,0 +1,273 @@ +From 6e0b658e5cadf0248954fbbf1b8271d54b9778a2 Mon Sep 17 00:00:00 2001 +From: Martchus <martchus@gmx.net> +Date: Sun, 18 Sep 2016 18:32:00 +0200 +Subject: [PATCH 23/33] 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 +the final application. +--- + .../features/data/cmake/Qt5BasicConfig.cmake.in | 148 ++++++++++++++++----- + .../features/data/cmake/Qt5PluginTarget.cmake.in | 11 +- + qmake/generators/makefile.cpp | 7 + + 3 files changed, 128 insertions(+), 38 deletions(-) + +diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in +index 55c74aad66..85a0ae4307 100644 +--- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in ++++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in +@@ -55,35 +55,52 @@ but not all the files it references. + endmacro() + + !!IF !equals(TEMPLATE, aux) +-macro(_populate_$${CMAKE_MODULE_NAME}_target_properties Configuration LIB_LOCATION IMPLIB_LOCATION) +- set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) ++macro(_populate_$${CMAKE_MODULE_NAME}_target_properties TARGET_CONFIG LIB_LOCATION IMPLIB_LOCATION) ++ set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${TARGET_CONFIG}) + + !!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) + set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\") + !!ELSE + set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\") + !!ENDIF ++ + _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) ++ ++!!IF !isEmpty(CMAKE_STATIC_TYPE) ++ if (_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES) ++ set(_list_sep \";\") ++ endif() ++ set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES ++ \"INTERFACE_LINK_LIBRARIES_${TARGET_CONFIG}\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}${_list_sep}${_Qt5$${CMAKE_MODULE_NAME}_STATIC_${TARGET_CONFIG}_LIB_DEPENDENCIES}\" ++ \"IMPORTED_LOCATION_${TARGET_CONFIG}\" ${imported_location} ++!!IF !isEmpty(CMAKE_LIB_SONAME) ++ \"IMPORTED_SONAME_${TARGET_CONFIG}\" \"$${CMAKE_LIB_SONAME}\" ++!!ENDIF ++ # For backward compatibility with CMake < 2.8.12 ++ \"IMPORTED_LINK_INTERFACE_LIBRARIES_${TARGET_CONFIG}\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}${_list_sep}${_Qt5$${CMAKE_MODULE_NAME}_STATIC_${TARGET_CONFIG}_LIB_DEPENDENCIES}\" ++ ) ++!!ELSE + set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES +- \"INTERFACE_LINK_LIBRARIES\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}\" +- \"IMPORTED_LOCATION_${Configuration}\" ${imported_location} ++ \"INTERFACE_LINK_LIBRARIES_${TARGET_CONFIG}\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}\" ++ \"IMPORTED_LOCATION_${TARGET_CONFIG}\" ${imported_location} + !!IF !isEmpty(CMAKE_LIB_SONAME) +- \"IMPORTED_SONAME_${Configuration}\" \"$${CMAKE_LIB_SONAME}\" ++ \"IMPORTED_SONAME_${TARGET_CONFIG}\" \"$${CMAKE_LIB_SONAME}\" + !!ENDIF + # For backward compatibility with CMake < 2.8.12 +- \"IMPORTED_LINK_INTERFACE_LIBRARIES_${Configuration}\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}\" ++ \"IMPORTED_LINK_INTERFACE_LIBRARIES_${TARGET_CONFIG}\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}\" + ) ++!!ENDIF + + !!IF !isEmpty(CMAKE_WINDOWS_BUILD) + !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) + set(imported_implib \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") + !!ELSE +- set(imported_implib \"IMPORTED_IMPLIB_${Configuration}\" \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") ++ set(imported_implib \"IMPORTED_IMPLIB_${TARGET_CONFIG}\" \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") + !!ENDIF + _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_implib}) + if(NOT \"${IMPLIB_LOCATION}\" STREQUAL \"\") + set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES +- \"IMPORTED_IMPLIB_${Configuration}\" ${imported_implib} ++ \"IMPORTED_IMPLIB_${TARGET_CONFIG}\" ${imported_implib} + ) + endif() + !!ENDIF +@@ -227,13 +244,47 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + !!IF !isEmpty(CMAKE_STATIC_TYPE) + add_library(Qt5::$${CMAKE_MODULE_NAME} STATIC IMPORTED) + set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} PROPERTY IMPORTED_LINK_INTERFACE_LANGUAGES "CXX") ++ macro(_process_prl_file PRL_FILE_LOCATION CONFIGURATION) ++ if (EXISTS \"${PRL_FILE_LOCATION}\") ++ file(STRINGS \"${PRL_FILE_LOCATION}\" prl_strings REGEX \"QMAKE_PRL_LIBS_FOR_CMAKE\") ++ string(REGEX REPLACE \"QMAKE_PRL_LIBS_FOR_CMAKE *= *([^\\n]*)\" \"\\\\1\" static_depends ${prl_strings}) ++ string(REGEX REPLACE \"\\\\$\\\\$\\\\[QT_INSTALL_LIBS\\\\]\" \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/lib\" static_depends \"${static_depends}\") ++ string(REPLACE \"-framework;\" \"-framework \" static_depends \"${static_depends}\") ++ if (_Qt5$${CMAKE_MODULE_NAME}_STATIC_${CONFIGURATION}_LIB_DEPENDENCIES) ++ set(_list_sep \";\") ++ endif() ++ set(_Qt5$${CMAKE_MODULE_NAME}_STATIC_${CONFIGURATION}_LIB_DEPENDENCIES \"${_Qt5$${CMAKE_MODULE_NAME}_STATIC_${CONFIGURATION}_LIB_DEPENDENCIES}${_list_sep}${static_depends}\") ++ endif() ++ endmacro() ++ ++ macro(_populate_plugin_target_dependencies_from_prl_file PLUGIN_TARGET_NAME PRL_FILE_LOCATION CONFIGURATION LIB_DIRECTORY LIB_LOCATION) ++ file(STRINGS "${PRL_FILE_LOCATION}" prl_strings REGEX "QMAKE_PRL_LIBS_FOR_CMAKE") ++ string(REGEX REPLACE \"QMAKE_PRL_LIBS_FOR_CMAKE *= *([^\n]*)\" \"\\\\1\" static_depends ${prl_strings}) ++ string(REGEX REPLACE \"\\\\$\\\\$\\\\[QT_INSTALL_LIBS\\\\]\" \"${_qt5Svg_install_prefix}/lib\" static_depends \"${static_depends}\") ++ set_property(TARGET ${PLUGIN_TARGET_NAME} PROPERTY ++ INTERFACE_LINK_LIBRARIES ${static_depends} ++ ) ++ endmacro() ++ ++!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) ++ _process_prl_file(\"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_PRL_FILE_LOCATION_DEBUG}\" DEBUG) + !!ELSE ++ _process_prl_file(\"$${CMAKE_LIB_DIR}$${CMAKE_PRL_FILE_LOCATION_DEBUG}\" DEBUG) ++!!ENDIF ++!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) ++ _process_prl_file(\"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_PRL_FILE_LOCATION_RELEASE}\" RELEASE) ++!!ELSE ++ _process_prl_file(\"$${CMAKE_LIB_DIR}$${CMAKE_PRL_FILE_LOCATION_RELEASE}\" RELEASE) ++!!ENDIF ++ ++!!ELSE // !isEmpty(CMAKE_STATIC_TYPE) + !!IF equals(TEMPLATE, aux) + add_library(Qt5::$${CMAKE_MODULE_NAME} INTERFACE IMPORTED) + !!ELSE + add_library(Qt5::$${CMAKE_MODULE_NAME} SHARED IMPORTED) + !!ENDIF +-!!ENDIF ++!!ENDIF // !isEmpty(CMAKE_STATIC_TYPE) ++ + !!IF !equals(TEMPLATE, aux) + !!IF !isEmpty(CMAKE_BUILD_IS_FRAMEWORK) + set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} PROPERTY FRAMEWORK 1) +@@ -245,6 +296,56 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} PROPERTY + INTERFACE_COMPILE_DEFINITIONS $${MODULE_DEFINES}) + ++ # Find plugin targets ++ file(GLOB pluginTargetsMaybe \"${CMAKE_CURRENT_LIST_DIR}/*Qt5$${CMAKE_MODULE_NAME}_*.cmake\") ++ unset(pluginTargets) ++ if(pluginTargetsMaybe) ++ foreach(pluginTarget ${pluginTargetsMaybe}) ++ file(STRINGS ${pluginTarget} matched REGEX Qt5$${CMAKE_MODULE_NAME}_PLUGINS) ++ if(matched) ++ list(APPEND pluginTargets ${pluginTarget}) ++ endif() ++ endforeach() ++ endif() ++ ++ macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties TARGET_NAME PLUGIN_TARGET_NAME PLUGIN_NAME CONFIG PLUGIN_LOCATION) ++ set_property(TARGET ${PLUGIN_TARGET_NAME} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${CONFIG}) ++ ++!!IF isEmpty(CMAKE_PLUGIN_DIR_IS_ABSOLUTE) ++ set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") ++!!ELSE ++ set(imported_location \"$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") ++!!ENDIF ++ _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) ++ set_target_properties(${PLUGIN_TARGET_NAME} PROPERTIES ++ \"IMPORTED_LOCATION_${CONFIG}\" ${imported_location} ++ ) ++!!IF !isEmpty(CMAKE_STATIC_TYPE) ++ set_property(TARGET ${TARGET_NAME} APPEND PROPERTY STATIC_PLUGINS ${PLUGIN_NAME}) ++ get_filename_component(_PLUGIN_DIR ${PLUGIN_LOCATION} PATH) ++ get_filename_component(_PLUGIN_DIR_NAME ${_PLUGIN_DIR} NAME) ++ get_filename_component(_PLUGIN_NAME ${PLUGIN_LOCATION} NAME) ++ string(REGEX REPLACE \"^lib(.*)\\\\.a\" \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/lib/qt/plugins/${_PLUGIN_DIR_NAME}/\\\\1.static.prl\" PLUGIN_PRL_FILE_LOCATION ${_PLUGIN_NAME}) ++ if(NOT EXISTS ${PLUGIN_PRL_FILE_LOCATION}) ++ string(REGEX REPLACE \"^lib(.*)\\\\.a\" \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/lib/qt/plugins/${_PLUGIN_DIR_NAME}/\\\\1.prl\" PLUGIN_PRL_FILE_LOCATION ${_PLUGIN_NAME}) ++ endif() ++ if(NOT EXISTS ${PLUGIN_PRL_FILE_LOCATION}) ++ string(REGEX REPLACE \"^lib(.*)\\\\.a\" \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/lib/qt/plugins/${_PLUGIN_DIR_NAME}/lib\\\\1.prl\" PLUGIN_PRL_FILE_LOCATION ${_PLUGIN_NAME}) ++ endif() ++ if(NOT EXISTS ${PLUGIN_PRL_FILE_LOCATION}) ++ message(FATAL_ERROR "The prl file containing dependencies of static plugin ${PLUGIN_TARGET_NAME} of ${TARGET_NAME} could not be found.") ++ endif() ++ _populate_plugin_target_dependencies_from_prl_file(${PLUGIN_TARGET_NAME} ${PLUGIN_PRL_FILE_LOCATION} ${CONFIG} \"lib/qt/plugins\" ${PLUGIN_LOCATION}) ++!!ENDIF ++ ++ endmacro() ++ ++ if(pluginTargets) ++ foreach(pluginTarget ${pluginTargets}) ++ include(${pluginTarget}) ++ endforeach() ++ endif() ++ + 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}) +@@ -336,9 +437,11 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + !!ELSE + \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) + !!ENDIF +- _populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) +-!!ENDIF // CMAKE_STATIC_WINDOWS_BUILD ++ _populate_$${CMAKE_MODULE_NAME}_target_properties(Qt5::$${CMAKE_MODULE_NAME} RELEASE \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) + endif() ++!!ENDIF // CMAKE_STATIC_TYPE ++ ++ + !!ENDIF // CMAKE_RELEASE_TYPE + !!ENDIF // CMAKE_FIND_OTHER_LIBRARY_BUILD + +@@ -349,29 +452,6 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + ) + !!ENDIF // TEMPLATE != aux + +- file(GLOB pluginTargets \"${CMAKE_CURRENT_LIST_DIR}/Qt5$${CMAKE_MODULE_NAME}_*Plugin.cmake\") +- +- macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties Plugin Configuration PLUGIN_LOCATION) +- set_property(TARGET Qt5::${Plugin} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) +- +-!!IF isEmpty(CMAKE_PLUGIN_DIR_IS_ABSOLUTE) +- set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") +-!!ELSE +- set(imported_location \"$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") +-!!ENDIF +- _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) +- set_target_properties(Qt5::${Plugin} PROPERTIES +- \"IMPORTED_LOCATION_${Configuration}\" ${imported_location} +- ) +- endmacro() +- +- if (pluginTargets) +- foreach(pluginTarget ${pluginTargets}) +- include(${pluginTarget}) +- endforeach() +- endif() +- +- + !!IF !isEmpty(CMAKE_MODULE_EXTRAS) + 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 +--- a/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in ++++ b/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in +@@ -1,11 +1,14 @@ +- +-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_RELEASE_TYPE) +-_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME RELEASE \"$${CMAKE_PLUGIN_LOCATION_RELEASE}\") ++ _populate_$${CMAKE_MODULE_NAME}_plugin_properties(Qt5::$$CMAKE_MODULE_NAME Qt5::$$CMAKE_PLUGIN_NAME $$CMAKE_PLUGIN_NAME RELEASE \"$${CMAKE_PLUGIN_LOCATION_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(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) ++ ++endif() +diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp +index d61f7b05e5..2dd26bf4dd 100644 +--- a/qmake/generators/makefile.cpp ++++ b/qmake/generators/makefile.cpp +@@ -998,6 +998,13 @@ MakefileGenerator::writePrlFile(QTextStream &t) + for (ProStringList::Iterator it = libs.begin(); it != libs.end(); ++it) + t << qv(project->values((*it).toKey())); + t << endl; ++ t << "QMAKE_PRL_LIBS_FOR_CMAKE = "; ++ QString sep; ++ for (ProStringList::Iterator it = libs.begin(); it != libs.end(); ++it) { ++ t << sep << project->values((*it).toKey()).join(';').replace('\\', "\\\\"); ++ sep = ';'; ++ } ++ t << endl; + } + } + +-- +2.14.2 + diff --git a/0023-Allow-usage-of-static-version-with-CMake.patch b/0024-Allow-usage-of-static-version-with-CMake.patch index b60a2d2d0528..0e9f97715b1c 100644 --- a/0023-Allow-usage-of-static-version-with-CMake.patch +++ b/0024-Allow-usage-of-static-version-with-CMake.patch @@ -1,28 +1,24 @@ -From c3a38331998e8007b7c9823306593f07abb72ca4 Mon Sep 17 00:00:00 2001 +From eec4b8a76d8c5882a5fbd4e6aa85dea696049c23 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> -Date: Sun, 18 Sep 2016 18:32:00 +0200 -Subject: [PATCH 23/31] Allow usage of static version with CMake +Date: Sat, 5 Aug 2017 21:14:26 +0200 +Subject: [PATCH 24/33] Allow usage of static version with CMake -- Fix plugin detection and various details -- Allow selecting between dynamic and static Qt versions - installed in the same prefix - - Use eg. find_package(Qt5Core) for dynamic version - - and eg. find_package(StaticQt5Core) for static version - - Static targets are prefixed, eg. StaticQt5::Core - - Set USE_STATIC_QT_BY_DEFAULT to use static version - via regular find_package(Qt5Core) - -Change-Id: Ie635de801de7195dddf13b4f9c721c46aecbc8e2 +Allow selecting between dynamic and static Qt versions +installed in the same prefix + - Use eg. find_package(Qt5Core) for dynamic version + - and eg. find_package(StaticQt5Core) for static version + - Static targets are prefixed, eg. StaticQt5::Core + - Set USE_STATIC_QT_BY_DEFAULT to use static version + via regular find_package(Qt5Core) --- - mkspecs/features/create_cmake.prf | 103 ++++-- - .../features/data/cmake/Qt5BasicConfig.cmake.in | 401 +++++++++++++++------ - .../features/data/cmake/Qt5PluginTarget.cmake.in | 21 +- + mkspecs/features/create_cmake.prf | 103 ++++--- + .../features/data/cmake/Qt5BasicConfig.cmake.in | 298 ++++++++++++++------- + .../features/data/cmake/Qt5PluginTarget.cmake.in | 18 +- .../data/cmake/Qt5StaticOnlyRedirection.cmake.in | 11 + - qmake/generators/makefile.cpp | 7 + src/corelib/Qt5CoreConfigExtras.cmake.in | 26 +- src/gui/Qt5GuiConfigExtras.cmake.in | 8 +- src/testlib/Qt5TestConfigExtras.cmake.in | 2 +- - 8 files changed, 405 insertions(+), 174 deletions(-) + 7 files changed, 314 insertions(+), 152 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 @@ -248,15 +244,16 @@ index 15fc070008..13bd362092 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 17da8b979e..ec5e873aa1 100644 +index 85a0ae4307..42053ac0c0 100644 --- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in +++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in -@@ -9,6 +9,32 @@ if (CMAKE_VERSION VERSION_LESS 3.0.0) +@@ -9,6 +9,33 @@ if (CMAKE_VERSION VERSION_LESS 3.0.0) endif() !!ENDIF +!!IF isEmpty(CMAKE_STATIC_TYPE) +# "redirect" to static package overriding variant prefix so it does not contain "Static" anymore ++option(USE_STATIC_QT_BY_DEFAULT \"specifies whether to use static Qt by default (rather than via Static-prefix)\" OFF) +if(USE_STATIC_QT_BY_DEFAULT) + set(ORIGINAL_OVERRIDE_QT_VARIANT_PREFIX "${OVERRIDE_QT_VARIANT_PREFIX}") + if(OVERRIDE_QT_VARIANT_PREFIX) @@ -284,7 +281,7 @@ index 17da8b979e..ec5e873aa1 100644 !!IF !isEmpty(CMAKE_USR_MOVE_WORKAROUND) !!IF !isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\") -@@ -35,15 +61,19 @@ set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\") +@@ -35,15 +62,19 @@ set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\") !!IF !equals(TEMPLATE, aux) # For backwards compatibility only. Use Qt5$${CMAKE_MODULE_NAME}_VERSION instead. @@ -310,7 +307,7 @@ index 17da8b979e..ec5e873aa1 100644 but this file does not exist. Possible reasons include: * The file was deleted, renamed, or moved to another location. * An install or uninstall procedure did not complete successfully. -@@ -54,44 +84,91 @@ but not all the files it references. +@@ -54,23 +85,60 @@ but not all the files it references. endif() endmacro() @@ -324,8 +321,8 @@ index 17da8b979e..ec5e873aa1 100644 +!!ENDIF + !!IF !equals(TEMPLATE, aux) --macro(_populate_$${CMAKE_MODULE_NAME}_target_properties Configuration LIB_LOCATION IMPLIB_LOCATION) -- set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) +-macro(_populate_$${CMAKE_MODULE_NAME}_target_properties TARGET_CONFIG LIB_LOCATION IMPLIB_LOCATION) +- set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${TARGET_CONFIG}) +!!IF !isEmpty(CMAKE_STATIC_TYPE) +macro(_populate_$${CMAKE_MODULE_NAME}_target_properties_static TARGET_NAME TARGET_CONFIG LIB_LOCATION IMPLIB_LOCATION) +!!ELSE @@ -345,7 +342,7 @@ index 17da8b979e..ec5e873aa1 100644 set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\") +!!ENDIF + -+!!ELSE ++!!ELSE // isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) + +!!IF !isEmpty(CMAKE_WINDOWS_BUILD) +!!IF !isEmpty(CMAKE_STATIC_TYPE) @@ -356,39 +353,36 @@ index 17da8b979e..ec5e873aa1 100644 !!ELSE set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\") !!ENDIF -+ -+!!ENDIF + ++!!ENDIF // isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) + +!!IF !isEmpty(CMAKE_STATIC_TYPE) + _qt5_$${CMAKE_MODULE_NAME}_check_file_exists_static(${imported_location}) +!!ELSE _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) -- set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES -- \"INTERFACE_LINK_LIBRARIES\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}\" -- \"IMPORTED_LOCATION_${Configuration}\" ${imported_location} +!!ENDIF -+ -+ if (_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES) -+ set(_list_sep \";\") -+ endif() + + !!IF !isEmpty(CMAKE_STATIC_TYPE) + if (_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES) + set(_list_sep \";\") + endif() +- set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES + set_target_properties(${TARGET_NAME} PROPERTIES -+ \"INTERFACE_LINK_LIBRARIES_${TARGET_CONFIG}\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}${_list_sep}${_Qt5$${CMAKE_MODULE_NAME}_STATIC_${TARGET_CONFIG}_LIB_DEPENDENCIES}\" -+ \"IMPORTED_LOCATION_${TARGET_CONFIG}\" ${imported_location} + \"INTERFACE_LINK_LIBRARIES_${TARGET_CONFIG}\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}${_list_sep}${_Qt5$${CMAKE_MODULE_NAME}_STATIC_${TARGET_CONFIG}_LIB_DEPENDENCIES}\" + \"IMPORTED_LOCATION_${TARGET_CONFIG}\" ${imported_location} !!IF !isEmpty(CMAKE_LIB_SONAME) -- \"IMPORTED_SONAME_${Configuration}\" \"$${CMAKE_LIB_SONAME}\" -+ \"IMPORTED_SONAME_${TARGET_CONFIG}\" \"$${CMAKE_LIB_SONAME}\" - !!ENDIF - # For backward compatibility with CMake < 2.8.12 -- \"IMPORTED_LINK_INTERFACE_LIBRARIES_${Configuration}\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}\" -+ \"IMPORTED_LINK_INTERFACE_LIBRARIES_${TARGET_CONFIG}\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}${_list_sep}${_Qt5$${CMAKE_MODULE_NAME}_STATIC_${TARGET_CONFIG}_LIB_DEPENDENCIES}\" +@@ -80,7 +148,7 @@ macro(_populate_$${CMAKE_MODULE_NAME}_target_properties TARGET_CONFIG LIB_LOCATI + \"IMPORTED_LINK_INTERFACE_LIBRARIES_${TARGET_CONFIG}\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}${_list_sep}${_Qt5$${CMAKE_MODULE_NAME}_STATIC_${TARGET_CONFIG}_LIB_DEPENDENCIES}\" ) - - !!IF !isEmpty(CMAKE_WINDOWS_BUILD) - !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) - set(imported_implib \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") !!ELSE -- set(imported_implib \"IMPORTED_IMPLIB_${Configuration}\" \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") -+ set(imported_implib \"IMPORTED_IMPLIB_${TARGET_CONFIG}\" \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") +- set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES ++ set_target_properties(${TARGET_NAME} PROPERTIES + \"INTERFACE_LINK_LIBRARIES_${TARGET_CONFIG}\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}\" + \"IMPORTED_LOCATION_${TARGET_CONFIG}\" ${imported_location} + !!IF !isEmpty(CMAKE_LIB_SONAME) +@@ -97,9 +165,13 @@ macro(_populate_$${CMAKE_MODULE_NAME}_target_properties TARGET_CONFIG LIB_LOCATI + !!ELSE + set(imported_implib \"IMPORTED_IMPLIB_${TARGET_CONFIG}\" \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\") !!ENDIF +!!IF !isEmpty(CMAKE_STATIC_TYPE) + _qt5_$${CMAKE_MODULE_NAME}_check_file_exists_static(${imported_implib}) @@ -397,12 +391,11 @@ index 17da8b979e..ec5e873aa1 100644 +!!ENDIF if(NOT \"${IMPLIB_LOCATION}\" STREQUAL \"\") - set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES -- \"IMPORTED_IMPLIB_${Configuration}\" ${imported_implib} + set_target_properties(${QT_VARIANT_PREFIX}Qt5::$${CMAKE_MODULE_NAME} PROPERTIES -+ \"IMPORTED_IMPLIB_${TARGET_CONFIG}\" ${imported_implib} + \"IMPORTED_IMPLIB_${TARGET_CONFIG}\" ${imported_implib} ) endif() - !!ENDIF +@@ -107,8 +179,9 @@ macro(_populate_$${CMAKE_MODULE_NAME}_target_properties TARGET_CONFIG LIB_LOCATI endmacro() !!ENDIF @@ -413,7 +406,7 @@ index 17da8b979e..ec5e873aa1 100644 !!IF !no_module_headers !!IF !isEmpty(CMAKE_BUILD_IS_FRAMEWORK) set(_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS -@@ -99,46 +176,50 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) +@@ -116,46 +189,50 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Headers\" ) !!IF isEmpty(CMAKE_NO_PRIVATE_INCLUDES) @@ -481,7 +474,7 @@ index 17da8b979e..ec5e873aa1 100644 endforeach() !!IF isEmpty(CMAKE_BUILD_IS_FRAMEWORK) -@@ -147,16 +228,20 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) +@@ -164,16 +241,20 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) list(FIND Qt5$${CMAKE_MODULE_NAME}_FIND_COMPONENTS Private _check_private) if (NOT _check_private STREQUAL -1) foreach(_dir ${Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS}) @@ -499,13 +492,13 @@ index 17da8b979e..ec5e873aa1 100644 + set(${QT_VARIANT_PREFIX}Qt5$${CMAKE_MODULE_NAME}_INCLUDE_DIRS ${_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS}) - set(Qt5$${CMAKE_MODULE_NAME}_DEFINITIONS -D$${MODULE_DEFINE}) -- set(Qt5$${CMAKE_MODULE_NAME}_COMPILE_DEFINITIONS $${MODULE_DEFINE}) +- set(Qt5$${CMAKE_MODULE_NAME}_COMPILE_DEFINITIONS $${MODULE_DEFINES}) + set(${QT_VARIANT_PREFIX}Qt5$${CMAKE_MODULE_NAME}_DEFINITIONS -D$${MODULE_DEFINE}) -+ set(${QT_VARIANT_PREFIX}Qt5$${CMAKE_MODULE_NAME}_COMPILE_DEFINITIONS $${MODULE_DEFINE}) ++ set(${QT_VARIANT_PREFIX}Qt5$${CMAKE_MODULE_NAME}_COMPILE_DEFINITIONS $${MODULE_DEFINES}) !!ENDIF // TEMPLATE != aux set(_Qt5$${CMAKE_MODULE_NAME}_MODULE_DEPENDENCIES \"$${CMAKE_MODULE_DEPS}\") -@@ -166,10 +251,10 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) +@@ -183,10 +264,10 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) endif() !!ENDIF @@ -518,7 +511,7 @@ index 17da8b979e..ec5e873aa1 100644 set(_Qt5$${CMAKE_MODULE_NAME}_FIND_DEPENDENCIES_REQUIRED REQUIRED) endif() set(_Qt5$${CMAKE_MODULE_NAME}_FIND_DEPENDENCIES_QUIET) -@@ -177,17 +262,17 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) +@@ -194,17 +275,17 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) set(_Qt5$${CMAKE_MODULE_NAME}_DEPENDENCIES_FIND_QUIET QUIET) endif() set(_Qt5$${CMAKE_MODULE_NAME}_FIND_VERSION_EXACT) @@ -540,7 +533,7 @@ index 17da8b979e..ec5e873aa1 100644 $$VERSION ${_Qt5$${CMAKE_MODULE_NAME}_FIND_VERSION_EXACT} ${_Qt5$${CMAKE_MODULE_NAME}_DEPENDENCIES_FIND_QUIET} ${_Qt5$${CMAKE_MODULE_NAME}_FIND_DEPENDENCIES_REQUIRED} -@@ -195,28 +280,32 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) +@@ -212,28 +293,32 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) ) endif() @@ -585,7 +578,7 @@ index 17da8b979e..ec5e873aa1 100644 !!IF !isEmpty(CMAKE_INTERFACE_QT5_MODULE_DEPS) if (NOT CMAKE_VERSION VERSION_LESS 3.0.0) -@@ -225,28 +314,124 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) +@@ -242,8 +327,9 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) !!ENDIF !!IF !isEmpty(CMAKE_STATIC_TYPE) @@ -594,53 +587,37 @@ index 17da8b979e..ec5e873aa1 100644 + add_library(${QT_VARIANT_PREFIX}Qt5::$${CMAKE_MODULE_NAME} STATIC IMPORTED) + set_property(TARGET ${QT_VARIANT_PREFIX}Qt5::$${CMAKE_MODULE_NAME} PROPERTY IMPORTED_LINK_INTERFACE_LANGUAGES "CXX") + -+ macro(_process_prl_file PRL_FILE_LOCATION CONFIGURATION) -+ if (EXISTS \"${PRL_FILE_LOCATION}\") -+ file(STRINGS \"${PRL_FILE_LOCATION}\" prl_strings REGEX \"QMAKE_PRL_LIBS_FOR_CMAKE\") -+ string(REGEX REPLACE \"QMAKE_PRL_LIBS_FOR_CMAKE *= *([^\\n]*)\" \"\\\\1\" static_depends ${prl_strings}) -+ string(REGEX REPLACE \"\\\\$\\\\$\\\\[QT_INSTALL_LIBS\\\\]\" \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/lib\" static_depends \"${static_depends}\") -+ if (_Qt5$${CMAKE_MODULE_NAME}_STATIC_${CONFIGURATION}_LIB_DEPENDENCIES) -+ set(_list_sep \";\") -+ endif() -+ set(_Qt5$${CMAKE_MODULE_NAME}_STATIC_${CONFIGURATION}_LIB_DEPENDENCIES \"${_Qt5$${CMAKE_MODULE_NAME}_STATIC_${CONFIGURATION}_LIB_DEPENDENCIES}${_list_sep}${static_depends}\") -+ endif() -+ endmacro() -+ -+ macro(_process_plugin_prl_file PRL_FILE_LOCATION CONFIGURATION LIB_DIRECTORY LIB_LOCATION) -+ # First add the (static) plugin itself ... -+ if (_Qt5$${CMAKE_MODULE_NAME}_STATIC_${CONFIGURATION}_LIB_DEPENDENCIES) -+ set(_list_sep \";\") -+ endif() -+ set(_Qt5$${CMAKE_MODULE_NAME}_STATIC_${CONFIGURATION}_LIB_DEPENDENCIES \"${_Qt5$${CMAKE_MODULE_NAME}_STATIC_${CONFIGURATION}_LIB_DEPENDENCIES}${_list_sep}${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/${LIB_DIRECTORY}/${LIB_LOCATION}\") -+ # .. then its dependencies. -+ _process_prl_file(${PRL_FILE_LOCATION} ${CONFIGURATION}) -+ endmacro() -+ -+!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) + macro(_process_prl_file PRL_FILE_LOCATION CONFIGURATION) + if (EXISTS \"${PRL_FILE_LOCATION}\") + file(STRINGS \"${PRL_FILE_LOCATION}\" prl_strings REGEX \"QMAKE_PRL_LIBS_FOR_CMAKE\") +@@ -267,34 +353,45 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + endmacro() + + !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +- _process_prl_file(\"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_PRL_FILE_LOCATION_DEBUG}\" DEBUG) + _process_prl_file(\"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_PRL_FILE_LOCATION_DEBUG_STATIC}\" DEBUG) !!ELSE +- _process_prl_file(\"$${CMAKE_LIB_DIR}$${CMAKE_PRL_FILE_LOCATION_DEBUG}\" DEBUG) + _process_prl_file(\"$${CMAKE_LIB_DIR}$${CMAKE_PRL_FILE_LOCATION_DEBUG_STATIC}\" DEBUG) -+!!ENDIF -+!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) + !!ENDIF + !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE) +- _process_prl_file(\"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_PRL_FILE_LOCATION_RELEASE}\" RELEASE) + _process_prl_file(\"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_PRL_FILE_LOCATION_RELEASE_STATIC}\" RELEASE) -+!!ELSE + !!ELSE +- _process_prl_file(\"$${CMAKE_LIB_DIR}$${CMAKE_PRL_FILE_LOCATION_RELEASE}\" RELEASE) + _process_prl_file(\"$${CMAKE_LIB_DIR}$${CMAKE_PRL_FILE_LOCATION_RELEASE_STATIC}\" RELEASE) -+!!ENDIF -+ -+!!ELSE // !isEmpty(CMAKE_STATIC_TYPE) + !!ENDIF + + !!ELSE // !isEmpty(CMAKE_STATIC_TYPE) !!IF equals(TEMPLATE, aux) - add_library(Qt5::$${CMAKE_MODULE_NAME} INTERFACE IMPORTED) +- add_library(Qt5::$${CMAKE_MODULE_NAME} INTERFACE IMPORTED) ++ add_library(${QT_VARIANT_PREFIX}Qt5::$${CMAKE_MODULE_NAME} INTERFACE IMPORTED) !!ELSE - add_library(Qt5::$${CMAKE_MODULE_NAME} SHARED IMPORTED) - !!ENDIF +- add_library(Qt5::$${CMAKE_MODULE_NAME} SHARED IMPORTED) ++ add_library(${QT_VARIANT_PREFIX}Qt5::$${CMAKE_MODULE_NAME} SHARED IMPORTED) !!ENDIF -+ -+!!IF !equals(TEMPLATE, aux) -+!!IF !isEmpty(CMAKE_BUILD_IS_FRAMEWORK) -+ set_property(TARGET ${QT_VARIANT_PREFIX}Qt5::$${CMAKE_MODULE_NAME} PROPERTY FRAMEWORK 1) -+!!ENDIF -+!!ENDIF // TEMPLATE != aux -+ + !!ENDIF // !isEmpty(CMAKE_STATIC_TYPE) + !!IF !equals(TEMPLATE, aux) !!IF !isEmpty(CMAKE_BUILD_IS_FRAMEWORK) - set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} PROPERTY FRAMEWORK 1) @@ -649,67 +626,52 @@ index 17da8b979e..ec5e873aa1 100644 !!ENDIF // TEMPLATE != aux - set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} PROPERTY ++!!IF !equals(TEMPLATE, aux) ++!!IF !isEmpty(CMAKE_BUILD_IS_FRAMEWORK) ++ set_property(TARGET ${QT_VARIANT_PREFIX}Qt5::$${CMAKE_MODULE_NAME} PROPERTY FRAMEWORK 1) ++!!ENDIF ++!!ENDIF // TEMPLATE != aux ++ + set_property(TARGET ${QT_VARIANT_PREFIX}Qt5::$${CMAKE_MODULE_NAME} PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS}) - set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} PROPERTY -- INTERFACE_COMPILE_DEFINITIONS $${MODULE_DEFINE}) -+ set(interface_compile_definitions $${MODULE_DEFINE}) +- INTERFACE_COMPILE_DEFINITIONS $${MODULE_DEFINES}) +!!IF !isEmpty(CMAKE_STATIC_TYPE) + set_property(TARGET ${QT_VARIANT_PREFIX}Qt5::$${CMAKE_MODULE_NAME} PROPERTY -+ INTERFACE_COMPILE_DEFINITIONS $${CMAKE_INTERFACE_COMPILE_DEFINITIONS_STATIC} $${MODULE_DEFINE}) -+ file(GLOB pluginTargetsMaybe \"${CMAKE_CURRENT_LIST_DIR}/*Qt5$${CMAKE_MODULE_NAME}_*.cmake\") ++ INTERFACE_COMPILE_DEFINITIONS $${CMAKE_INTERFACE_COMPILE_DEFINITIONS_STATIC} $${MODULE_DEFINES}) +!!ELSE + set_property(TARGET ${QT_VARIANT_PREFIX}Qt5::$${CMAKE_MODULE_NAME} PROPERTY -+ INTERFACE_COMPILE_DEFINITIONS $${MODULE_DEFINE}) -+ file(GLOB pluginTargetsMaybe \"${CMAKE_CURRENT_LIST_DIR}/*Qt5$${CMAKE_MODULE_NAME}_*.cmake\") ++ INTERFACE_COMPILE_DEFINITIONS $${MODULE_DEFINES}) +!!ENDIF -+ -+ unset(pluginTargets) -+ if(pluginTargetsMaybe) -+ foreach(pluginTarget ${pluginTargetsMaybe}) -+ file(STRINGS ${pluginTarget} matched REGEX Qt5$${CMAKE_MODULE_NAME}_PLUGINS) -+ if(matched) -+ list(APPEND pluginTargets ${pluginTarget}) -+ endif() -+ endforeach() -+ endif() -+ + + # Find plugin targets + file(GLOB pluginTargetsMaybe \"${CMAKE_CURRENT_LIST_DIR}/*Qt5$${CMAKE_MODULE_NAME}_*.cmake\") +@@ -308,7 +405,11 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + endforeach() + endif() + +!!IF !isEmpty(CMAKE_STATIC_TYPE) + macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties_static TARGET_NAME PLUGIN_TARGET_NAME PLUGIN_NAME CONFIG PLUGIN_LOCATION) +!!ELSE -+ macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties TARGET_NAME PLUGIN_TARGET_NAME PLUGIN_NAME CONFIG PLUGIN_LOCATION) -+!!ENDIF -+ set_property(TARGET ${PLUGIN_TARGET_NAME} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${CONFIG}) -+ -+!!IF isEmpty(CMAKE_PLUGIN_DIR_IS_ABSOLUTE) -+ set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") -+!!ELSE -+ set(imported_location \"$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") + macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties TARGET_NAME PLUGIN_TARGET_NAME PLUGIN_NAME CONFIG PLUGIN_LOCATION) +!!ENDIF + set_property(TARGET ${PLUGIN_TARGET_NAME} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${CONFIG}) + + !!IF isEmpty(CMAKE_PLUGIN_DIR_IS_ABSOLUTE) +@@ -316,7 +417,11 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + !!ELSE + set(imported_location \"$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") + !!ENDIF +!!IF !isEmpty(CMAKE_STATIC_TYPE) + _qt5_$${CMAKE_MODULE_NAME}_check_file_exists_static(${imported_location}) +!!ELSE -+ _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) -+!!ENDIF -+ set_target_properties(${PLUGIN_TARGET_NAME} PROPERTIES -+ \"IMPORTED_LOCATION_${CONFIG}\" ${imported_location} -+ ) -+!!IF !isEmpty(CMAKE_STATIC_TYPE) -+ set_property(TARGET ${TARGET_NAME} APPEND PROPERTY STATIC_PLUGINS ${PLUGIN_NAME}) -+ get_filename_component(_PLUGIN_DIR ${PLUGIN_LOCATION} PATH) -+ get_filename_component(_PLUGIN_DIR_NAME ${_PLUGIN_DIR} NAME) -+ get_filename_component(_PLUGIN_NAME ${PLUGIN_LOCATION} NAME) -+ string(REGEX REPLACE \"^lib(.*)\\\\.a\" \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/lib/qt/plugins/${_PLUGIN_DIR_NAME}/\\\\1.static.prl\" PLUGIN_PRL_FILE_LOCATION ${_PLUGIN_NAME}) -+ _process_plugin_prl_file(${PLUGIN_PRL_FILE_LOCATION} ${CONFIG} \"lib/qt/plugins\" ${PLUGIN_LOCATION}) + _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) +!!ENDIF -+ -+ endmacro() -+ -+ if(pluginTargets) -+ foreach(pluginTarget ${pluginTargets}) -+ include(${pluginTarget}) -+ endforeach() -+ endif() + set_target_properties(${PLUGIN_TARGET_NAME} PROPERTIES + \"IMPORTED_LOCATION_${CONFIG}\" ${imported_location} + ) +@@ -347,7 +452,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + endif() set(_Qt5$${CMAKE_MODULE_NAME}_PRIVATE_DIRS_EXIST TRUE) - foreach (_Qt5$${CMAKE_MODULE_NAME}_PRIVATE_DIR ${Qt5$${CMAKE_MODULE_NAME}_OWN_PRIVATE_INCLUDE_DIRS}) @@ -717,7 +679,7 @@ index 17da8b979e..ec5e873aa1 100644 if (NOT EXISTS ${_Qt5$${CMAKE_MODULE_NAME}_PRIVATE_DIR}) set(_Qt5$${CMAKE_MODULE_NAME}_PRIVATE_DIRS_EXIST FALSE) endif() -@@ -254,9 +439,9 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) +@@ -355,9 +460,9 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) if (_Qt5$${CMAKE_MODULE_NAME}_PRIVATE_DIRS_EXIST AND NOT CMAKE_VERSION VERSION_LESS 3.0.0 ) @@ -730,7 +692,7 @@ index 17da8b979e..ec5e873aa1 100644 ) set(_Qt5$${CMAKE_MODULE_NAME}_PRIVATEDEPS) foreach(dep ${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}) -@@ -264,66 +449,68 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) +@@ -365,66 +470,68 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) list(APPEND _Qt5$${CMAKE_MODULE_NAME}_PRIVATEDEPS ${dep}Private) endif() endforeach() @@ -821,47 +783,25 @@ index 17da8b979e..ec5e873aa1 100644 if (EXISTS !!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE) \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" -@@ -336,9 +523,11 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) +@@ -437,7 +544,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) !!ELSE \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) !!ENDIF -- _populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) --!!ENDIF // CMAKE_STATIC_WINDOWS_BUILD +- _populate_$${CMAKE_MODULE_NAME}_target_properties(Qt5::$${CMAKE_MODULE_NAME} RELEASE \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) + _populate_$${CMAKE_MODULE_NAME}_target_properties(${QT_VARIANT_PREFIX}Qt5::$${CMAKE_MODULE_NAME} RELEASE \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" ) endif() -+!!ENDIF // CMAKE_STATIC_TYPE -+ -+ - !!ENDIF // CMAKE_RELEASE_TYPE - !!ENDIF // CMAKE_FIND_OTHER_LIBRARY_BUILD + !!ENDIF // CMAKE_STATIC_TYPE + +@@ -447,19 +554,22 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) -@@ -349,37 +538,17 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) + !!ENDIF // CMAKE_DEBUG_TYPE + !!ELSE // TEMPLATE != aux +- set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES ++ set_target_properties(${QT_VARIANT_PREFIX}Qt5::$${CMAKE_MODULE_NAME} PROPERTIES + INTERFACE_LINK_LIBRARIES \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}\" ) !!ENDIF // TEMPLATE != aux -- file(GLOB pluginTargets \"${CMAKE_CURRENT_LIST_DIR}/Qt5$${CMAKE_MODULE_NAME}_*Plugin.cmake\") -- -- macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties Plugin Configuration PLUGIN_LOCATION) -- set_property(TARGET Qt5::${Plugin} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration}) -- --!!IF isEmpty(CMAKE_PLUGIN_DIR_IS_ABSOLUTE) -- set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") --!!ELSE -- set(imported_location \"$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\") --!!ENDIF -- _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location}) -- set_target_properties(Qt5::${Plugin} PROPERTIES -- \"IMPORTED_LOCATION_${Configuration}\" ${imported_location} -- ) -- endmacro() -- -- if (pluginTargets) -- foreach(pluginTarget ${pluginTargets}) -- include(${pluginTarget}) -- endforeach() -- endif() -- -- !!IF !isEmpty(CMAKE_MODULE_EXTRAS) - include(\"${CMAKE_CURRENT_LIST_DIR}/Qt5$${CMAKE_MODULE_NAME}ConfigExtras.cmake\") + include(\"${CMAKE_CURRENT_LIST_DIR}/../${QT_VARIANT_PREFIX}Qt5$${CMAKE_MODULE_NAME}/${QT_VARIANT_PREFIX}Qt5$${CMAKE_MODULE_NAME}ConfigExtras.cmake\") @@ -881,18 +821,18 @@ index 17da8b979e..ec5e873aa1 100644 endif() diff --git a/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in b/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in -index 5baf0fdb10..1e4d98086c 100644 +index ec5f3cc437..1e4d98086c 100644 --- a/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in +++ b/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in -@@ -1,11 +1,22 @@ -- --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 +@@ -1,14 +1,22 @@ + # 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_RELEASE_TYPE) --_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME RELEASE \"$${CMAKE_PLUGIN_LOCATION_RELEASE}\") +- _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) + _populate_$${CMAKE_MODULE_NAME}_plugin_properties_static(${QT_VARIANT_PREFIX}Qt5::$$CMAKE_MODULE_NAME ${QT_VARIANT_PREFIX}Qt5::$$CMAKE_PLUGIN_NAME $$CMAKE_PLUGIN_NAME RELEASE \"$${CMAKE_PLUGIN_LOCATION_RELEASE_STATIC}\") +!!ELSE @@ -900,18 +840,18 @@ index 5baf0fdb10..1e4d98086c 100644 +!!ENDIF !!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(Qt5::$$CMAKE_MODULE_NAME Qt5::$$CMAKE_PLUGIN_NAME $$CMAKE_PLUGIN_NAME DEBUG \"$${CMAKE_PLUGIN_LOCATION_DEBUG}\") +!!IF !isEmpty(CMAKE_STATIC_TYPE) + _populate_$${CMAKE_MODULE_NAME}_plugin_properties_static(${QT_VARIANT_PREFIX}Qt5::$$CMAKE_MODULE_NAME ${QT_VARIANT_PREFIX}Qt5::$$CMAKE_PLUGIN_NAME $$CMAKE_PLUGIN_NAME DEBUG \"$${CMAKE_PLUGIN_LOCATION_DEBUG_STATIC}\") +!!ELSE + _populate_$${CMAKE_MODULE_NAME}_plugin_properties(${QT_VARIANT_PREFIX}Qt5::$$CMAKE_MODULE_NAME ${QT_VARIANT_PREFIX}Qt5::$$CMAKE_PLUGIN_NAME $$CMAKE_PLUGIN_NAME DEBUG \"$${CMAKE_PLUGIN_LOCATION_DEBUG}\") - !!ENDIF +!!ENDIF -+ -+list(APPEND ${QT_VARIANT_PREFIX}Qt5$${CMAKE_MODULE_NAME}_PLUGINS ${QT_VARIANT_PREFIX}Qt5::$$CMAKE_PLUGIN_NAME) + !!ENDIF -list(APPEND Qt5$${CMAKE_MODULE_NAME}_PLUGINS Qt5::$$CMAKE_PLUGIN_NAME) -+endif() ++list(APPEND ${QT_VARIANT_PREFIX}Qt5$${CMAKE_MODULE_NAME}_PLUGINS ${QT_VARIANT_PREFIX}Qt5::$$CMAKE_PLUGIN_NAME) + + endif() diff --git a/mkspecs/features/data/cmake/Qt5StaticOnlyRedirection.cmake.in b/mkspecs/features/data/cmake/Qt5StaticOnlyRedirection.cmake.in new file mode 100644 index 0000000000..0091940fd2 @@ -929,24 +869,6 @@ index 0000000000..0091940fd2 +find_package(StaticQt5$${CMAKE_MODULE_NAME}) +set(OVERRIDE_QT_VARIANT_PREFIX "${ORIGINAL_OVERRIDE_QT_VARIANT_PREFIX}") + -diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp -index d61f7b05e5..2dd26bf4dd 100644 ---- a/qmake/generators/makefile.cpp -+++ b/qmake/generators/makefile.cpp -@@ -998,6 +998,13 @@ MakefileGenerator::writePrlFile(QTextStream &t) - for (ProStringList::Iterator it = libs.begin(); it != libs.end(); ++it) - t << qv(project->values((*it).toKey())); - t << endl; -+ t << "QMAKE_PRL_LIBS_FOR_CMAKE = "; -+ QString sep; -+ for (ProStringList::Iterator it = libs.begin(); it != libs.end(); ++it) { -+ t << sep << project->values((*it).toKey()).join(';').replace('\\', "\\\\"); -+ sep = ';'; -+ } -+ t << endl; - } - } - diff --git a/src/corelib/Qt5CoreConfigExtras.cmake.in b/src/corelib/Qt5CoreConfigExtras.cmake.in index 545b9a3d1e..ebe6644dfe 100644 --- a/src/corelib/Qt5CoreConfigExtras.cmake.in @@ -1075,5 +997,5 @@ index 2a575958ae..ca0e3be3b5 100644 INTERFACE_COMPILE_DEFINITIONS QT_TESTCASE_BUILDDIR=\\\"\${CMAKE_BINARY_DIR}\\\" ) -- -2.13.2 +2.14.2 diff --git a/0024-Adjust-linker-flags-for-static-build-with-cmake-ming.patch b/0025-Adjust-linker-flags-for-static-build-with-cmake-ming.patch index 2f8cb9b10b90..b9f81f22f439 100644 --- a/0024-Adjust-linker-flags-for-static-build-with-cmake-ming.patch +++ b/0025-Adjust-linker-flags-for-static-build-with-cmake-ming.patch @@ -1,7 +1,7 @@ -From ba3345c986d4d9b43f90b44b143ba515e7795bf9 Mon Sep 17 00:00:00 2001 +From 0aac929861fb8d60fbc66f2557e1b9c5022ff9c5 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Fri, 2 Jun 2017 16:42:07 +0200 -Subject: [PATCH 24/31] Adjust linker flags for static build with +Subject: [PATCH 25/33] Adjust linker flags for static build with cmake/mingw-w64 Change-Id: I33b88976d8f5ce87ce431a6f422fe87785bf5b8d @@ -25,5 +25,5 @@ index ebe6644dfe..687d611b3f 100644 +unset(_isExe) +!!ENDIF -- -2.13.2 +2.14.2 diff --git a/0025-Use-correct-pkg-config-static-flag.patch b/0026-Use-correct-pkg-config-static-flag.patch index 610190bba201..15c749e6f830 100644 --- a/0025-Use-correct-pkg-config-static-flag.patch +++ b/0026-Use-correct-pkg-config-static-flag.patch @@ -1,14 +1,14 @@ -From c213e8a49f6eed5e3b5cbb1a314c0a1b76ed6a39 Mon Sep 17 00:00:00 2001 +From f2ff6d5023bd834b0110a97a16e085c3914335a7 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 18 Sep 2016 18:50:21 +0200 -Subject: [PATCH 25/31] Use correct pkg-config --static flag +Subject: [PATCH 26/33] Use correct pkg-config --static flag --- configure.pri | 3 +++ 1 file changed, 3 insertions(+) diff --git a/configure.pri b/configure.pri -index 7dd19be845..d8c6d18d71 100644 +index a05c3d98e6..8dc874a74d 100644 --- a/configure.pri +++ b/configure.pri @@ -311,6 +311,9 @@ defineTest(qtConfTest_detectPkgConfig) { @@ -22,5 +22,5 @@ index 7dd19be845..d8c6d18d71 100644 $$qtConfEvaluate("features.cross_compile") { # cross compiling, check that pkg-config is set up sanely -- -2.13.2 +2.14.2 diff --git a/0026-Fix-macro-invoking-moc-rcc-and-uic.patch b/0027-Fix-macro-invoking-moc-rcc-and-uic.patch index 5cf4a46e5892..a85082513463 100644 --- a/0026-Fix-macro-invoking-moc-rcc-and-uic.patch +++ b/0027-Fix-macro-invoking-moc-rcc-and-uic.patch @@ -1,7 +1,7 @@ -From 71b84a64a7f28891ba493d1e8bfd079dfb635bac Mon Sep 17 00:00:00 2001 +From 4f332ea7f376d8a77d7dbfe82ab6e5eb6b6f1fe9 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Sun, 4 Dec 2016 20:35:47 +0100 -Subject: [PATCH 26/31] Fix macro invoking moc, rcc and uic +Subject: [PATCH 27/33] Fix macro invoking moc, rcc and uic * Otherwise the arguments aren't passed correctly leading to errors like ``` @@ -70,5 +70,5 @@ index f5e7b7f050..18d120f0c7 100644 MAIN_DEPENDENCY ${infile} VERBATIM) list(APPEND ${outfiles} ${outfile}) -- -2.13.2 +2.14.2 diff --git a/0027-Ignore-errors-about-missing-feature-static.patch b/0028-Ignore-errors-about-missing-feature-static.patch index e679cc0e2b3d..104d9c209539 100644 --- a/0027-Ignore-errors-about-missing-feature-static.patch +++ b/0028-Ignore-errors-about-missing-feature-static.patch @@ -1,7 +1,7 @@ -From c6d3fc2bf5a8f38d89eee48659201da59f832f4f Mon Sep 17 00:00:00 2001 +From a8039e2f388a3fbd289dc912ae6b6a58beb84f19 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Wed, 25 Jan 2017 20:59:54 +0100 -Subject: [PATCH 27/31] Ignore errors about missing feature static +Subject: [PATCH 28/33] Ignore errors about missing feature static Not sure why this error occurs, let's hope for the best --- @@ -32,5 +32,5 @@ index c00fdb73f8..d4d5599433 100644 + !equals($$1, "static"): error("Could not find feature $${1}.") } -- -2.13.2 +2.14.2 diff --git a/0028-Enable-and-fix-use-of-iconv.patch b/0029-Enable-and-fix-use-of-iconv.patch index 92eddf4c0ba0..ddffbea33f93 100644 --- a/0028-Enable-and-fix-use-of-iconv.patch +++ b/0029-Enable-and-fix-use-of-iconv.patch @@ -1,20 +1,20 @@ -From 3ad79bbf89bbe62c61680484b4e68c07b5425cfa Mon Sep 17 00:00:00 2001 +From 05738e526362a5c712d8341ada02e557e76579f5 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Wed, 25 Jan 2017 21:08:20 +0100 -Subject: [PATCH 28/31] Enable and fix use of iconv +Subject: [PATCH 29/33] Enable and fix use of iconv Change-Id: I5f0ab27afca0800dec11c7af74d196190820ae5c --- - config.tests/unix/gnu-libiconv/gnu-libiconv.cpp | 2 +- - src/corelib/codecs/qiconvcodec.cpp | 7 +++---- - src/corelib/configure.json | 4 ++-- + 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(-) -diff --git a/config.tests/unix/gnu-libiconv/gnu-libiconv.cpp b/config.tests/unix/gnu-libiconv/gnu-libiconv.cpp -index 1276311e08..993a12c7ee 100644 ---- a/config.tests/unix/gnu-libiconv/gnu-libiconv.cpp -+++ b/config.tests/unix/gnu-libiconv/gnu-libiconv.cpp -@@ -46,7 +46,7 @@ int main(int, char **) +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("", ""); @@ -63,10 +63,10 @@ index d6362b6fbc..4da4546a24 100644 #else char **inBytesPtr = &inBytes; diff --git a/src/corelib/configure.json b/src/corelib/configure.json -index deb7a544ef..2e1a4ee59f 100644 +index a5b69a2df6..9e3eb4f671 100644 --- a/src/corelib/configure.json +++ b/src/corelib/configure.json -@@ -260,9 +260,9 @@ +@@ -428,9 +428,9 @@ }, "gnu-libiconv": { "label": "GNU iconv", @@ -79,5 +79,5 @@ index deb7a544ef..2e1a4ee59f 100644 }, "icu": { -- -2.13.2 +2.14.2 diff --git a/0029-Ignore-failing-pkg-config-test.patch b/0030-Ignore-failing-pkg-config-test.patch index 86a98b324502..cc89a8e378bf 100644 --- a/0029-Ignore-failing-pkg-config-test.patch +++ b/0030-Ignore-failing-pkg-config-test.patch @@ -1,7 +1,7 @@ -From a9c4ffe5b4f62df0bfc0a70b7851624025dbe33f Mon Sep 17 00:00:00 2001 +From f99af5483b8c3d8b511db8476f4d738ff868886c Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Wed, 25 Jan 2017 21:08:48 +0100 -Subject: [PATCH 29/31] Ignore failing pkg-config test +Subject: [PATCH 30/33] 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 f5d92d001b..9b42d06529 100644 +index 9914bf0487..d5b81d53f5 100644 --- a/configure.json +++ b/configure.json -@@ -515,7 +515,6 @@ +@@ -710,7 +710,6 @@ "pkg-config": { "label": "Using pkg-config", "autoDetect": "!config.darwin && !config.win32", @@ -21,5 +21,5 @@ index f5d92d001b..9b42d06529 100644 "publicFeature", { "type": "publicQtConfig", "negative": true }, -- -2.13.2 +2.14.2 diff --git a/0030-Prevent-qmake-from-messing-static-lib-dependencies.patch b/0031-Prevent-qmake-from-messing-static-lib-dependencies.patch index c2b7f2157ec8..5fc9df503973 100644 --- a/0030-Prevent-qmake-from-messing-static-lib-dependencies.patch +++ b/0031-Prevent-qmake-from-messing-static-lib-dependencies.patch @@ -1,7 +1,7 @@ -From a24b99d6679a8ca39fdaa90e35a4fd4c4e3d60c8 Mon Sep 17 00:00:00 2001 +From eadf27b8bd882899a99254578ecb8407a0acab6f Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Tue, 7 Feb 2017 18:25:28 +0100 -Subject: [PATCH 30/31] Prevent qmake from messing static lib dependencies +Subject: [PATCH 31/33] Prevent qmake from messing static lib dependencies In particular, it messes resolving cyclic dependency between static freetype2 and harfbuzz @@ -39,5 +39,5 @@ index 2e6d5d94a9..a8320bae09 100644 static const char * const lflags[] = { "QMAKE_LIBS", "QMAKE_LIBS_PRIVATE", 0 }; for (int i = 0; lflags[i]; i++) { -- -2.13.2 +2.14.2 diff --git a/0031-Hardcode-linker-flags-for-platform-plugins.patch b/0032-Hardcode-linker-flags-for-platform-plugins.patch index f345dfe4ed84..5562bbf38a4b 100644 --- a/0031-Hardcode-linker-flags-for-platform-plugins.patch +++ b/0032-Hardcode-linker-flags-for-platform-plugins.patch @@ -1,7 +1,7 @@ -From 738bee43dfef8244cd811c293a90c43b58c2ab20 Mon Sep 17 00:00:00 2001 +From f7bb119102d28e22b764cce82ee491e747034247 Mon Sep 17 00:00:00 2001 From: Martchus <martchus@gmx.net> Date: Wed, 25 Jan 2017 23:42:30 +0100 -Subject: [PATCH 31/31] Hardcode linker flags for platform plugins +Subject: [PATCH 32/33] Hardcode linker flags for platform plugins Otherwise incorrect order of libs leads to errors when building libqminimal.dll, libqoffscreen.dll @@ -97,5 +97,5 @@ index 23168c10dc..eb4af726ca 100644 include(windows.pri) -- -2.13.2 +2.14.2 diff --git a/0033-Fix-linking-against-static-plugins-with-qmake.patch b/0033-Fix-linking-against-static-plugins-with-qmake.patch new file mode 100644 index 000000000000..676a558c8e93 --- /dev/null +++ b/0033-Fix-linking-against-static-plugins-with-qmake.patch @@ -0,0 +1,37 @@ +From b91d3a0690995511d1388b9d9493aed702bd0138 Mon Sep 17 00:00:00 2001 +From: Martchus <martchus@gmx.net> +Date: Fri, 25 Aug 2017 17:07:17 +0200 +Subject: [PATCH 33/33] Fix linking against static plugins with qmake + +Required because qtConfig(static) does not work +with 'Merge shared and static library trees' +approach +--- + mkspecs/features/qt.prf | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/mkspecs/features/qt.prf b/mkspecs/features/qt.prf +index afaac3dbc4..82b02b5113 100644 +--- a/mkspecs/features/qt.prf ++++ b/mkspecs/features/qt.prf +@@ -65,7 +65,7 @@ all_qt_module_deps = $$resolve_depends(qt_module_deps, "QT.", ".depends" ".run_d + + QTPLUGIN = $$unique($$list($$lower($$QTPLUGIN))) + +-import_plugins:qtConfig(static) { ++import_plugins:static { + manualplugs = $$QTPLUGIN # User may specify plugins. Mostly legacy. + autoplugs = # Auto-added plugins. + # First round: explicitly specified modules. +@@ -135,7 +135,7 @@ import_plugins:qtConfig(static) { + } + + # Only link against plugins in static builds +-!isEmpty(QTPLUGIN):qtConfig(static) { ++!isEmpty(QTPLUGIN):static { + for (plug, QTPLUGIN) { + # 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.14.2 + @@ -84,7 +84,7 @@ isNoOpenGL() { } pkgname=mingw-w64-qt5-base -pkgver=5.9.1 +pkgver=5.9.2 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 @@ -122,47 +122,51 @@ source=("https://download.qt.io/official_releases/qt/${pkgver:0:3}/${pkgver}/sub '0020-Disable-determing-default-include-and-lib-dirs-at-qm.patch' '0021-Use-.dll.a-as-import-lib-extension.patch' '0022-Merge-shared-and-static-library-trees.patch' - '0023-Allow-usage-of-static-version-with-CMake.patch' - '0024-Adjust-linker-flags-for-static-build-with-cmake-ming.patch' - '0025-Use-correct-pkg-config-static-flag.patch' - '0026-Fix-macro-invoking-moc-rcc-and-uic.patch' - '0027-Ignore-errors-about-missing-feature-static.patch' - '0028-Enable-and-fix-use-of-iconv.patch' - '0029-Ignore-failing-pkg-config-test.patch' - '0030-Prevent-qmake-from-messing-static-lib-dependencies.patch' - '0031-Hardcode-linker-flags-for-platform-plugins.patch') -sha256sums=('bc9a21e9f6fff9629019fdf9f989f064751d5073c3a28dc596def92f4d4275c6' - 'f52c581e355a7da69c96c0b31dd42f13b298f11bb616945e6215804fef06866b' - 'e540286f502a72dc55649006d671c9bcca5eef174ad4c275087a88f56bc40bfd' - 'dc6d77dfa426aabcebbbda7e05f0bf8746a1700519a9bcbc4bf590b47af51eee' - 'cb799952f673b18ab9e81528f31b0748adc9313335eccc2a8a3b30cb202d458f' - '79634ff2647f5c7c93462ea97e9fca5b2be386450a2c9b27c26ec6f6cfc1f0ee' - 'c447040e2fbaae9aae2bda5c8ed21e71cf2f83f9aa57ceba9cce6e1d1386ed12' - '99735144a8437b8bc03141e998c5f750b6b5f82490cca5e31c67c013ec7f5b36' - '7866105da64a96722a2676318e90951d2ac3e7bbe5793557af2ea5a73d0f321a' - '37397374c1e373c74a69c4608834dc642832b51ef5532baad5313889ad477fc4' - 'd67c33f9b990ebbd486ad38f5d5907a0f2d4989e5c2c5057ff017ee06e6493b1' - '1a4f497ca54cecbb055303d4dd25eb63f5b2261d32d0b045eea4ae8f4e3bbbe5' - '11e329848dbfe42abda9c9531370437ee5a0d69483c333766655e847d2b05a62' - 'd3b395a536afb2986a0fc4aabaddc9c5ac465b4f7eb7a58a30c9918be07f2f62' - '864ba163f331620ecc4df00132dc7fd9b85427038a8209571ddf7b43e5bb2ecd' - '68220dc824e0294e604512cec9e6d40e55184d86bf7577dcb5b1af6462da9c66' - '1ba5e6862f81456c94e3f57cc37a303d67912269661028357c716de8bf21aeb9' - 'a4c60391632d84a085896db61aa4e94f1742be34448c23a97a1aa0910cd2e29a' - '3db5c1fe5f6957cecdaef9ce767f27e4d5fdd4d9d775d527dba6c093808f371d' - 'd3e0d6d4daea62fd710416f4549c943f601b7c0e5e84c5cc8c524fabb1dd402b' - '569a2f1d7e07d439c82754703b1b007ce6907b12743211b10138a394965258c4' - '589955c161c1e975536ee6e21ab1470cf6f8d3a5c50f170ba9ee9d855e347c59' - 'b1b43064960ca3eb35eb3baed7abf28b00f606d32baeb38d53ffbf96c21dc716' - 'cbfbb01f52c17cd37d6724e5fad0708d8337d4ba11b87f59dbbe108863aca7dd' - 'f9b1e01c870a1640865d2d57cb756a9c754c047c66ef78f8cadc6e609677ede0' - '25138daad7bfc00cb6f6556da53e6efb2ad0c7b09743cfc3633c86b46ad538cc' - '19809d59b5b1fd9ffea8bee6afeca0a3992170f362d0cb99d9f20b2148b859a4' - 'e0841bd69b6037303bfba1de3072bd55a31ca12c57b8d4e01c28d4ef447b1bed' - '4d9204b4e4d634391704954ba152651ccfdd0a00efaabc892c62c710fc6068b4' - 'b0e505ceef8cf052a9ceef9a508c9c1f5e4c1b4d49e08f954bcb42e4c1aed79e' - '389bee66acc6aa9d36f6ab206d217e43b0aca8ba290dc7b1d170c98b79d64cf2' - 'e2dde7f878d8b5176d5aa925aedeaf60e7b3bf14f98a55327af5f7adcff2eb8c') + '0023-Pull-dependencies-of-static-libraries-in-CMake-modul.patch' + '0024-Allow-usage-of-static-version-with-CMake.patch' + '0025-Adjust-linker-flags-for-static-build-with-cmake-ming.patch' + '0026-Use-correct-pkg-config-static-flag.patch' + '0027-Fix-macro-invoking-moc-rcc-and-uic.patch' + '0028-Ignore-errors-about-missing-feature-static.patch' + '0029-Enable-and-fix-use-of-iconv.patch' + '0030-Ignore-failing-pkg-config-test.patch' + '0031-Prevent-qmake-from-messing-static-lib-dependencies.patch' + '0032-Hardcode-linker-flags-for-platform-plugins.patch' + '0033-Fix-linking-against-static-plugins-with-qmake.patch') +sha256sums=('7fe2bb468955f633c71b3ddd3c269e68a2c4137a4e5b8dd12dcdb34cbc6d609b' + '685fd08e1c4e97bbf6990959cb3dbe88dd3ed494221400dce6aef159d277c34a' + '4e5115e62b952acface29882c5f6423569cd1c439c454e58594b5fb2cb740916' + '0b339563844ccd325486d78711592561996fb256f0612c63b33b6ea52a6fc77e' + '18945eb521df54d37922894c9bc82ccd03eb3fd9f6e0aed986facf2b49f336d4' + '2c2b5f9b3db02750ae9a9626ea8a24a3516c881c5eaa9b19fb9a2621fc1263fc' + '81559290cc03f7ff6042f28a6eb319882264876076a20e24531641ebe4ef3aee' + 'a3d657ee7f8bfa6c3e5a4aa626710bc27fc82fea3d834098bde2b2f67244d11c' + '3df9bf81a936c737cc7ca53bdea9cfd2a4010fa190fe3e1a45611097d8213ef4' + '5aac41daaf223726d31ab5a7aec0bdc050aa182522ca732cc31c3b5ac8cd28dc' + '6844b7106e636d513b077edeba318990641b1ee294f2a70739830e3d0a9b0d02' + '12b51c32069270e49e05e64b0f54d6e3e871523660fd17673e0ee6e67206955e' + '4baa73f8b3d61b503a9de1437bdc9f7f84cd2443280afc1461456ae34d222e9b' + 'e34eec672f9f681302edd809cbcb7d6848a310a02acc5711e2e348aab1b8d74c' + 'd70f44c06a7bae6fbd91022ec79f09e2d658969aa5a6602bff6eb61076801b6e' + 'f705fcfe1f552536318c2c63d59e5ec95640321d9f1fff1016a34d1bc862c9df' + '60034cce435d3eca60906e4af2f1ad55edd12b4e95ccc9905e793bc7b9d66917' + '295c307f6b075b0c20b7d714b6ecff1bc25927b80dd60d725052b4bc05d1b055' + '37c2d0bce780a15e7bdb477324936b1ae0ebe576c64d3a713a9086586518d50a' + '36b6a2e1d2bf478746e931da5223dcfeffc5eda513b64596ffbbd663fd5e63e7' + 'e1b45c50ca09b065f218442a1fc3ddf3c8de1357a818925497fe0e3e7c28cacd' + '03feabae42553a6960c2a257eb951d956fe31a9a4440a92b373e8a0d6cb301ff' + '1ec8a7ebaf5e400aca7a0abe8cee78d0dae6b662c30bf245b81814cfcd048dd3' + 'bc2f049471853a6bb2e83de3c2691a4206d55c7fe018bb7910215e9968759082' + '8611ac15ee36b803b5095466509c57d45532ab017d61513f2be7b34d5c13da0f' + 'f999f20131f0180439b59320ab350a284b169e5ee5e21379fa74dc07d4aeda25' + 'd9fed680c0313c89458361ac253a5710379fa8022c7c24b05d2807ecaf4f803a' + 'd263509d7951f12d9ccfa841cd7f205aebc7b9db28913925b65a23e627258023' + '092176255153bae63f779833d25e5f64a2c489a1b6f33e8e158ff59629916b36' + '65023b59b41797281876b5fcd8cb1542ad790b9b6f83125b6b0aa1e02d9de4fb' + '3d5202be8837bccab4dedc9b6f10b3722ca57ea8b663e08b55d0235381397508' + '4df4c2ad348c13a3b82c3a9b127464492898379a82dfd6db9d3ff9d051a08dab' + 'cfa48754bef9f7a95f1350c0c1ec1699c9dc413013ef78d218206f5d60335823' + '135123e630efdbeb6d4edc9bc200754f2c881760652fe5152f0903ae238ce2c9') _architectures='i686-w64-mingw32 x86_64-w64-mingw32' |