Update qt to 5.12.1
authorAndre Heinecke <aheinecke@gnupg.org>
Mon, 18 Feb 2019 13:40:52 +0000 (14:40 +0100)
committerAndre Heinecke <aheinecke@gnupg.org>
Mon, 18 Feb 2019 13:40:52 +0000 (14:40 +0100)
* README: Mention buster.
* packages/packages.current: Update qt5 packages.
* patches/qtbase: Rebase and update.

README
packages/packages.current
patches/qtbase/config-standardpaths.patch
patches/qtbase/qtbase-mingw-fixes.patch

diff --git a/README b/README
index 2cf5022..2770fb7 100644 (file)
--- a/README
+++ b/README
@@ -37,7 +37,7 @@ Basic requirements
 ==================
 
 A decent POSIX system is required for building this software as well
-as GNU make.  We are using Debian GNU/Linux 9 (stretch), any other
+as GNU make.  We are using Debian GNU/Linux 10 (buster), any other
 POSIX system should work as well but you may run into problems due to
 different toolchain versions. For MSI Packages you will additionally
 need the dependencies mentioned in src/README-msi.txt
@@ -47,10 +47,10 @@ to be installed:
 
     build-essential autoconf automake mingw-w64 mingw-w64-i686-dev \
     mingw-w64-x86-64-dev nsis stow unzip imagemagick texlive \
-    latex-xcolor libglib2.0-dev gettext docbook-utils ghostscript \
+    libglib2.0-dev gettext docbook-utils ghostscript \
     texinfo libgdk-pixbuf2.0-dev texlive-latex-extra libqt4-dev-bin \
     wget mingw-w64 texlive-lang-german cmake libgtk2.0-bin libxml2-utils \
-    gperf libgettextpo-dev
+    gperf libgettextpo-dev automake-1.15
 
 Building the Webpages
 =====================
index 9832397..86b6ba1 100644 (file)
@@ -367,47 +367,47 @@ file 1.60.0/boost_1_60_0.tar.bz2
 chk 686affff989ac2488f79a97b9479efb9f2abae035b5ed4d8226de6857933fd3b
 
 # Qt base
-# last changed: 2018-02-27
+# last changed: 2019-02-11
 # by: ah
-# verified: HTTPS https://download.qt.io/official_releases/qt/5.10/5.10.1/submodules/qtbase-everywhere-src-5.10.1.tar.xz.sha256
+# verified: HTTPS https://download.qt.io/official_releases/qt/5.10/5.12.1/submodules/qtbase-everywhere-src-5.12.1.tar.xz.sha256
 
 server http://download.qt.io/official_releases/qt/
 
-name qtbase-5.10.1.tar.xz
-file 5.10/5.10.1/submodules/qtbase-everywhere-src-5.10.1.tar.xz
-chk d8660e189caa5da5142d5894d328b61a4d3ee9750b76d61ad74e4eee8765a969
+name qtbase-5.12.1.tar.xz
+file 5.12/5.12.1/submodules/qtbase-everywhere-src-5.12.1.tar.xz
+chk 533078ce02678988576e224cb3844979907950cf83e0fda3364bc1d5701c9049
 
 # Qt Tools
-# last changed: 2018-02-27
+# last changed: 2019-02-11
 # by: ah
-# verified: HTTPS https://download.qt.io/official_releases/qt/5.10/5.10.1/submodules/qttools-everywhere-src-5.10.1.tar.xz.sha256
-name qttools-5.10.1.tar.xz
-file 5.10/5.10.1/submodules/qttools-everywhere-src-5.10.1.tar.xz
-chk f1ea441e5fe138756e6de3b60ab7d8d3051799eabe85a9408c995dfd4d048a53
+# verified: HTTPS https://download.qt.io/official_releases/qt/5.12/5.12.1/submodules/qttools-everywhere-src-5.12.1.tar.xz.sha256
+name qttools-5.12.1.tar.xz
+file 5.12/5.12.1/submodules/qttools-everywhere-src-5.12.1.tar.xz
+chk ab1da4fbd84a9d3873e4ed212a0ae614c6059b8e7dca2f0a599a6f7e61f6cbf3
 
 # Qt Winextras
-# last changed: 2018-02-27
+# last changed: 2019-02-11
 # by: ah
-# verified: HTTPS https://download.qt.io/official_releases/qt/5.10/5.10.1/submodules/qtwinextras-everywhere-src-5.10.1.tar.xz.sha256
-name qtwinextras-5.10.1.tar.xz
-file 5.10/5.10.1/submodules/qtwinextras-everywhere-src-5.10.1.tar.xz
-chk 12401eea9abe87307b9aeba9d539ad403858ea43a99248421caf069f27b28917
+# verified: HTTPS https://download.qt.io/official_releases/qt/5.12/5.12.1/submodules/qtwinextras-everywhere-src-5.12.1.tar.xz.sha256
+name qtwinextras-5.12.1.tar.xz
+file 5.12/5.12.1/submodules/qtwinextras-everywhere-src-5.12.1.tar.xz
+chk 8d312155a7da329df41cc2ea5d265eb632be7dd9cbd789fa3bc0206b4022f557
 
 # Qt svg
-# last changed: 2018-02-27
+# last changed: 2019-02-11
 # by: ah
-# verified: HTTPS https://download.qt.io/official_releases/qt/5.10/5.10.1/submodules/qtsvg-everywhere-src-5.10.1.tar.xz.sha256
-name qtsvg-5.10.1.tar.xz
-file 5.10/5.10.1/submodules/qtsvg-everywhere-src-5.10.1.tar.xz
-chk 00e00c04abcc8363cf7d94ca8b16af61840995a4af23685d49fa4ccafa1c7f5a
+# verified: HTTPS https://download.qt.io/official_releases/qt/5.12/5.12.1/submodules/qtsvg-everywhere-src-5.12.1.tar.xz.sha256
+name qtsvg-5.12.1.tar.xz
+file 5.12/5.12.1/submodules/qtsvg-everywhere-src-5.12.1.tar.xz
+chk 5bc1f744d32c06f5aa4eff33759568106a995ce21fa1326a247dfa5f783f63c8
 
 # Qt translations
-# last changed: 2018-02-27
+# last changed: 2019-02-11
 # by: ah
-# verified: HTTPS https://download.qt.io/official_releases/qt/5.10/5.10.1/submodules/qttranslations-everywhere-src-5.10.1.tar.xz.sha256
-name qttranslations-5.10.1.tar.xz
-file 5.10/5.10.1/submodules/qttranslations-everywhere-src-5.10.1.tar.xz
-chk 1f6d840e3d04b00b976bc1a86ea2be9d61051b7c3455dc2b891fae61772643fd
+# verified: HTTPS https://download.qt.io/official_releases/qt/5.12/5.12.1/submodules/qttranslations-everywhere-src-5.12.1.tar.xz.sha256
+name qttranslations-5.12.1.tar.xz
+file 5.12/5.12.1/submodules/qttranslations-everywhere-src-5.12.1.tar.xz
+chk 7443d70d8572321e810c52fbdd096666e61510e07e17437f1910f0b800cca6a7
 
 # KDE Frameworks generated by gen-frameworks.sh
 
index 55d6610..4b8740c 100755 (executable)
@@ -9,7 +9,7 @@ diff -Nru qtbase-5.6.1.orig/src/corelib/io/qstandardpaths.cpp qtbase-5.6.1/src/c
  #include <unistd.h>
  #endif
 
-+#if !defined(QT_BUILD_QMAKE) && !defined(QT_NO_SETTINGS)
++#if !defined(QT_BUILD_QMAKE) && !defined(QT_NO_SETTINGS)  && !defined(QT_BOOTSTRAPPED)
 +#include <qsettings.h>
 +#include <qcoreapplication.h>
 +#endif
@@ -20,46 +20,26 @@ diff -Nru qtbase-5.6.1.orig/src/corelib/io/qstandardpaths.cpp qtbase-5.6.1/src/c
  #ifndef QT_NO_STANDARDPATHS
 
  QT_BEGIN_NAMESPACE
-@@ -671,6 +679,90 @@
+@@ -672,6 +680,70 @@
      return qsp_testMode;
  }
 
++#if !defined(QT_BUILD_QMAKE) && !defined(QT_NO_SETTINGS) && !defined(QT_BOOTSTRAPPED)
 +static const char standardPathsSection[] = "StandardPaths";
-+
 +static QSettings *findConfiguration()
 +{
-+#ifdef QT_BUILD_QMAKE
-+    QString qtconfig = qmake_libraryInfoFile();
-+    if (QFile::exists(qtconfig))
-+        return new QSettings(qtconfig, QSettings::IniFormat);
-+#else
 +    QString qtconfig = QStringLiteral(":/qt/etc/qt.conf");
 +    if (QFile::exists(qtconfig))
 +        return new QSettings(qtconfig, QSettings::IniFormat);
-+#ifdef Q_OS_DARWIN
-+    CFBundleRef bundleRef = CFBundleGetMainBundle();
-+    if (bundleRef) {
-+        QCFType<CFURLRef> urlRef = CFBundleCopyResourceURL(bundleRef,
-+                                                           QCFString(QLatin1String("qt.conf")),
-+                                                           0,
-+                                                           0);
-+        if (urlRef) {
-+            QCFString path = CFURLCopyFileSystemPath(urlRef, kCFURLPOSIXPathStyle);
-+            qtconfig = QDir::cleanPath(path);
-+            if (QFile::exists(qtconfig))
-+                return new QSettings(qtconfig, QSettings::IniFormat);
-+        }
-+    }
-+#endif
 +    if (QCoreApplication::instance()) {
 +        QDir pwd(QCoreApplication::applicationDirPath());
 +        qtconfig = pwd.filePath(QLatin1String("qt.conf"));
 +        if (QFile::exists(qtconfig))
 +            return new QSettings(qtconfig, QSettings::IniFormat);
 +    }
-+#endif
 +    return 0;     //no luck
 +}
++#endif
 +
 +QString QStandardPaths::presetLocation(StandardLocation type)
 +{
index ee19679..0946f35 100755 (executable)
@@ -3,8 +3,7 @@ patch -p1 -f -l $* < $0
 exit $?
 
 Taken from MXE
-
-From 12eed60ff166200c12d203d0daaa6c58c41df0ea Mon Sep 17 00:00:00 2001
+From 01ee0b5260f1b83a81769132c0705aab05481641 Mon Sep 17 00:00:00 2001
 From: Ray Donnelly <mingw.android@gmail.com>
 Date: Wed, 26 Aug 2015 12:45:43 +0100
 Subject: [PATCH 1/5] cmake: Rearrange STATIC vs INTERFACE targets
@@ -16,11 +15,11 @@ Source: https://git.io/vzWJz
 See also: https://github.com/mxe/mxe/issues/1185
 
 diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
-index d2358ca..6b1dc95 100644
+index 3ed6dd5889..cc5bc9dc16 100644
 --- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
 +++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
-@@ -222,13 +222,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
-     endif()
+@@ -214,12 +214,12 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+     list(APPEND _Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES \"$${CMAKE_INTERFACE_QT5_MODULE_DEPS}\")
  !!ENDIF
 
 +!!IF equals(TEMPLATE, aux)
@@ -29,21 +28,20 @@ index d2358ca..6b1dc95 100644
  !!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")
- !!ELSE
+-!!ELSE
 -!!IF equals(TEMPLATE, aux)
 -    add_library(Qt5::$${CMAKE_MODULE_NAME} INTERFACE IMPORTED)
--!!ELSE
+ !!ELSE
      add_library(Qt5::$${CMAKE_MODULE_NAME} SHARED IMPORTED)
  !!ENDIF
- !!ENDIF
 --
-2.9.3
+2.19.1
 
 
-From 68f406b40eb3708809c042dfaf41b5366b437308 Mon Sep 17 00:00:00 2001
+From 48723a27c10322a9beff2f84422c757df2639edd Mon Sep 17 00:00:00 2001
 From: Tony Theodore <tonyt@logyst.com>
 Date: Sat, 16 Jul 2016 20:31:07 +1000
-Subject: [PATCH 2/6] Fix pkgconfig file and library naming
+Subject: [PATCH 2/5] Fix pkgconfig file and library naming
 
 See: https://codereview.qt-project.org/#/c/165394/
      https://bugreports.qt.io/browse/QTBUG-30898
@@ -68,10 +66,10 @@ Task-number: 30898
 Change-Id: If75336ec7d21a7ec0cb6d245fe87c64afcb5a644
 
 diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf
-index e6a0d97f1a..5aefea28e5 100644
+index 51b5bde67a..faba17aedd 100644
 --- a/mkspecs/features/qt_module.prf
 +++ b/mkspecs/features/qt_module.prf
-@@ -265,6 +265,10 @@ load(qt_installs)
+@@ -263,6 +263,10 @@ load(qt_installs)
 
  load(qt_targets)
 
@@ -80,12 +78,12 @@ index e6a0d97f1a..5aefea28e5 100644
 +TARGET = $$qt5LibraryTarget($$TARGET$$QT_LIBINFIX)
 +
  # this builds on top of qt_common
- !internal_module:!lib_bundle:if(unix|mingw) {
+ !internal_module:if(unix|mingw) {
      CONFIG += create_pc
-@@ -275,12 +279,12 @@ load(qt_targets)
-         QMAKE_PKGCONFIG_LIBDIR = $$[QT_INSTALL_LIBS/raw]
-     QMAKE_PKGCONFIG_INCDIR = $$[QT_INSTALL_HEADERS/raw]
-     QMAKE_PKGCONFIG_CFLAGS = -D$$MODULE_DEFINE -I${includedir}/$$MODULE_INCNAME
+@@ -278,12 +282,12 @@ load(qt_targets)
+         QMAKE_PKGCONFIG_INCDIR = $$[QT_INSTALL_HEADERS/raw]
+         QMAKE_PKGCONFIG_CFLAGS = -D$$MODULE_DEFINE -I${includedir}/$$MODULE_INCNAME
+     }
 -    QMAKE_PKGCONFIG_NAME = $$replace(TARGET, ^Qt, "Qt$$QT_MAJOR_VERSION ")
 -    QMAKE_PKGCONFIG_FILE = $$replace(TARGET, ^Qt, Qt$$QT_MAJOR_VERSION)
 +    QMAKE_PKGCONFIG_NAME = $$replace(TARGET, ^Qt$$QT_MAJOR_VERSION, "Qt$$QT_MAJOR_VERSION ")
@@ -99,84 +97,86 @@ index e6a0d97f1a..5aefea28e5 100644
      pclib_replace.match = $$lib_replace.match
      !isEmpty(lib_replace.replace): \
          pclib_replace.replace = $$QMAKE_PKGCONFIG_LIBDIR
-@@ -314,5 +318,3 @@ win32 {
+@@ -317,5 +321,3 @@ win32 {
      # On other platforms, Qt's own compilation goes needs to compile the Qt 5.0 API
      DEFINES *= QT_DISABLE_DEPRECATED_BEFORE=0x050000
  }
 -
 -TARGET = $$qt5LibraryTarget($$TARGET$$QT_LIBINFIX)  # Do this towards the end
 --
-2.14.1
+2.19.1
 
 
-From d0ccaee377241a6b661ccb9a6d57ebc694b50f76 Mon Sep 17 00:00:00 2001
+From 6a7989a069a7aa88e898c4f68bd753b480af0cdf Mon Sep 17 00:00:00 2001
 From: Mark Brand <mabrand@mabrand.nl>
 Date: Sun, 29 Jan 2017 13:02:16 +0100
-Subject: [PATCH 3/6] reenable fontconfig for win32 (MXE-specific)
+Subject: [PATCH 3/5] reenable fontconfig for win32 (MXE-specific)
 
 Change-Id: I05b036366bd402e43309742412bcf8ca91fe125f
 
 diff --git a/src/gui/configure.json b/src/gui/configure.json
-index dab66fafb4..b90ce6e4d9 100644
+index 89934c8f1d..456643a22c 100644
 --- a/src/gui/configure.json
 +++ b/src/gui/configure.json
-@@ -956,7 +956,7 @@
-         },
+@@ -1209,7 +1209,7 @@
          "fontconfig": {
              "label": "Fontconfig",
--            "condition": "!config.win32 && !config.darwin && features.system-freetype && libs.fontconfig",
-+            "condition": "!config.darwin && features.system-freetype && libs.fontconfig",
+             "autoDetect": "!config.darwin",
+-            "condition": "!config.win32 && features.system-freetype && libs.fontconfig",
++            "condition": "features.system-freetype && libs.fontconfig",
              "output": [ "privateFeature", "feature" ]
          },
          "gbm": {
 diff --git a/src/plugins/platforms/minimal/qminimalintegration.cpp b/src/plugins/platforms/minimal/qminimalintegration.cpp
-index ca33689cd7..194523eee0 100644
+index 0c04608fca..a26e02fbf3 100644
 --- a/src/plugins/platforms/minimal/qminimalintegration.cpp
 +++ b/src/plugins/platforms/minimal/qminimalintegration.cpp
-@@ -130,7 +130,11 @@ QPlatformFontDatabase *QMinimalIntegration::fontDatabase() const
- {
-     if (!m_fontDatabase && (m_options & EnableFonts)) {
+@@ -161,7 +161,11 @@ QPlatformFontDatabase *QMinimalIntegration::fontDatabase() const
+
+         if (!m_fontDatabase) {
  #if QT_CONFIG(fontconfig)
+-            m_fontDatabase = new QGenericUnixFontDatabase;
 +#ifdef Q_OS_WIN
 +        m_fontDatabase = new QFreeTypeFontDatabase;
 +#else
-         m_fontDatabase = new QGenericUnixFontDatabase;
++        m_fontDatabase = new QGenericUnixFontDatabase;
 +#endif
- #elif defined(Q_OS_WINRT)
-         m_fontDatabase = new QWinRTFontDatabase;
- #elif defined(Q_OS_WIN)
+ #else
+             m_fontDatabase = QPlatformIntegration::fontDatabase();
+ #endif
 --
-2.14.1
+2.19.1
 
 
-From 35e8ce1f490f973045c77385f96acaa3736c8787 Mon Sep 17 00:00:00 2001
+From dbe7086a860dc8aac17ed5d76bc45d605a19ac02 Mon Sep 17 00:00:00 2001
 From: Mark Brand <mabrand@mabrand.nl>
-Date: Sun, 29 Jan 2017 16:22:03 +0100
-Subject: [PATCH 4/6] fix treatment of SYBASE_LIBS
-
-Change-Id: I4c9914cf7ef9d91feb0718a57f2551c1eeed47e0
-
-diff --git a/src/plugins/sqldrivers/configure.pri b/src/plugins/sqldrivers/configure.pri
-index b69b51b679..d37423adbd 100644
---- a/src/plugins/sqldrivers/configure.pri
-+++ b/src/plugins/sqldrivers/configure.pri
-@@ -92,7 +92,7 @@ defineTest(qtConfLibrary_sybaseEnv) {
-         libs += "-L$${sybase}/lib"
-     libs += $$getenv(SYBASE_LIBS)
-     !isEmpty(libs) {
--        $${1}.libs = "$$val_escape(libs)"
-+        $${1}.libs = $$libs
-         export($${1}.libs)
-     }
-     return(true)
+Date: Sun, 11 Jun 2017 00:27:41 +0200
+Subject: [PATCH 4/5] use pkg-config for harfbuzz
+
+Change-Id: Ia65cbb90fd180f1bc10ce077a9a8323a48e51421
+
+diff --git a/src/gui/configure.json b/src/gui/configure.json
+index 456643a22c..f36e15603b 100644
+--- a/src/gui/configure.json
++++ b/src/gui/configure.json
+@@ -301,7 +301,8 @@
+             },
+             "headers": "harfbuzz/hb.h",
+             "sources": [
+-                "-lharfbuzz"
++               { "type": "pkgConfig", "args": "harfbuzz" },
++               "-lharfbuzz"
+             ]
+         },
+         "imf": {
 --
-2.14.1
+2.19.1
 
 
-From 8427c411a789c537b41d113d1f8f9ea7eb9d009a Mon Sep 17 00:00:00 2001
+From 2f96f49ffa2e4b42bb35da9304bba971cfcc1475 Mon Sep 17 00:00:00 2001
 From: Mark Brand <mabrand@mabrand.nl>
 Date: Thu, 23 Nov 2017 11:28:47 +0200
-Subject: [PATCH 6/6] disable qt_random_cpu for i686-w64-mingw32
+Subject: [PATCH 5/5] disable qt_random_cpu for i686-w64-mingw32
 
 Workaround for gcc internal error compiling for mingw32:
     global/qrandom.cpp: In function 'qsizetype qt_random_cpu(void*, qsizetype)':
@@ -194,10 +194,10 @@ Based on https://codereview.qt-project.org/#/c/212360/
 Change-Id: Ia1c902e7b147bdda2b8d7904b40a3b968b8d0369
 
 diff --git a/src/corelib/global/qrandom.cpp b/src/corelib/global/qrandom.cpp
-index 72ba299280..90a0f378ff 100644
+index 6195c324e7..94902bcfc2 100644
 --- a/src/corelib/global/qrandom.cpp
 +++ b/src/corelib/global/qrandom.cpp
-@@ -92,7 +92,7 @@ DECLSPEC_IMPORT BOOLEAN WINAPI SystemFunction036(PVOID RandomBuffer, ULONG Rando
+@@ -90,7 +90,7 @@ DECLSPEC_IMPORT BOOLEAN WINAPI SystemFunction036(PVOID RandomBuffer, ULONG Rando
 
  QT_BEGIN_NAMESPACE
 
@@ -207,4 +207,4 @@ index 72ba299280..90a0f378ff 100644
 
  #  ifdef Q_PROCESSOR_X86_64
 --
-2.14.1
+2.19.1