diff --git a/mingw-w64-qt-installer-framework/0002-add-installation-stuff-to-pro-files.patch b/mingw-w64-qt-installer-framework/0002-add-installation-stuff-to-pro-files.patch index ab7c8e61c0..3b087f9be0 100644 --- a/mingw-w64-qt-installer-framework/0002-add-installation-stuff-to-pro-files.patch +++ b/mingw-w64-qt-installer-framework/0002-add-installation-stuff-to-pro-files.patch @@ -24,10 +24,8 @@ index 76bd4c5..4f9e480 100644 -target.path = $$[QT_INSTALL_BINS] +target.path = $$PREFIX/bin INSTALLS += target -diff --git a/src/libs/7zip/7zip.pro b/src/libs/7zip/7zip.pro -index 76bd4c5..4f9e480 100644 ---- a/src/libs/7zip/7zip.pro -+++ b/src/libs/7zip/7zip.pro +--- a/src/libs/3rdparty/7zip/7zip.pro ++++ b/src/libs/3rdparty/7zip/7zip.pro @@ -10,5 +10,5 @@ win32:include($$7ZIP_BASE/win.pri) #7zip unix:include($$7ZIP_BASE/unix.pri) #p7zip diff --git a/mingw-w64-qt-installer-framework/0005-Fix-RunProgram-variable-substitution.patch b/mingw-w64-qt-installer-framework/0005-Fix-RunProgram-variable-substitution.patch deleted file mode 100644 index 548c147984..0000000000 --- a/mingw-w64-qt-installer-framework/0005-Fix-RunProgram-variable-substitution.patch +++ /dev/null @@ -1,30 +0,0 @@ -From ac0140b029bad4de90d628e12814a6448817fd7d Mon Sep 17 00:00:00 2001 -From: Ray Donnelly -Date: Mon, 16 Jun 2014 20:32:48 +0100 -Subject: [PATCH 5/9] Fix RunProgram variable substitution - -Patch from https://bugreports.qt-project.org/browse/QTIFW-397 -Using @TargetDir@/blah.exe would use only the -default value of TargetDir, and ignored any user modification. ---- - src/libs/installer/packagemanagergui.cpp | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/src/libs/installer/packagemanagergui.cpp b/src/libs/installer/packagemanagergui.cpp -index 34e1471..a233a4b 100644 ---- a/src/libs/installer/packagemanagergui.cpp -+++ b/src/libs/installer/packagemanagergui.cpp -@@ -3097,8 +3097,9 @@ void FinishedPage::leaving() - */ - void FinishedPage::handleFinishClicked() - { -+ // Applied patch from https://bugreports.qt-project.org/browse/QTIFW-397 - const QString program = -- packageManagerCore()->replaceVariables(packageManagerCore()->value(scRunProgram)); -+ packageManagerCore()->replaceVariables(packageManagerCore()->settings().runProgram()); - - const QStringList args = packageManagerCore()->replaceVariables(packageManagerCore() - ->values(scRunProgramArguments)); --- -2.7.0 - diff --git a/mingw-w64-qt-installer-framework/0008-Use-QTPLUGIN-qminimal-on-Windows-too.patch b/mingw-w64-qt-installer-framework/0008-Use-QTPLUGIN-qminimal-on-Windows-too.patch deleted file mode 100644 index 3c80f9bbc8..0000000000 --- a/mingw-w64-qt-installer-framework/0008-Use-QTPLUGIN-qminimal-on-Windows-too.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 56620a6e9521506745292c50ac9b43c5a56e41d0 Mon Sep 17 00:00:00 2001 -From: Ray Donnelly -Date: Tue, 16 Jun 2015 23:14:23 +0100 -Subject: [PATCH 8/9] Use QTPLUGIN += qminimal on Windows too - -Fixes: http://sourceforge.net/p/msys2/tickets/149/ -See also: https://bugreports.qt.io/browse/QTIFW-166 ---- - src/sdk/sdk.pro | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/sdk/sdk.pro b/src/sdk/sdk.pro -index 9c99ebf..d174690 100644 ---- a/src/sdk/sdk.pro -+++ b/src/sdk/sdk.pro -@@ -8,7 +8,7 @@ QT += network qml xml widgets - # add the minimal plugin in static build to be able to start the installer headless with: - # installer-binary --platform minimal - # using QT += qpa_minimal_plugin would result in a minimal only compiled version --!win32:CONFIG(static, static|shared) { -+CONFIG(static, static|shared) { - QTPLUGIN += qminimal - } - --- -2.7.0 - diff --git a/mingw-w64-qt-installer-framework/0009-Add-explicit-platform-commandline-option.patch b/mingw-w64-qt-installer-framework/0009-Add-explicit-platform-commandline-option.patch deleted file mode 100644 index e6ac6c1c71..0000000000 --- a/mingw-w64-qt-installer-framework/0009-Add-explicit-platform-commandline-option.patch +++ /dev/null @@ -1,29 +0,0 @@ -From aa42cf4390d663901d5afbb5fd026b5c093d25b9 Mon Sep 17 00:00:00 2001 -From: Ray Donnelly -Date: Thu, 25 Jun 2015 10:49:42 +0100 -Subject: [PATCH 9/9] Add explicit '--platform' commandline option - -To prevent 'Unknown option: platform' when running -in headless mode (--platform minimal) ---- - src/sdk/commandlineparser.cpp | 4 ++++ - 1 files changed, 4 insertions(+) - -diff --git a/src/sdk/commandlineparser.cpp b/src/sdk/commandlineparser.cpp -index 6da3188..a3b6d33 100644 ---- a/src/sdk/commandlineparser.cpp -+++ b/src/sdk/commandlineparser.cpp -@@ -115,6 +115,10 @@ CommandLineParser::CommandLineParser() - "not started by the client application in that case, you need to start it on your own."), - QLatin1String("socketname,key"))); - -+ m_parser.addOption(QCommandLineOption(QLatin1String(CommandLineOptions::Platform), -+ QLatin1String("Use specified platform plugin. The 'minimal' platform plugin can be used " -+ "to run in headless mode."), QLatin1String("platform-plugin"))); -+ - m_parser.addPositionalArgument(QLatin1String(CommandLineOptions::KeyValue), - QLatin1String("Key Value pair to be set.")); - } --- -2.7.0 - diff --git a/mingw-w64-qt-installer-framework/0011-fix-redefined-mode_t.patch b/mingw-w64-qt-installer-framework/0011-fix-redefined-mode_t.patch index fbc212ad83..e86d911251 100644 --- a/mingw-w64-qt-installer-framework/0011-fix-redefined-mode_t.patch +++ b/mingw-w64-qt-installer-framework/0011-fix-redefined-mode_t.patch @@ -12,3 +12,15 @@ #endif namespace QInstaller { +--- a/src/libs/3rdparty/libarchive/config/win/config.h ++++ b/src/libs/3rdparty/libarchive/config/win/config.h +@@ -1318,7 +1318,9 @@ + #define id_t short + + /* Define to `int' if does not define. */ ++#ifndef __MINGW32__ + #define mode_t unsigned short ++#endif + + /* Define to `long long' if does not define. */ + /* #undef off_t */ diff --git a/mingw-w64-qt-installer-framework/0012-get_timezone-not-available-on-msvcrt.patch b/mingw-w64-qt-installer-framework/0012-get_timezone-not-available-on-msvcrt.patch new file mode 100644 index 0000000000..75eb216f57 --- /dev/null +++ b/mingw-w64-qt-installer-framework/0012-get_timezone-not-available-on-msvcrt.patch @@ -0,0 +1,12 @@ +--- a/src/libs/3rdparty/libarchive/config/win/config.h ++++ b/src/libs/3rdparty/libarchive/config/win/config.h +@@ -1212,7 +1212,9 @@ + #define HAVE__FSEEKI64 1 + + /* Define to 1 if you have the `_get_timezone' function. */ ++#ifdef _UCRT + #define HAVE__GET_TIMEZONE 1 ++#endif + + /* Define to 1 if you have the `_gmtime64_s' function. */ + #define HAVE__GMTIME64_S 1 diff --git a/mingw-w64-qt-installer-framework/PKGBUILD b/mingw-w64-qt-installer-framework/PKGBUILD index 4761cfffe1..fd7f788a59 100644 --- a/mingw-w64-qt-installer-framework/PKGBUILD +++ b/mingw-w64-qt-installer-framework/PKGBUILD @@ -4,7 +4,7 @@ _realname=installer-framework pkgbase=mingw-w64-qt-${_realname} pkgname="${MINGW_PACKAGE_PREFIX}-qt-${_realname}" pkgdesc="The Qt Installer Framework used for the Qt SDK installer (mingw-w64)" -pkgver=4.3.0 +pkgver=4.5.0 pkgrel=1 arch=('any') mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32') @@ -16,29 +16,28 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-qt5-static" "${MINGW_PACKAGE_PREFIX}-cc" "${MINGW_PACKAGE_PREFIX}-make" "${MINGW_PACKAGE_PREFIX}-libwebp" - "${MINGW_PACKAGE_PREFIX}-jasper") + "${MINGW_PACKAGE_PREFIX}-jasper" + "${MINGW_PACKAGE_PREFIX}-bzip2") options=('strip' 'staticlibs') #options=('!strip' 'debug' 'staticlibs') source=(https://download.qt.io/official_releases/qt-${_realname}/${pkgver}/${_realname}-opensource-src-${pkgver}.tar.xz "0002-add-installation-stuff-to-pro-files.patch" "0003-add-recursive-option-to-rmdir-operation.patch" "0004-add-dirExists-fuction.patch" - "0005-Fix-RunProgram-variable-substitution.patch" "0006-Don-t-remove-files-that-live-outside-of-path.patch" "0007-Don-t-prevent-qmake-linking-qmltooling-plugin.patch" - "0008-Use-QTPLUGIN-qminimal-on-Windows-too.patch" "0010-fix-version-pass-to-windres.patch" - "0011-fix-redefined-mode_t.patch") -sha256sums=('742924a36133da23215d9f68e8ce3c51d6dd448dde142f208866d43f324a87f6' - '38ff350982e03aff66a70e87b0202eca7dae696d0b5312270204e8cc572e5aa6' + "0011-fix-redefined-mode_t.patch" + "0012-get_timezone-not-available-on-msvcrt.patch") +sha256sums=('153a93e7ab3b237eb4b4bded39ae41ef6b9a8148f1b8dadd811d49db06b207b6' + '4100a93ac7e117a32430d22187a4ebe94e7830d94d2c23b85651bc1d95821409' '4db7a4c3e6ea3a26de6493e4e2b683251060c7c8cefacf6bfa458026e541e906' '2aaf51f346edb6db2367262d0d8e1bb77d0afee51fabd5b2766038a97ebf0ca6' - '2fbd939417da1a2c0166c0ac47307b9c579f07a3e5b37aa73af1629caa38387f' '00857e9a654ecaed93ec79898389329799fdc01968b7562ae1889498b12c943d' 'a82b4dbddebb42111832ab4dd79ec591d4a7196dea4b59f0dc77bb7615181b9e' - 'ef94ad9a00aca5ab66937bd3fe4a3c1714ce610bb59dbb338a92bef5d4beaebf' 'f7293902981c69e642c59276cee2a24c0d0540f8fddfc4ac9f9a6b22cf0151ed' - 'feb3ce36535136dd7dcd457a99520b15605057b051fe481bc4073378e772560f') + 'a2eaac4c11e0b6a41f3289657d9e95894a5ed6d625ea98cc41fd4356d2d22a8e' + '51d50531fa3cc4f68473d51812f5feea128690dc8bc7de379bf9888dae9b9d46') # Helper macros to help make tasks easier # apply_patch_with_msg() { @@ -50,20 +49,16 @@ apply_patch_with_msg() { } prepare() { - cd "${srcdir}"/${_realname}-opensource-src-${pkgver} + cd "${srcdir}"/${_realname}-opensource-src-${pkgver%.*} apply_patch_with_msg \ 0002-add-installation-stuff-to-pro-files.patch \ 0003-add-recursive-option-to-rmdir-operation.patch \ 0004-add-dirExists-fuction.patch \ 0007-Don-t-prevent-qmake-linking-qmltooling-plugin.patch \ - 0008-Use-QTPLUGIN-qminimal-on-Windows-too.patch \ 0010-fix-version-pass-to-windres.patch \ - 0011-fix-redefined-mode_t.patch - - # Apply patch from https://bugreports.qt.io/browse/QTIFW-397 - apply_patch_with_msg \ - 0005-Fix-RunProgram-variable-substitution.patch + 0011-fix-redefined-mode_t.patch \ + 0012-get_timezone-not-available-on-msvcrt.patch # This requires ../mingw-w64-qt5-static/0044-qt-5.4.1-Revert-Revert-fix-NTFS-mount-points.patch # to fix the problem for junction points. Together they fix: @@ -83,7 +78,14 @@ build() { _config="debug" fi - ${MINGW_PREFIX}/qt5-static/bin/qmake.exe ../${_realname}-opensource-src-${pkgver}/installerfw.pro CONFIG+="${_config}" CONFIG+=no_testcase_installs + ${MINGW_PREFIX}/qt5-static/bin/qmake.exe \ + CONFIG+="${_config}" \ + CONFIG+=libarchive \ + CONFIG+=no_testcase_installs \ + IFW_ZLIB_LIBRARY=${MINGW_PREFIX}/lib/libz.a \ + IFW_BZIP2_LIBRARY=${MINGW_PREFIX}/lib/libbz2.a \ + IFW_LZMA_LIBRARY=${MINGW_PREFIX}/lib/liblzma.a \ + ../${_realname}-opensource-src-${pkgver%.*}/installerfw.pro make } @@ -94,5 +96,5 @@ package() { rm -rf "${pkgdir}${MINGW_PREFIX}"/lib install -d "$pkgdir${MINGW_PREFIX}"/share/licenses/${_realname} - install -Dm644 "${srcdir}"/${_realname}-opensource-src-${pkgver}/LICENSE* "${pkgdir}${MINGW_PREFIX}"/share/licenses/${_realname} + install -Dm644 "${srcdir}"/${_realname}-opensource-src-${pkgver%.*}/LICENSE* "${pkgdir}${MINGW_PREFIX}"/share/licenses/${_realname} }