diff --git a/SOURCES/0001-Do-not-load-plugin-from-the-PWD.patch b/SOURCES/0001-Do-not-load-plugin-from-the-PWD.patch new file mode 100644 index 0000000..3533d5a --- /dev/null +++ b/SOURCES/0001-Do-not-load-plugin-from-the-PWD.patch @@ -0,0 +1,33 @@ +From 2e02b383e03c30f53ff613e431e8fe1d063d5502 Mon Sep 17 00:00:00 2001 +From: Olivier Goffart +Date: Fri, 8 Nov 2019 11:30:40 +0100 +Subject: [PATCH] Do not load plugin from the $PWD + +I see no reason why this would make sense to look for plugins in the current +directory. And when there are plugins there, it may actually be wrong + +Change-Id: I5f5aa168021fedddafce90effde0d5762cd0c4c5 +Reviewed-by: Thiago Macieira +(cherry picked from commit bf131e8d2181b3404f5293546ed390999f760404) +Reviewed-by: Volker Hilsheimer +(cherry picked from commit 52b739776daecf80a8276b49c9e4337e018d8e8b) +Reviewed-by: Olivier Goffart (Woboq GmbH) +--- + src/corelib/plugin/qpluginloader.cpp | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/src/corelib/plugin/qpluginloader.cpp b/src/corelib/plugin/qpluginloader.cpp +index aab00cc7eb..15b8654391 100644 +--- a/src/corelib/plugin/qpluginloader.cpp ++++ b/src/corelib/plugin/qpluginloader.cpp +@@ -304,7 +304,6 @@ static QString locatePlugin(const QString& fileName) + paths.append(fileName.left(slash)); // don't include the '/' + } else { + paths = QCoreApplication::libraryPaths(); +- paths.prepend(QStringLiteral(".")); // search in current dir first + } + + for (const QString &path : qAsConst(paths)) { +-- +2.24.1 + diff --git a/SOURCES/0001-QLibrary-Unix-do-not-attempt-to-load-a-library-relat.patch b/SOURCES/0001-QLibrary-Unix-do-not-attempt-to-load-a-library-relat.patch new file mode 100644 index 0000000..541f038 --- /dev/null +++ b/SOURCES/0001-QLibrary-Unix-do-not-attempt-to-load-a-library-relat.patch @@ -0,0 +1,21 @@ +diff -up qtbase-everywhere-src-5.13.2/src/corelib/plugin/qlibrary_unix.cpp.QLibrary-Unix-do-not-attempt-to-load-a-library-relat qtbase-everywhere-src-5.13.2/src/corelib/plugin/qlibrary_unix.cpp +--- qtbase-everywhere-src-5.13.2/src/corelib/plugin/qlibrary_unix.cpp.QLibrary-Unix-do-not-attempt-to-load-a-library-relat 2019-10-25 09:16:48.000000000 +0200 ++++ qtbase-everywhere-src-5.13.2/src/corelib/plugin/qlibrary_unix.cpp 2020-01-20 10:49:23.619299927 +0100 +@@ -1,7 +1,7 @@ + /**************************************************************************** + ** + ** Copyright (C) 2016 The Qt Company Ltd. +-** Copyright (C) 2018 Intel Corporation ++** Copyright (C) 2020 Intel Corporation + ** Contact: https://www.qt.io/licensing/ + ** + ** This file is part of the QtCore module of the Qt Toolkit. +@@ -208,6 +208,8 @@ bool QLibraryPrivate::load_sys() + for(int suffix = 0; retry && !pHnd && suffix < suffixes.size(); suffix++) { + if (!prefixes.at(prefix).isEmpty() && name.startsWith(prefixes.at(prefix))) + continue; ++ if (path.isEmpty() && prefixes.at(prefix).contains(QLatin1Char('/'))) ++ continue; + if (!suffixes.at(suffix).isEmpty() && name.endsWith(suffixes.at(suffix))) + continue; + if (loadHints & QLibrary::LoadArchiveMemberHint) { diff --git a/SOURCES/10-qt5-check-opengl2.sh b/SOURCES/10-qt5-check-opengl2.sh index 4601542..57071d4 100755 --- a/SOURCES/10-qt5-check-opengl2.sh +++ b/SOURCES/10-qt5-check-opengl2.sh @@ -1,6 +1,6 @@ #!/bin/bash -if [ -z "${QT_XCB_FORCE_SOFTWARE_OPENGL-}" ]; then +if [ -z "$QT_XCB_FORCE_SOFTWARE_OPENGL" ]; then QT5_CHECK_OPENGL_VERSION=`LANG=C glxinfo 2> /dev/null | grep '^OpenGL version string: ' | head -n 1 | sed -e 's/^OpenGL version string: \([0-9]\).*$/\1/g'` ||: diff --git a/SOURCES/macros.qt5-qtbase b/SOURCES/macros.qt5-qtbase new file mode 100644 index 0000000..836471f --- /dev/null +++ b/SOURCES/macros.qt5-qtbase @@ -0,0 +1,4 @@ +%_qt5 @@NAME@@ +%_qt5_epoch @@EPOCH@@ +%_qt5_version @@VERSION@@ +%_qt5_evr @@EVR@@ diff --git a/SOURCES/qt5-qtbase-5.12.1-firebird.patch b/SOURCES/qt5-qtbase-5.12.1-firebird.patch new file mode 100644 index 0000000..674a5b5 --- /dev/null +++ b/SOURCES/qt5-qtbase-5.12.1-firebird.patch @@ -0,0 +1,29 @@ +diff -up qtbase-everywhere-src-5.12.1/src/plugins/sqldrivers/configure.json.firebird qtbase-everywhere-src-5.12.1/src/plugins/sqldrivers/configure.json +--- qtbase-everywhere-src-5.12.1/src/plugins/sqldrivers/configure.json.firebird 2019-01-28 11:11:52.000000000 -0600 ++++ qtbase-everywhere-src-5.12.1/src/plugins/sqldrivers/configure.json 2019-02-03 13:41:27.392305128 -0600 +@@ -49,10 +49,11 @@ + "ibase": { + "label": "InterBase", + "test": {}, +- "headers": "ibase.h", ++ "headers": "firebird/ibase.h", + "sources": [ + { "libs": "-lgds32_ms", "condition": "config.win32" }, +- { "libs": "-lgds", "condition": "!config.win32" } ++ { "libs": "-lgds", "condition": "!config.win32" }, ++ { "libs": "-lfbclient", "condition": "!config.win32" } + ] + }, + "mysql": { +diff -up qtbase-everywhere-src-5.12.1/src/plugins/sqldrivers/ibase/qsql_ibase_p.h.firebird qtbase-everywhere-src-5.12.1/src/plugins/sqldrivers/ibase/qsql_ibase_p.h +--- qtbase-everywhere-src-5.12.1/src/plugins/sqldrivers/ibase/qsql_ibase_p.h.firebird 2019-01-28 11:11:52.000000000 -0600 ++++ qtbase-everywhere-src-5.12.1/src/plugins/sqldrivers/ibase/qsql_ibase_p.h 2019-02-03 13:27:30.683142996 -0600 +@@ -52,7 +52,7 @@ + // + + #include +-#include ++#include + + #ifdef QT_PLUGIN + #define Q_EXPORT_SQLDRIVER_IBASE diff --git a/SOURCES/qtbase-everywhere-src-5.11.1-python3.patch b/SOURCES/qtbase-everywhere-src-5.11.1-python3.patch new file mode 100644 index 0000000..40dfd47 --- /dev/null +++ b/SOURCES/qtbase-everywhere-src-5.11.1-python3.patch @@ -0,0 +1,9 @@ +diff -up qtbase-everywhere-src-5.11.1/mkspecs/features/uikit/devices.py.me qtbase-everywhere-src-5.11.1/mkspecs/features/uikit/devices.py +--- qtbase-everywhere-src-5.11.1/mkspecs/features/uikit/devices.py.me 2018-06-23 11:29:21.750066271 +0200 ++++ qtbase-everywhere-src-5.11.1/mkspecs/features/uikit/devices.py 2018-06-23 11:30:07.457292033 +0200 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/python3 + + ############################################################################# + ## diff --git a/SOURCES/qtbase-everywhere-src-5.12.1-qt5gui_cmake_isystem_includes.patch b/SOURCES/qtbase-everywhere-src-5.12.1-qt5gui_cmake_isystem_includes.patch new file mode 100644 index 0000000..ff00e63 --- /dev/null +++ b/SOURCES/qtbase-everywhere-src-5.12.1-qt5gui_cmake_isystem_includes.patch @@ -0,0 +1,14 @@ +diff -up qtbase-everywhere-src-5.12.1/src/gui/Qt5GuiConfigExtras.cmake.in.foo qtbase-everywhere-src-5.12.1/src/gui/Qt5GuiConfigExtras.cmake.in +--- qtbase-everywhere-src-5.12.1/src/gui/Qt5GuiConfigExtras.cmake.in.foo 2019-04-30 15:18:24.886346423 -0500 ++++ qtbase-everywhere-src-5.12.1/src/gui/Qt5GuiConfigExtras.cmake.in 2019-04-30 15:19:48.303873296 -0500 +@@ -66,8 +66,10 @@ unset(_GL_INCDIRS) + # Don\'t check for existence of the "_qt5gui_OPENGL_INCLUDE_DIR" because it is + # optional. + ++if (NOT ${_qt5gui_OPENGL_INCLUDE_DIR} STREQUAL "/usr/include") + list(APPEND Qt5Gui_INCLUDE_DIRS ${_qt5gui_OPENGL_INCLUDE_DIR}) + set_property(TARGET Qt5::Gui APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${_qt5gui_OPENGL_INCLUDE_DIR}) ++endif() + + unset(_qt5gui_OPENGL_INCLUDE_DIR CACHE) + diff --git a/SOURCES/qtbase-hidpi_scale_at_192.patch b/SOURCES/qtbase-hidpi_scale_at_192.patch index c6c377d..c8139f6 100644 --- a/SOURCES/qtbase-hidpi_scale_at_192.patch +++ b/SOURCES/qtbase-hidpi_scale_at_192.patch @@ -1,13 +1,12 @@ -diff --git a/src/plugins/platforms/xcb/qxcbscreen.cpp b/src/plugins/platforms/xcb/qxcbscreen.cpp -index 5e136b5..0ad2842 100644 ---- a/src/plugins/platforms/xcb/qxcbscreen.cpp -+++ b/src/plugins/platforms/xcb/qxcbscreen.cpp -@@ -620,7 +620,7 @@ void QXcbScreen::updateGeometry(const QRect &geom, uint8_t rotation) - m_sizeMillimeters = sizeInMillimeters(xGeometry.size(), virtualDpi()); - - qreal dpi = xGeometry.width() / physicalSize().width() * qreal(25.4); -- m_pixelDensity = qMax(1, qRound(dpi/96)); -+ m_pixelDensity = qMax(1, (int) (dpi/96)); // instead of rounding at 1.5, round at 2.0 (same as GNOME) - m_geometry = QRect(xGeometry.topLeft(), xGeometry.size()); - m_availableGeometry = xGeometry & m_virtualDesktop->workArea(); +diff -up qtbase-everywhere-src-5.12.1/src/plugins/platforms/xcb/qxcbscreen.cpp.hidpi_scale_at_192 qtbase-everywhere-src-5.12.1/src/plugins/platforms/xcb/qxcbscreen.cpp +--- qtbase-everywhere-src-5.12.1/src/plugins/platforms/xcb/qxcbscreen.cpp.hidpi_scale_at_192 2019-02-03 13:21:27.866906481 -0600 ++++ qtbase-everywhere-src-5.12.1/src/plugins/platforms/xcb/qxcbscreen.cpp 2019-02-03 13:23:47.554767565 -0600 +@@ -744,7 +744,7 @@ void QXcbScreen::updateGeometry(const QR + // Use 128 as a reference DPI on small screens. This favors "small UI" over "large UI". + qreal referenceDpi = physicalSize().width() <= 320 ? 128 : 96; + +- m_pixelDensity = qMax(1, qRound(dpi/referenceDpi)); ++ m_pixelDensity = qMax(1, (int) (dpi/referenceDpi)); //instead of rounding at 1.5, round at 2.0 (same as GNOME) + m_geometry = geometry; + m_availableGeometry = geometry & m_virtualDesktop->workArea(); QWindowSystemInterface::handleScreenGeometryChange(QPlatformScreen::screen(), m_geometry, m_availableGeometry); diff --git a/SOURCES/qtbase-opensource-src-5.3.2-QTBUG-35459.patch b/SOURCES/qtbase-opensource-src-5.3.2-QTBUG-35459.patch new file mode 100644 index 0000000..e156250 --- /dev/null +++ b/SOURCES/qtbase-opensource-src-5.3.2-QTBUG-35459.patch @@ -0,0 +1,13 @@ +diff -up qtbase-opensource-src-5.3.2/src/xml/sax/qxml.cpp.QTBUG-35459 qtbase-opensource-src-5.3.2/src/xml/sax/qxml.cpp +diff -up qtbase-opensource-src-5.3.2/src/xml/sax/qxml_p.h.QTBUG-35459 qtbase-opensource-src-5.3.2/src/xml/sax/qxml_p.h +--- qtbase-opensource-src-5.3.2/src/xml/sax/qxml_p.h.QTBUG-35459 2014-09-11 05:48:05.000000000 -0500 ++++ qtbase-opensource-src-5.3.2/src/xml/sax/qxml_p.h 2014-09-16 09:35:01.189255615 -0500 +@@ -223,7 +223,7 @@ private: + // for the DTD currently being parsed. + static const int dtdRecursionLimit = 2; + // The maximum amount of characters an entity value may contain, after expansion. +- static const int entityCharacterLimit = 1024; ++ static const int entityCharacterLimit = 4096; + + const QString &string(); + void stringClear(); diff --git a/SOURCES/qtbase-qmake_LFLAGS.patch b/SOURCES/qtbase-qmake_LFLAGS.patch new file mode 100644 index 0000000..fbb37dd --- /dev/null +++ b/SOURCES/qtbase-qmake_LFLAGS.patch @@ -0,0 +1,12 @@ +diff -up qtbase-everywhere-src-5.10.1/qmake/Makefile.unix.qmake_LFLAGS qtbase-everywhere-src-5.10.1/qmake/Makefile.unix +--- qtbase-everywhere-src-5.10.1/qmake/Makefile.unix.qmake_LFLAGS 2018-02-08 12:24:48.000000000 -0600 ++++ qtbase-everywhere-src-5.10.1/qmake/Makefile.unix 2018-02-15 10:25:07.077763061 -0600 +@@ -142,7 +142,7 @@ CPPFLAGS = -g $(EXTRA_CPPFLAGS) \ + -DQT_NO_FOREACH + + CXXFLAGS = $(EXTRA_CXXFLAGS) $(CONFIG_CXXFLAGS) $(CPPFLAGS) +-LFLAGS = $(EXTRA_LFLAGS) $(CONFIG_LFLAGS) ++LFLAGS = $(EXTRA_LFLAGS) $(CONFIG_LFLAGS) $(QMAKE_LFLAGS_RELEASE) + + first all: $(BUILD_PATH)/bin/qmake$(EXEEXT) + qmake: $(BUILD_PATH)/bin/qmake$(EXEEXT) diff --git a/SOURCES/qtbase-use-wayland-on-gnome.patch b/SOURCES/qtbase-use-wayland-on-gnome.patch new file mode 100644 index 0000000..526963c --- /dev/null +++ b/SOURCES/qtbase-use-wayland-on-gnome.patch @@ -0,0 +1,20 @@ +diff --git a/src/gui/kernel/qguiapplication.cpp b/src/gui/kernel/qguiapplication.cpp +index b8bfad4f16..676fdfad5e 100644 +--- a/src/gui/kernel/qguiapplication.cpp ++++ b/src/gui/kernel/qguiapplication.cpp +@@ -1376,14 +1376,7 @@ void QGuiApplicationPrivate::createPlatformIntegration() + if (sessionType == QByteArrayLiteral("x11") && !platformName.contains(QByteArrayLiteral("xcb"))) { + platformName = QByteArrayLiteral("xcb"); + } else if (sessionType == QByteArrayLiteral("wayland") && !platformName.contains(QByteArrayLiteral("wayland"))) { +- QByteArray currentDesktop = qgetenv("XDG_CURRENT_DESKTOP").toLower(); +- QByteArray sessionDesktop = qgetenv("XDG_SESSION_DESKTOP").toLower(); +- if (currentDesktop.contains("gnome") || sessionDesktop.contains("gnome")) { +- qInfo() << "Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome." +- << "Use QT_QPA_PLATFORM=wayland to run on Wayland anyway."; +- } else { +- platformName = QByteArrayLiteral("wayland"); +- } ++ platformName = QByteArrayLiteral("wayland"); + } + } + #ifdef QT_QPA_DEFAULT_PLATFORM_NAME diff --git a/SOURCES/qtlogging.ini b/SOURCES/qtlogging.ini index be2bf22..ead33b6 100644 --- a/SOURCES/qtlogging.ini +++ b/SOURCES/qtlogging.ini @@ -1,2 +1,3 @@ [Rules] *.debug=false +qt.qpa.xcb.xcberror.warning=false diff --git a/SOURCES/tell-the-truth-about-private-api.patch b/SOURCES/tell-the-truth-about-private-api.patch new file mode 100644 index 0000000..2dbced4 --- /dev/null +++ b/SOURCES/tell-the-truth-about-private-api.patch @@ -0,0 +1,16 @@ +diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf +index e6a0d97..cf93041 100644 +--- a/mkspecs/features/qt_module.prf ++++ b/mkspecs/features/qt_module.prf +@@ -216,9 +216,9 @@ android: CONFIG += qt_android_deps no_linker_version_script + QMAKE_LFLAGS += $${QMAKE_LFLAGS_VERSION_SCRIPT}$$verscript + + internal_module { +- verscript_content = "Qt_$${QT_MAJOR_VERSION}_PRIVATE_API { *; };" ++ verscript_content = "Qt_$${QT_MAJOR_VERSION}.$${QT_MINOR_VERSION}.$${QT_PATCH_VERSION}_PRIVATE_API { *; };" + } else { +- verscript_content = "Qt_$${QT_MAJOR_VERSION}_PRIVATE_API {" \ ++ verscript_content = "Qt_$${QT_MAJOR_VERSION}.$${QT_MINOR_VERSION}.$${QT_PATCH_VERSION}_PRIVATE_API {" \ + " qt_private_api_tag*;" + + private_api_headers = $$SYNCQT.PRIVATE_HEADER_FILES $$SYNCQT.QPA_HEADER_FILES diff --git a/SOURCES/xcberror_filter.patch b/SOURCES/xcberror_filter.patch new file mode 100644 index 0000000..76ee7e8 --- /dev/null +++ b/SOURCES/xcberror_filter.patch @@ -0,0 +1,41 @@ +From 911762e077c8b2f9795171c1e628942a0a979801 Mon Sep 17 00:00:00 2001 +From: Jan Grulich +Date: Fri, 15 Dec 2017 11:56:12 +0100 +Subject: foo + + +diff --git a/src/plugins/platforms/xcb/qxcbconnection.cpp b/src/plugins/platforms/xcb/qxcbconnection.cpp +index 536c709..c6eb1b1 100644 +--- a/src/plugins/platforms/xcb/qxcbconnection.cpp ++++ b/src/plugins/platforms/xcb/qxcbconnection.cpp +@@ -111,6 +111,8 @@ Q_LOGGING_CATEGORY(lcQpaXInputEvents, "qt.qpa.input.events") + Q_LOGGING_CATEGORY(lcQpaScreen, "qt.qpa.screen") + Q_LOGGING_CATEGORY(lcQpaEvents, "qt.qpa.events") + Q_LOGGING_CATEGORY(lcQpaXcb, "qt.qpa.xcb") // for general (uncategorized) XCB logging ++Q_LOGGING_CATEGORY(lcQpaXcbError, "qt.qpa.xcb.xcberror") ++// TODO: How to categorize by xcberror type? (e.g. only BadWindow) + Q_LOGGING_CATEGORY(lcQpaPeeker, "qt.qpa.peeker") + + // this event type was added in libxcb 1.10, +@@ -964,7 +966,8 @@ void QXcbConnection::handleXcbError(xcb_generic_error_t *error) + uint clamped_error_code = qMin(error->error_code, (sizeof(xcb_errors) / sizeof(xcb_errors[0])) - 1); + uint clamped_major_code = qMin(error->major_code, (sizeof(xcb_protocol_request_codes) / sizeof(xcb_protocol_request_codes[0])) - 1); + +- qWarning("QXcbConnection: XCB error: %d (%s), sequence: %d, resource id: %d, major code: %d (%s), minor code: %d", ++ qCWarning(lcQpaXcbError, ++ "QXcbConnection: XCB error: %d (%s), sequence: %d, resource id: %d, major code: %d (%s), minor code: %d", + int(error->error_code), xcb_errors[clamped_error_code], + int(error->sequence), int(error->resource_id), + int(error->major_code), xcb_protocol_request_codes[clamped_major_code], +diff --git a/src/plugins/platforms/xcb/qxcbconnection.h b/src/plugins/platforms/xcb/qxcbconnection.h +index 999dc06..554611c 100644 +--- a/src/plugins/platforms/xcb/qxcbconnection.h ++++ b/src/plugins/platforms/xcb/qxcbconnection.h +@@ -91,6 +91,7 @@ Q_DECLARE_LOGGING_CATEGORY(lcQpaXInputEvents) + Q_DECLARE_LOGGING_CATEGORY(lcQpaScreen) + Q_DECLARE_LOGGING_CATEGORY(lcQpaEvents) + Q_DECLARE_LOGGING_CATEGORY(lcQpaXcb) ++Q_DECLARE_LOGGING_CATEGORY(lcQpaXcbError) + Q_DECLARE_LOGGING_CATEGORY(lcQpaPeeker) + + class QXcbVirtualDesktop; diff --git a/SPECS/qt5-qtbase.spec b/SPECS/qt5-qtbase.spec index caff8a3..c946cd0 100644 --- a/SPECS/qt5-qtbase.spec +++ b/SPECS/qt5-qtbase.spec @@ -1,9 +1,28 @@ # See http://bugzilla.redhat.com/223663 -%global multilib_archs %{ix86} %{?mips} ppc64 ppc s390x s390 sparc64 sparcv9 -%global multilib_basearchs %{?mips64} ppc64 s390x sparc64 +%global multilib_archs x86_64 %{ix86} %{?mips} ppc64 ppc s390x s390 sparc64 sparcv9 +%global multilib_basearchs x86_64 %{?mips64} ppc64 s390x sparc64 + +# support openssl-1.1 +%if 0%{?fedora} > 26 +%global openssl11 1 +%endif +%global openssl -openssl-linked + +%if 0%{?fedora} < 29 +%ifarch %{ix86} +%global no_sse2 -no-sse2 +%endif +%endif + +# workaround https://bugzilla.redhat.com/show_bug.cgi?id=1668865 +# for current stable releases +%if 0%{?fedora} && 0%{?fedora} < 30 +%global no_feature_statx -no-feature-statx +%global no_feature_renameat2 -no-feature-renameat2 +%endif # support qtchooser (adds qtchooser .conf file) -%global qtchooser 0 +%global qtchooser 1 %if 0%{?qtchooser} %global priority 10 %ifarch %{multilib_basearchs} @@ -13,56 +32,34 @@ %global platform linux-g++ +%if 0%{?use_clang} +%global platform linux-clang +%endif + %global qt_module qtbase %global rpm_macros_dir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d) -## set to 1 to enable bootstrap -%global bootstrap 0 - -%if 0%{?fedora} > 21 # use external qt_settings pkg %global qt_settings 1 -%endif -# See http://bugzilla.redhat.com/1279265 -%if 0%{?fedora} < 24 -%global inject_optflags 1 -%endif - -%if 0%{?fedora} > 23 || 0%{?rhel} > 6 %global journald -journald BuildRequires: pkgconfig(libsystemd) -%endif - -%if 0%{?fedora} > 23 -# gcc6: FTBFS -%global qt5_deprecated_flag -Wno-deprecated-declarations -# gcc6: Qt assumes this in places -%global qt5_null_flag -fno-delete-null-pointer-checks -%endif - -# define to build docs, need to undef this for bootstrapping -# where qt5-qttools builds are not yet available -# only primary archs (for now), allow secondary to bootstrap -%if ! 0%{?bootstrap} -%ifarch %{arm} %{ix86} x86_64 %{power64} s390 s390x aarch64 -%global docs 1 -%endif %global examples 1 -%global tests 1 -%endif +## skip for now, until we're better at it --rex +#global tests 1 -Summary: Qt5 - QtBase components Name: qt5-qtbase -Version: 5.9.2 -Release: 3%{?dist} +Summary: Qt5 - QtBase components +Version: 5.12.5 +Release: 2%{?dist} # See LGPL_EXCEPTIONS.txt, for exception details License: LGPLv2 with exceptions or GPLv3 with exceptions -Url: http://qt-project.org/ -Source0: http://download.qt.io/official_releases/qt/5.9/%{version}/submodules/%{qt_module}-opensource-src-%{version}.tar.xz +Url: http://qt-project.org/ +%global majmin %(echo %{version} | cut -d. -f1-2) +Source0: https://download.qt.io/official_releases/qt/%{majmin}/%{version}/submodules/%{qt_module}-everywhere-src-%{version}.tar.xz # https://bugzilla.redhat.com/show_bug.cgi?id=1227295 Source1: qtlogging.ini @@ -75,11 +72,20 @@ Source5: qconfig-multilib.h # QT_XCB_FORCE_SOFTWARE_OPENGL for them Source6: 10-qt5-check-opengl2.sh +# macros +Source10: macros.qt5-qtbase + # support multilib optflags Patch2: qtbase-multilib_optflags.patch # fix QTBUG-35459 (too low entityCharacterLimit=1024 for CVE-2013-4549) -Patch4: qtbase-opensource-src-5.6.2-QTBUG-35459.patch +Patch4: qtbase-opensource-src-5.3.2-QTBUG-35459.patch + +# borrowed from opensuse +# track private api via properly versioned symbols +# downside: binaries produced with these differently-versioned symbols are no longer +# compatible with qt-project.org's Qt binary releases. +Patch8: tell-the-truth-about-private-api.patch # upstreamable patches # namespace QT_VERSION_CHECK to workaround major/minor being pre-defined (#1396755) @@ -96,14 +102,39 @@ Patch51: qtbase-hidpi_scale_at_192.patch # 2. Workaround sysmacros.h (pre)defining major/minor a breaking stuff Patch52: qtbase-opensource-src-5.7.1-moc_macros.patch +# CMake generates wrong -isystem /usr/include compilations flags with Qt5::Gui +# https://bugzilla.redhat.com/1704474 +Patch53: qtbase-everywhere-src-5.12.1-qt5gui_cmake_isystem_includes.patch + +# respect QMAKE_LFLAGS_RELEASE when building qmake +Patch54: qtbase-qmake_LFLAGS.patch + # drop -O3 and make -O2 by default Patch61: qt5-qtbase-cxxflag.patch # support firebird version 3.x -Patch62: qt5-qtbase-5.9.1-firebird.patch +Patch64: qt5-qtbase-5.12.1-firebird.patch # fix for new mariadb -Patch63: qtbase-opensource-src-5.9.0-mysql.patch +Patch65: qtbase-opensource-src-5.9.0-mysql.patch + +# use categorized logging for xcb log entries +# https://bugreports.qt.io/browse/QTBUG-55167 +# https://bugzilla.redhat.com/show_bug.cgi?id=1497564 +Patch67: https://bugreports.qt.io/secure/attachment/66353/xcberror_filter.patch + +# python3 +Patch68: qtbase-everywhere-src-5.11.1-python3.patch + +# https://fedoraproject.org/wiki/Changes/Qt_Wayland_By_Default_On_Gnome +# https://bugzilla.redhat.com/show_bug.cgi?id=1732129 +Patch80: qtbase-use-wayland-on-gnome.patch + +# glibc stat + +## upstream patches +Patch100: 0001-Do-not-load-plugin-from-the-PWD.patch +Patch101: 0001-QLibrary-Unix-do-not-attempt-to-load-a-library-relat.patch # Do not check any files in %%{_qt5_plugindir}/platformthemes/ for requires. # Those themes are there for platform integration. If the required libraries are @@ -114,29 +145,6 @@ Patch63: qtbase-opensource-src-5.9.0-mysql.patch # filter plugin provides %global __provides_exclude_from ^%{_qt5_plugindir}/.*\\.so$ -# macros, be mindful to keep sync'd with macros.qt5 -Source10: macros.qt5 -%global _qt5 %{name} -%global _qt5_prefix %{_libdir}/qt5 -%global _qt5_archdatadir %{_libdir}/qt5 -# -devel bindir items (still) conflict with qt4 -# at least until this is all implemented, -# http://lists.qt-project.org/pipermail/development/2012-November/007990.html -%global _qt5_bindir %{_qt5_prefix}/bin -%global _qt5_datadir %{_datadir}/qt5 -%global _qt5_docdir %{_docdir}/qt5 -%global _qt5_examplesdir %{_qt5_prefix}/examples -%global _qt5_headerdir %{_includedir}/qt5 -%global _qt5_importdir %{_qt5_archdatadir}/imports -%global _qt5_libdir %{_libdir} -%global _qt5_libexecdir %{_qt5_archdatadir}/libexec -%global _qt5_plugindir %{_qt5_archdatadir}/plugins -%global _qt5_settingsdir %{_sysconfdir}/xdg -%global _qt5_sysconfdir %{_qt5_settingsdir} -%global _qt5_translationdir %{_datadir}/qt5/translations - -# for %%check -BuildRequires: cmake BuildRequires: cups-devel BuildRequires: desktop-file-utils BuildRequires: findutils @@ -146,6 +154,11 @@ BuildRequires: libtiff-devel BuildRequires: pkgconfig(alsa) # required for -accessibility BuildRequires: pkgconfig(atspi-2) +%if 0%{?use_clang} +BuildRequires: clang >= 3.7.0 +%else +BuildRequires: gcc-c++ +%endif # http://bugzilla.redhat.com/1196359 %if 0%{?fedora} || 0%{?rhel} > 6 %global dbus -dbus-linked @@ -161,11 +174,14 @@ BuildRequires: pkgconfig(libproxy-1.0) BuildRequires: pkgconfig(ice) pkgconfig(sm) BuildRequires: pkgconfig(libpng) BuildRequires: pkgconfig(libudev) -%global openssl -openssl-linked -BuildRequires: pkgconfig(openssl) +%if 0%{?fedora} == 26 +BuildRequires: compat-openssl10-devel +%else +BuildRequires: openssl-devel%{?openssl11: >= 1.1} +%endif BuildRequires: pkgconfig(libpulse) pkgconfig(libpulse-mainloop-glib) %if 0%{?fedora} -%global xkbcommon -system-xkbcommon +#global xkbcommon -system-xkbcommon BuildRequires: pkgconfig(libinput) BuildRequires: pkgconfig(xcb-xkb) >= 1.10 BuildRequires: pkgconfig(xkbcommon) >= 0.4.1 @@ -175,21 +191,26 @@ BuildRequires: pkgconfig(xkbcommon-x11) >= 0.4.1 %if 0%{?rhel} == 6 %global xcb -qt-xcb %endif -%global xkbcommon -qt-xkbcommon +#global xkbcommon -qt-xkbcommon Provides: bundled(libxkbcommon) = 0.4.1 %endif BuildRequires: pkgconfig(xkeyboard-config) %if 0%{?fedora} || 0%{?rhel} > 6 %global egl 1 -BuildRequires: pkgconfig(egl) +#BuildRequires: libEGL-devel BuildRequires: pkgconfig(gbm) +## TODO: apparently only needed if building opengl_es2 support, do we actually use it? -- rex +## this dep was removed in rawhide with introduction of mesa-19.1 +%if 0%{?fedora} < 30 BuildRequires: pkgconfig(glesv2) +%endif %global sqlite -system-sqlite BuildRequires: pkgconfig(sqlite3) >= 3.7 %if 0%{?fedora} > 22 %global harfbuzz -system-harfbuzz BuildRequires: pkgconfig(harfbuzz) >= 0.9.42 %endif +BuildRequires: pkgconfig(icu-i18n) BuildRequires: pkgconfig(libpcre2-posix) >= 10.20 BuildRequires: pkgconfig(libpcre) >= 8.0 %global pcre -system-pcre @@ -200,6 +221,10 @@ BuildRequires: libicu-devel %endif BuildRequires: pkgconfig(xcb) pkgconfig(xcb-glx) pkgconfig(xcb-icccm) pkgconfig(xcb-image) pkgconfig(xcb-keysyms) pkgconfig(xcb-renderutil) BuildRequires: pkgconfig(zlib) +#BuildRequires: perl-generators +# see patch68 +BuildRequires: python3 +BuildRequires: qt5-rpm-macros %if 0%{?tests} BuildRequires: dbus-x11 @@ -208,12 +233,6 @@ BuildRequires: time BuildRequires: xorg-x11-server-Xvfb %endif -# For the very first bootstrap of 5.6 we need valgring for now, as qt5-qdoc brand new -# splitted package script still using it -%ifnarch s390 -BuildRequires: valgrind -%endif - %if 0%{?qtchooser} %if 0%{?fedora} Conflicts: qt < 1:4.8.6-10 @@ -232,6 +251,13 @@ Requires: %{name}-common = %{version}-%{release} %global tds -no-sql-tds %endif +# workaround gold linker bug(s) by not using it +# https://bugzilla.redhat.com/1458003 +# https://sourceware.org/bugzilla/show_bug.cgi?id=21074 +# reportedly fixed or worked-around, re-enable if there's evidence of problems -- rex +# https://bugzilla.redhat.com/show_bug.cgi?id=1635973 +%global use_gold_linker -no-use-gold-linker + %description Qt is a software toolkit for developing applications. @@ -240,6 +266,9 @@ handling. %package common Summary: Common files for Qt5 +# offer upgrade path for qtquick1 somewhere... may as well be here -- rex +Obsoletes: qt5-qtquick1 < 5.9.0 +Obsoletes: qt5-qtquick1-devel < 5.9.0 Requires: %{name} = %{version}-%{release} BuildArch: noarch %description common @@ -247,33 +276,33 @@ BuildArch: noarch %package devel Summary: Development files for %{name} -Provides: %{name}-private-devel = %{version}-%{release} Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{name}-gui%{?_isa} %if 0%{?egl} -Requires: pkgconfig(egl) +#Requires: libEGL-devel %endif Requires: pkgconfig(gl) Requires: qt5-rpm-macros +%if 0%{?use_clang} +Requires: clang >= 3.7.0 +%endif %description devel %{summary}. -%if 0%{?docs} -%package doc -Summary: API documentation for %{name} -License: GFDL -Requires: %{name} = %{version}-%{release} -BuildRequires: qt5-qhelpgenerator -BuildRequires: qt5-qdoc -## noarch build currently FTBFS, see https://bugzilla.redhat.com/1437522 -# BuildArch: noarch -%description doc +%package private-devel +Summary: Development files for %{name} private APIs +# upgrade path, when private-devel was introduced +Obsoletes: %{name}-devel < 5.12.1-3 +Requires: %{name}-devel%{?_isa} = %{version}-%{release} +# QtPrintSupport/private requires cups/ppd.h +Requires: cups-devel +%description private-devel %{summary}. -%endif %package examples Summary: Programming examples for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} + %description examples %{summary}. @@ -287,6 +316,7 @@ Requires: pkgconfig(libinput) Requires: pkgconfig(xkbcommon) %endif Requires: pkgconfig(zlib) + %description static %{summary}. @@ -301,7 +331,11 @@ Requires: %{name}%{?_isa} = %{version}-%{release} %package mysql Summary: MySQL driver for Qt5's SQL classes +%if 0%{?fedora} > 27 +BuildRequires: mariadb-connector-c-devel +%else BuildRequires: mysql-devel +%endif Requires: %{name}%{?_isa} = %{version}-%{release} %description mysql %{summary}. @@ -315,7 +349,7 @@ Requires: %{name}%{?_isa} = %{version}-%{release} %package postgresql Summary: PostgreSQL driver for Qt5's SQL classes -BuildRequires: postgresql-devel +BuildRequires: libpq-devel Requires: %{name}%{?_isa} = %{version}-%{release} %description postgresql %{summary}. @@ -344,48 +378,37 @@ Requires: glx-utils %description gui Qt5 libraries used for drawing widgets and OpenGL items. -%package -n qt5-rpm-macros -Summary: RPM macros for Qt5 -%if 0%{?fedora} > 22 && 0%{?inject_optflags} -# https://bugzilla.redhat.com/show_bug.cgi?id=1248174 -Requires: redhat-rpm-config -%endif -# when qt5-rpm-macros was split out -Conflicts: qt5-qtbase-devel < 5.6.0-0.23 -BuildArch: noarch -%description -n qt5-rpm-macros -RPM macros for building Qt5 packages. - %prep -%setup -q -n %{qt_module}-opensource-src-%{version} +%setup -q -n %{qt_module}-everywhere-src-%{version} + +## upstream fixes %patch4 -p1 -b .QTBUG-35459 +# omit '-b .tell-the-truth-about-private-api' so it doesn't end up in installed files -- rdieter +%patch8 -p1 %patch50 -p1 -b .QT_VERSION_CHECK %patch51 -p1 -b .hidpi_scale_at_192 %patch52 -p1 -b .moc_macros +%patch53 -p1 -b .qt5gui_cmake_isystem_includes +%patch54 -p1 -b .qmake_LFLAGS %patch61 -p1 -b .qt5-qtbase-cxxflag -%patch62 -p1 -b .firebird -%patch63 -p1 -b .mysql - -%if 0%{?inject_optflags} -## adjust $RPM_OPT_FLAGS - -%patch2 -p1 -b .multilib_optflags -# drop backup file(s), else they get installed too, http://bugzilla.redhat.com/639463 -rm -fv mkspecs/linux-g++*/qmake.conf.multilib-optflags - -sed -i -e "s|-O2|$RPM_OPT_FLAGS|g" \ - mkspecs/%{platform}/qmake.conf - -sed -i -e "s|^\(QMAKE_LFLAGS_RELEASE.*\)|\1 $RPM_LD_FLAGS|" \ - mkspecs/common/g++-unix.conf +%patch64 -p1 -b .firebird +%if 0%{?fedora} > 27 +%patch65 -p1 -b .mysql +%endif +# FIXME/REBASE +#patch67 -p1 -b .xcberror_filter +%patch68 -p1 -# undefine QMAKE_STRIP (and friends), so we get useful -debuginfo pkgs (#1065636) -sed -i -e 's|^\(QMAKE_STRIP.*=\).*$|\1|g' mkspecs/common/linux.conf +%if 0%{?fedora} > 30 +%patch80 -p1 -b .use-wayland-on-gnome.patch %endif +## upstream patches +%patch100 -p1 -b .Do-not-load-plugin-from-the-PWD.patch +%patch101 -p1 -b .QLibrary-Unix-do-not-attempt-to-load-a-library-relative-to-PWD # move some bundled libs to ensure they're not accidentally used pushd src/3rdparty @@ -410,23 +433,27 @@ sed -i -e "s|^#!/usr/bin/env perl$|#!%{__perl}|" \ bin/syncqt.pl \ mkspecs/features/data/unix/findclasslist.pl -# Fix missing private includes https://bugreports.qt.io/browse/QTBUG-37417 -sed -e '/CMAKE_NO_PRIVATE_INCLUDES\ \=\ true/d' -i \ - mkspecs/features/create_cmake.prf - %build +## FIXME/TODO: +# * for %%ix86, add sse2 enabled builds for Qt5Gui, Qt5Core, QtNetwork, see also: +# http://anonscm.debian.org/cgit/pkg-kde/qt/qtbase.git/tree/debian/rules (234-249) + ## adjust $RPM_OPT_FLAGS # remove -fexceptions RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS | sed 's|-fexceptions||g'` RPM_OPT_FLAGS="$RPM_OPT_FLAGS %{?qt5_arm_flag} %{?qt5_deprecated_flag} %{?qt5_null_flag}" +%if 0%{?use_clang} +RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS | sed 's|-fno-delete-null-pointer-checks||g'` +%endif + export CFLAGS="$CFLAGS $RPM_OPT_FLAGS" export CXXFLAGS="$CXXFLAGS $RPM_OPT_FLAGS" export LDFLAGS="$LDFLAGS $RPM_LD_FLAGS" export MAKEFLAGS="%{?_smp_mflags}" -./configure -v \ +./configure \ -verbose \ -confirm-license \ -opensource \ @@ -454,13 +481,14 @@ export MAKEFLAGS="%{?_smp_mflags}" %{?ibase} \ -icu \ %{?journald} \ - %{?openssl} \ -optimized-qmake \ + %{?openssl} \ %{!?examples:-nomake examples} \ %{!?tests:-nomake tests} \ -no-pch \ -no-rpath \ -no-separate-debug-info \ + %{?no_sse2} \ -no-strip \ -system-libjpeg \ -system-libpng \ @@ -471,37 +499,28 @@ export MAKEFLAGS="%{?_smp_mflags}" %{?xcb} \ %{?xkbcommon} \ -system-zlib \ - -no-directfb + %{?use_gold_linker} \ + -no-directfb \ + %{?no_feature_renameat2} \ + %{?no_feature_statx} \ + QMAKE_CFLAGS_RELEASE="${CFLAGS:-$RPM_OPT_FLAGS}" \ + QMAKE_CXXFLAGS_RELEASE="${CXXFLAGS:-$RPM_OPT_FLAGS}" \ + QMAKE_LFLAGS_RELEASE="${LDFLAGS:-$RPM_LD_FLAGS}" -%if ! 0%{?inject_optflags} # ensure qmake build using optflags (which can happen if not munging qmake.conf defaults) make clean -C qmake -make %{?_smp_mflags} -C qmake \ +%make_build -C qmake all binary \ QMAKE_CFLAGS_RELEASE="${CFLAGS:-$RPM_OPT_FLAGS}" \ QMAKE_CXXFLAGS_RELEASE="${CXXFLAGS:-$RPM_OPT_FLAGS}" \ QMAKE_LFLAGS_RELEASE="${LDFLAGS:-$RPM_LD_FLAGS}" \ QMAKE_STRIP= -%endif - -make %{?_smp_mflags} - -%if 0%{?docs} -# HACK to avoid multilib conflicts in noarch content -# see also https://bugreports.qt-project.org/browse/QTBUG-42071 -QT_HASH_SEED=0; export QT_HASH_SEED -make html_docs -make qch_docs -%endif +%make_build %install make install INSTALL_ROOT=%{buildroot} -%if 0%{?docs} -make install_docs INSTALL_ROOT=%{buildroot} -%endif - install -m644 -p -D %{SOURCE1} %{buildroot}%{_qt5_datadir}/qtlogging.ini # Qt5.pc @@ -526,28 +545,24 @@ translationdir=%{_qt5_translationdir} Name: Qt5 Description: Qt5 Configuration -Version: %{version} +Version: 5.12.5 EOF # rpm macros install -p -m644 -D %{SOURCE10} \ - %{buildroot}%{rpm_macros_dir}/macros.qt5 + %{buildroot}%{rpm_macros_dir}/macros.qt5-qtbase sed -i \ -e "s|@@NAME@@|%{name}|g" \ -e "s|@@EPOCH@@|%{?epoch}%{!?epoch:0}|g" \ -e "s|@@VERSION@@|%{version}|g" \ -e "s|@@EVR@@|%{?epoch:%{epoch:}}%{version}-%{release}|g" \ - -e "s|@@QT5_CFLAGS@@|%{?qt5_cflags}|g" \ - -e "s|@@QT5_CXXFLAGS@@|%{?qt5_cxxflags}|g" \ - -e "s|@@QT5_RPM_LD_FLAGS@@|%{?qt5_rpm_ld_flags}|g" \ - -e "s|@@QT5_RPM_OPT_FLAGS@@|%{?qt5_rpm_opt_flags} %{?qt5_null_flag}|g" \ - %{buildroot}%{rpm_macros_dir}/macros.qt5 + %{buildroot}%{rpm_macros_dir}/macros.qt5-qtbase # create/own dirs mkdir -p %{buildroot}{%{_qt5_archdatadir}/mkspecs/modules,%{_qt5_importdir},%{_qt5_libexecdir},%{_qt5_plugindir}/{designer,iconengines,script,styles},%{_qt5_translationdir}} mkdir -p %{buildroot}%{_sysconfdir}/xdg/QtProject -# hardlink files to %{_bindir}, add -qt5 postfix to not conflict +# hardlink files to {_bindir}, add -qt5 postfix to not conflict mkdir %{buildroot}%{_bindir} pushd %{buildroot}%{_qt5_bindir} for i in * ; do @@ -574,6 +589,7 @@ popd mkdir -p %{buildroot}%{_sysconfdir}/xdg/qtchooser pushd %{buildroot}%{_sysconfdir}/xdg/qtchooser echo "%{_qt5_bindir}" > 5-%{__isa_bits}.conf +## FIXME/TODO: verify qtchooser (still) happy if _qt5_prefix uses %%_prefix instead of %%_libdir/qt5 echo "%{_qt5_prefix}" >> 5-%{__isa_bits}.conf # alternatives targets touch default.conf 5.conf @@ -594,6 +610,8 @@ popd install -p -m755 -D %{SOURCE6} %{buildroot}%{_sysconfdir}/X11/xinit/xinitrc.d/10-qt5-check-opengl2.sh +# f29+ enables sse2 unconditionally on ix86 -- rex +%if 0%{?fedora} < 29 # fix bz#1442553 multilib issue privat_header_file=%{buildroot}%{_qt5_headerdir}/QtCore/%{version}/QtCore/private/qconfig_p.h grep -v QT_FEATURE_sse2 $privat_header_file > ${privat_header_file}.me @@ -605,6 +623,7 @@ cat >>${privat_header_file}< - 5.9.2-3 -- Rebuild due to missing RELRO (fixed in binutils) - Resolves: bz#1534987 +* Mon Jan 20 2020 Than Ngo - 5.12.5-2 +- upstream patches fix following issues: + Do-not-load-plugin-from-the-PWD + QLibrary-Unix-do-not-attempt-to-load-a-library-relative-to-PWD + +* Tue Sep 24 2019 Jan Grulich - 5.12.5-1 +- 5.12.5 + +* Wed Aug 21 2019 Rex Dieter - 5.12.4-7 +- s/pkgconfig(egl)/libEGL-devel/ + +* Fri Jul 26 2019 Fedora Release Engineering - 5.12.4-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Tue Jul 23 2019 Jan Grulich - 5.12.4-5 +- Use qtwayland by default on Gnome Wayland sessions + Resolves: bz#1732129 + +* Mon Jul 15 2019 Jan Grulich - 5.12.4-4 +- Revert "Reset QWidget's winId when backing window surface is destroyed" + +* Fri Jun 28 2019 Rex Dieter - 5.12.4-3 +- omit QTBUG-73231 patch fix, appears to introduce incompatible symbols + +* Wed Jun 26 2019 Rex Dieter - 5.12.4-2 +- pull in some upstream crash fixes + +* Fri Jun 14 2019 Jan Grulich - 5.12.4-1 +- 5.12.4 + +* Wed Jun 12 2019 Rex Dieter - 5.12.3-2 +- pull in candidate upstream nvidia/optima fix (kde#406180) + +* Tue Jun 04 2019 Jan Grulich - 5.12.3-1 +- 5.12.3 + +* Fri May 10 2019 Rex Dieter - 5.12.1-7 +- Fix install targets for generated private headers (#1702858) -* Thu Jan 11 2018 Jan Grulich - 5.9.2-2 -- Avoid error about unbound variable - Resolves: bz#1533040 +* Wed May 08 2019 Rex Dieter - 5.12.1-6 +- Blacklist nouveau and llvmpipe for multithreading (#1706420) +- drop BR: pkgconfig(glesv2) on f31+, no longer provided in mesa-19.1+ -* Fri Oct 06 2017 Jan Grulich - 5.9.2-1 -- Update to 5.9.2 - Resolves: bz#1479097 +* Thu May 02 2019 Rex Dieter - 5.12.1-5 +- keep mkspecs/modules/*_private.pri in -devel #1705280) -* Mon Sep 04 2017 Jan Grulich - 5.9.1-3 -- Add more rpm macros - Resolves: bz#1479097 +* Tue Apr 30 2019 Rex Dieter - 5.12.1-4 +- CMake generates wrong -isystem /usr/include compilations flags with Qt5::Gui (#1704474) -* Mon Sep 04 2017 Jan Grulich - 5.9.1-2 -- Enable documentation - Resolves: bz#1479097 +* Tue Apr 30 2019 Rex Dieter - 5.12.1-3 +- -private-devel subpkg, move Requires: cups-devel here -* Fri Aug 18 2017 Jan Grulich - 5.9.1-1 -- Update to 5.9.1 + sync with Fedora - Resolves: bz#1479097 +* Mon Mar 04 2019 Rex Dieter - 5.12.1-2 +- -devel: Requires: cups-devel -* Wed Jan 11 2017 Jan Grulich - 5.6.2-1 -- Update to 5.6.2 - Resolves: bz#1384812 +* Thu Feb 14 2019 Rex Dieter - 5.12.1-1 +- 5.12.1 -* Tue Aug 30 2016 Jan Grulich - 5.6.1-10 -- Increase build version to have newer version than in EPEL - Resolves: bz#1317396 +* Wed Feb 13 2019 Than Ngo - 5.11.3-4 +- fixed build issue with gcc9 -* Wed Jun 15 2016 Jan Grulich - 5.6.1-2 -- fix Qt5.pc version +* Sun Feb 03 2019 Rex Dieter - 5.11.3-3 +- disable renameat2/statx feature on < f30 (#1668865) -* Wed Jun 08 2016 Jan Grulich - 5.6.1-1 -- Update to 5.6.1 + sync with Fedora - Resolves: bz#1317396 +* Sat Feb 02 2019 Fedora Release Engineering - 5.11.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild -* Thu May 26 2016 Jan Grulich - 5.6.0-13 -- Drop qtchooser support as qtchooser is not available in RHEL - Resolves: bz#1339918 +* Fri Dec 07 2018 Rex Dieter - 5.11.3-1 +- 5.11.3 -* Wed Apr 27 2016 Jan Grulich - 5.6.0-12 -- Restore rebased poll patch - Resolves: bz#1317396 - CCBUG: bz#847857 +* Thu Oct 25 2018 Than Ngo - 5.11.2-3 +- backported patch to fix selection rendering issues if rounding leads to left-out pixels +- backported patch to optimize insertionPointsForLine + +* Thu Oct 11 2018 Rex Dieter - 5.11.2-2 +- -no-use-gold-linker (#1635973) + + +* Fri Sep 21 2018 Jan Grulich - 5.11.2-1 +- 5.11.2 + +* Thu Jul 26 2018 Than Ngo - 5.11.1-7 +- fixed FTBFS + +* Sat Jul 14 2018 Fedora Release Engineering - 5.11.1-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Tue Jul 10 2018 Pete Walter - 5.11.1-5 +- Rebuild for ICU 62 + +* Mon Jul 02 2018 Than Ngo - 5.11.1-4 +- fixed bz#1597110 - BRP mangle shebangs and calculation of provides should ignore backups files + +* Fri Jun 29 2018 Rex Dieter - 5.11.1-3 +- apply sse2-related multilib hack on < f29 only +- safer %%_qt5_prefix, %%qt5_archdatadir ownership +- rebuild for %%_qt5_prefix = %%_prefix + +* Sat Jun 23 2018 Than Ngo - 5.11.1-2 +- fixed #1592146, python3 + +* Tue Jun 19 2018 Rex Dieter - 5.11.1-1 +- 5.11.1 +- relax qt5-rpm-macros dep +- drop workaround for QTBUG-37417 +- drop CMake-Restore-qt5_use_modules-function.patch (upstreamed) + +* Mon Jun 18 2018 Rex Dieter - 5.11.0-3 +- backport CMake-Restore-qt5_use_modules-function.patch +- %%build: %%ix86 --no-sse2 on < f29 only + +* Wed May 30 2018 Rex Dieter - 5.11.0-2 +- move libQt5EglFSDeviceIntegration to -gui (#1557223) + +* Tue May 22 2018 Rex Dieter - 5.11.0-1 +- 5.11.0 +- drop support for inject_optflags (not used since f23) + +* Mon Apr 30 2018 Pete Walter - 5.10.1-8 +- Rebuild for ICU 61.1 + +* Thu Mar 08 2018 Rex Dieter - 5.10.1-7 +- enforce qt5-rpm-macros versioning +- BR: gcc-c++ +- Qt5.pc: fix version, add %%check + +* Fri Feb 23 2018 Rex Dieter - 5.10.1-6 +- qt5-qtbase: RPM build flags only partially injected (#1543888) + +* Wed Feb 21 2018 Rex Dieter - 5.10.1-5 +- QOpenGLShaderProgram: glProgramBinary() resulting in LINK_STATUS=FALSE not handled properly (QTBUG-66420) + +* Fri Feb 16 2018 Rex Dieter - 5.10.1-4 +- use %%make_build, %%ldconfig +- drop %%_licensedir hack + +* Thu Feb 15 2018 Rex Dieter - 5.10.1-3 +- qt5-qtbase: RPM build flags only partially injected (#1543888) + +* Tue Feb 13 2018 Jan Grulich - 5.10.1-2 +- enable patch to track private api + +* Tue Feb 13 2018 Jan Grulich - 5.10.1-1 +- 5.10.1 + +* Fri Feb 09 2018 Rex Dieter - 5.10.0-5 +- track private api use via properly versioned symbols (unused for now) + +* Fri Feb 09 2018 Igor Gnatenko - 5.10.0-4 +- Escape macros in %%changelog + +* Sun Jan 28 2018 Rex Dieter - 5.10.0-3 +- QMimeType: remove unwanted *.bin as preferredSuffix for octet-stream (fdo#101667,kde#382437) + +* Fri Jan 26 2018 Rex Dieter - 5.10.0-2 +- re-enable gold linker (#1458003) +- drop qt5_null_flag/qt5_deprecated_flag hacks (should be fixed upstream for awhile) +- make qt_settings/journald support unconditional + +* Fri Dec 15 2017 Jan Grulich - 5.10.0-1 +- 5.10.0 + +* Thu Nov 30 2017 Pete Walter - 5.9.3-3 +- Rebuild for ICU 60.1 + +* Thu Nov 30 2017 Than Ngo - 5.9.3-2 +- bz#1518958, backport to fix out of bounds reads in qdnslookup_unix + +* Wed Nov 22 2017 Jan Grulich - 5.9.3-1 +- 5.9.3 + +* Thu Nov 09 2017 Rex Dieter - 5.9.2-5 +- categoried logging for xcb entries (#1497564, QTBUG-55167) + +* Mon Nov 06 2017 Rex Dieter - 5.9.2-4 +- QListView upstream regression (#1509649, QTBUG-63846) + +* Mon Oct 23 2017 Rex Dieter - 5.9.2-3 +- pass QMAKE_*_RELEASE to configure to ensure optflags get used (#1505260) + +* Thu Oct 19 2017 Rex Dieter - 5.9.2-2 +- refresh mariadb patch support (upstreamed version apparently incomplete) + +* Mon Oct 09 2017 Jan Grulich - 5.9.2-1 +- 5.9.2 + +* Wed Sep 27 2017 Rex Dieter - 5.9.1-9 +- refresh mariadb patch to actually match cr#206850 logic (#1491316) + +* Wed Sep 27 2017 Rex Dieter - 5.9.1-8 +- refresh mariadb patch wrt cr#206850 (#1491316) + +* Tue Sep 26 2017 Rex Dieter - 5.9.1-7 +- actually apply mariadb-related patch (#1491316) + +* Mon Sep 25 2017 Rex Dieter - 5.9.1-6 +- enable openssl11 support only for f27+ (for now) +- Use mariadb-connector-c-devel, f28+ (#1493909) +- Backport upstream mariadb patch (#1491316) + +* Wed Aug 02 2017 Than Ngo - 5.9.1-5 +- added privat headers for Qt5 Xcb + +* Sun Jul 30 2017 Florian Weimer - 5.9.1-4 +- Rebuild with binutils fix for ppc64le (#1475636) + +* Thu Jul 27 2017 Than Ngo - 5.9.1-3 +- fixed bz#1401459, backport openssl-1.1 support + +* Thu Jul 27 2017 Fedora Release Engineering - 5.9.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Wed Jul 19 2017 Rex Dieter - 5.9.1-1 +- 5.9.1 + +* Tue Jul 18 2017 Than Ngo - 5.9.0-6 +- fixed bz#1442553, multilib issue + +* Fri Jul 14 2017 Than Ngo - 5.9.0-5 +- fixed build issue with new mariadb + +* Thu Jul 06 2017 Than Ngo - 5.9.0-4 +- fixed bz#1409600, stack overflow in QXmlSimpleReader, CVE-2016-10040 + +* Fri Jun 16 2017 Rex Dieter - 5.9.0-3 +- create_cmake.prf: adjust CMAKE_NO_PRIVATE_INCLUDES (#1456211,QTBUG-37417) + +* Thu Jun 01 2017 Rex Dieter - 5.9.0-2 +- workaround gold linker issue with duplicate symbols (f27+, #1458003) + +* Wed May 31 2017 Helio Chissini de Castro - 5.9.0-1 +- Upstream official release + +* Fri May 26 2017 Helio Chissini de Castro - 5.9.0-0.1.rc +- Upstream Release Candidate retagged + +* Wed May 24 2017 Helio Chissini de Castro - 5.9.0-0.rc.1 +- Upstream Release Candidate 1 + +* Tue May 16 2017 Rex Dieter - 5.9.0-0.6.beta3 +- -common: Obsoletes: qt5-qtquick1(-devel) + +* Mon May 15 2017 Fedora Release Engineering - 5.9.0-0.5.beta3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild + +* Mon May 08 2017 Rex Dieter - 5.9.0-0.4.beta3 +- include recommended qtdbus patches, fix Release + +* Fri May 05 2017 Helio Chissini de Castro - 5.9.0-0.beta.3 +- Beta 3 release + +* Fri Apr 14 2017 Helio Chissini de Castro - 5.9.0-0.beta.1 +- No more docs, no more bootstrap. Docs comes now on a single package. + +* Thu Mar 30 2017 Rex Dieter - 5.8.0-8 +- de-bootstrap +- make -doc arch'd (workaround bug #1437522) + +* Wed Mar 29 2017 Rex Dieter - 5.8.0-7 +- rebuild + +* Mon Mar 27 2017 Rex Dieter - 5.8.0-6 +- bootstrap (rawhide) +- revert some minor changes introduced since 5.7 +- move *Plugin.cmake items to runtime (not -devel) + +* Sat Jan 28 2017 Helio Chissini de Castro - 5.8.0-5 +- Really debootstrap :-P + +* Fri Jan 27 2017 Helio Chissini de Castro - 5.8.0-4 +- Debootstrap +- Use meta doctools package to build docs + +* Fri Jan 27 2017 Helio Chissini de Castro - 5.8.0-3 +- Unify firebird patch for both versions +- Bootstrap again for copr + +* Thu Jan 26 2017 Helio Chissini de Castro - 5.8.0-2 +- Debootstrap after tools built. New tool needed qtattributionsscanner + +* Thu Jan 26 2017 Helio Chissini de Castro - 5.8.0-1 +- Initial update for 5.8.0 + +* Tue Jan 24 2017 Rex Dieter - 5.7.1-13 +- Broken window scaling (#1381828) + +* Wed Jan 04 2017 Kevin Kofler - 5.7.1-12 +- readd plugin __requires_exclude_from filter, it is still needed + +* Mon Jan 02 2017 Rex Dieter - 5.7.1-11 +- filter plugin provides, drop filter plugin excludes (no longer needed) + +* Mon Dec 19 2016 Rex Dieter - 5.7.1-10 +- backport 5.8 patch for wayland crasher (#1403500,QTBUG-55583) + +* Fri Dec 09 2016 Rex Dieter - 5.7.1-9 +- restore moc_system_defines.patch lost in 5.7.0 rebase + +* Fri Dec 09 2016 Rex Dieter - 5.7.1-8 +- update moc patch to define _SYS_SYSMACROS_H_OUTER instead (#1396755) + +* Thu Dec 08 2016 Rex Dieter - 5.7.1-7 +- really apply QT_VERSION_CHECK workaround (#1396755) + +* Thu Dec 08 2016 Rex Dieter - 5.7.1-6 +- namespace QT_VERSION_CHECK to workaround major/minor being pre-defined (#1396755) +- update moc patch to define _SYS_SYSMACROS_H (#1396755) + +* Thu Dec 08 2016 Rex Dieter - 5.7.1-5 +- 5.7.1 dec5 snapshot + +* Wed Dec 07 2016 Rex Dieter - 5.7.1-4 +- disable openssl11 (for now, FTBFS), use -openssl-linked (bug #1401459) +- BR: perl-generators + +* Mon Nov 28 2016 Than Ngo - 5.7.1-3 +- add condition for rhel +- add support for firebird-3.x + +* Thu Nov 24 2016 Than Ngo - 5.7.1-2 +- adapted the berolinux's patch for new openssl-1.1.x + +* Wed Nov 09 2016 Helio Chissini de Castro - 5.7.1-1 +- New upstream version + +* Thu Oct 20 2016 Rex Dieter - 5.7.0-10 +- fix Source0: https://download.qt.io/official_releases/qt/5.9/5.9.0/submodules/qtbase-opensource-src-5.9.0.tar.xz + +* Thu Sep 29 2016 Rex Dieter - 5.7.0-9 +- Requires: openssl-libs%%{?_isa} (#1328659) + +* Wed Sep 28 2016 Than Ngo - 5.7.0-8 +- bz#1328659, load openssl libs dynamically + +* Tue Sep 27 2016 Rex Dieter - 5.7.0-7 +- drop BR: cmake (handled by qt5-rpm-macros now) + +* Wed Sep 14 2016 Than Ngo - 5.7.0-6 +- add macros qtwebengine_arches in qt5 + +* Tue Sep 13 2016 Than Ngo - 5.7.0-5 +- add rpm macros qtwebengine_arches for qtwebengine + +* Mon Sep 12 2016 Rex Dieter - 5.7.0-4 +- use '#!/usr/bin/perl' instead of '#!/usr/bin/env perl' + +* Tue Jul 19 2016 Rex Dieter - 5.7.0-3 +- introduce macros.qt5-qtbase (for %%_qt5, %%_qt5_epoch, %%_qt5_version, %%_qt5_evr) + +* Tue Jun 14 2016 Helio Chissini de Castro - 5.7.0-2 +- Compiled with gcc + +* Tue Jun 14 2016 Helio Chissini de Castro - 5.7.0-1 +- Qt 5.7.0 release + +* Thu Jun 09 2016 Helio Chissini de Castro - 5.7.0-0.1 +- Prepare 5.7 +- Move macros package away from qtbase. Now is called qt5-rpm-macros + +* Thu Jun 02 2016 Than Ngo - 5.6.0-21 +- drop gcc6 workaround on arm + +* Fri May 20 2016 Rex Dieter - 5.6.0-20 +- -Wno-deprecated-declarations (typo missed trailing 's') + +* Fri May 13 2016 Rex Dieter - 5.6.0-19 +- pull in upstream drag-n-drop related fixes (QTBUG-45812, QTBUG-51215) + +* Sat May 07 2016 Rex Dieter - 5.6.0-18 +- revert out-of-tree build, breaks Qt5*Config.cmake *_PRIVATE_INCLUDE_DIRS entries (all blank) + +* Thu May 05 2016 Rex Dieter - 5.6.0-17 +- support out-of-tree build +- better %%check +- pull in final/upstream fixes for QTBUG-51648,QTBUG-51649 +- disable examples/tests in bootstrap mode + +* Sat Apr 30 2016 Rex Dieter - 5.6.0-16 +- own %%{_qt5_plugindir}/egldeviceintegrations + +* Mon Apr 18 2016 Caolán McNamara - 5.6.0-15 +- full rebuild for hunspell 1.4.0 + +* Mon Apr 18 2016 Caolán McNamara - 5.6.0-14 +- bootstrap rebuild for hunspell 1.4.0 + +* Sat Apr 16 2016 Rex Dieter - 5.6.0-13 +- -devel: Provides: qt5-qtbase-private-devel (#1233829) + +* Sat Apr 16 2016 David Tardon - 5.6.0-12 +- full build -* Wed Apr 13 2016 Jan Grulich - 5.6.0-11 -- Enable documentation - Resolves: bz#1317396 +* Fri Apr 15 2016 David Tardon - 5.6.0-11 +- rebuild for ICU 57.1 -* Thu Apr 07 2016 Jan Grulich - 5.6.0-10 -- Initial version for RHEL - Resolves: bz#1317396 +* Thu Mar 31 2016 Rex Dieter - 5.6.0-10 +- Fix build on MIPS (#1322537) +- drop BR: valgrind (not used, for awhile) * Fri Mar 25 2016 Rex Dieter 5.6.0-9 - pull upstream patches (upstreamed versions, gcc6-related bits mostly) @@ -1115,7 +1467,7 @@ fi - backport "crash on start if system bus is not available" (QTBUG-51299) * Sat Mar 05 2016 Rex Dieter 5.6.0-0.37.rc -- %build: ./configure -journal (f24+) +- build: ./configure -journal (f24+) * Wed Mar 02 2016 Daniel Vrátil 5.6.0-0.36.rc - Non-bootstrapped build @@ -1173,7 +1525,7 @@ fi - Crash in QXcbWindow::setParent() due to NULL xcbScreen (QTBUG-50081, #1291003) * Mon Dec 21 2015 Rex Dieter 5.6.0-0.17.beta -- fix/update Release: tag +- fix/update Release: 1%%{?dist} * Fri Dec 18 2015 Rex Dieter 5.6.0-0.16 - 5.6.0-beta (final)