%bcond_without directfb # DirectFB platform support
%bcond_without egl # EGL (EGLFS, minimal EGL) platform support
%bcond_without gtk # GTK+ theme integration
+%bcond_without kerberos5 # KRB5 GSSAPI Support
%bcond_without kms # KMS platform support
%bcond_without libinput # libinput support
%bcond_without pch # pch (pre-compiled headers) in qmake
%ifarch pentium4 %{x8664} x32
%define with_sse2 1
%endif
+# QTBUG-36129
+%ifnarch %{arm} aarch64
+%define with_red_reloc 1
+%endif
%if %{with bootstrap}
%undefine with_doc
%undefine with_qm
%endif
-%define icu_abi 64
+%define icu_abi 67
%define next_icu_abi %(echo $((%{icu_abi} + 1)))
%define orgname qtbase
Summary: Qt5 - base components
Summary(pl.UTF-8): Biblioteka Qt5 - podstawowe komponenty
Name: qt5-%{orgname}
-Version: 5.13.0
-Release: 1
+Version: 5.15.0
+Release: 4
# See LGPL_EXCEPTION.txt for exception details
License: LGPL v2 with Digia Qt LGPL Exception v1.1 or GPL v3
Group: X11/Libraries
-Source0: http://download.qt.io/official_releases/qt/5.13/%{version}/submodules/%{orgname}-everywhere-src-%{version}.tar.xz
-# Source0-md5: 188576903d7837ddd41ba285e841eb9b
-Source1: http://download.qt.io/official_releases/qt/5.13/%{version}/submodules/qttranslations-everywhere-src-%{version}.tar.xz
-# Source1-md5: 071888e332858a1dfd733e2d264cb284
+Source0: http://download.qt.io/official_releases/qt/5.15/%{version}/submodules/%{orgname}-everywhere-src-%{version}.tar.xz
+# Source0-md5: 6be4d7ae4cd0d75c50b452cc05117009
+Source1: http://download.qt.io/official_releases/qt/5.15/%{version}/submodules/qttranslations-everywhere-src-%{version}.tar.xz
+# Source1-md5: 7cbff3badaf760badbcdb5fcba109c1b
Patch0: %{name}-system_cacerts.patch
URL: http://www.qt.io/
%{?with_directfb:BuildRequires: DirectFB-devel}
%{?with_kms:BuildRequires: Mesa-libgbm-devel}
BuildRequires: OpenGL-devel
%{?with_kms:BuildRequires: OpenGLESv2-devel}
+BuildRequires: at-spi2-core-devel
%{?with_cups:BuildRequires: cups-devel >= 1.4}
BuildRequires: dbus-devel >= 1.2
+BuildRequires: double-conversion-devel
BuildRequires: fontconfig-devel
%{?with_freetds:BuildRequires: freetds-devel}
BuildRequires: freetype-devel >= 2.1.3
BuildRequires: glib2-devel >= 2.0.0
%{?with_gtk:BuildRequires: gtk+3-devel >= 3.6}
BuildRequires: harfbuzz-devel >= 1.6.0
+%{?with_kerberos5:BuildRequires: heimdal-devel}
%{?with_kms:BuildRequires: libdrm-devel}
# see dependency on libicu version below
BuildRequires: libicu-devel < %{next_icu_abi}
BuildRequires: libxcb-devel >= 1.12
BuildRequires: mtdev-devel
%{?with_mysql:BuildRequires: mysql-devel}
-BuildRequires: openssl-devel
+BuildRequires: openssl-devel >= 1.1.1
%{?with_oci:BuildRequires: oracle-instantclient-devel}
-BuildRequires: pcre2-16-devel >= 8.20
+BuildRequires: pcre2-16-devel >= 10.20
BuildRequires: pkgconfig
%{?with_pgsql:BuildRequires: postgresql-backend-devel}
%{?with_pgsql:BuildRequires: postgresql-devel}
BuildRequires: xorg-lib-libxkbcommon-x11-devel >= 0.5.0
BuildRequires: xz
BuildRequires: zlib-devel
+BuildRequires: zstd-devel >= 1.3
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define specflags -fno-strict-aliasing
Summary: Qt5 Core library
Summary(pl.UTF-8): Biblioteka Qt5 Core
Group: Libraries
-Requires: pcre16 >= 8.30
+Requires: pcre2-16 >= 10.20
+Requires: zstd >= 1.3
Obsoletes: qt5-qtbase
%description -n Qt5Core
Requires: Qt5Core = %{version}-%{release}
Requires: glib2-devel >= 2.0
Requires: libicu-devel
-Requires: pcre16-devel >= 8.30
+Requires: pcre2-16-devel >= 10.20
+# -std=c++17
Requires: zlib-devel
Obsoletes: qt5-qtbase-devel
Requires: Qt5DBus = %{version}-%{release}
# for compose platforminputcontext plugin
Requires: xorg-lib-libxkbcommon >= 0.4.1
+Suggests: Qt5Gui-platform-xcb
%description -n Qt5Gui
The Qt5 GUI library provides the basic enablers for graphical
Summary(pl.UTF-8): Wtyczka motywów platform Qt5 Gui dla xdg-desktop-portal
Group: Libraries
Requires: Qt5Gui = %{version}-%{release}
+Requires: harfbuzz >= 1.6.0
Obsoletes: Qt5Gui-platformtheme-flatpak < 5.12.1
%description -n Qt5Gui-platformtheme-xdgdesktopportal
Group: Development/Libraries
Requires: Qt5Core-devel = %{version}-%{release}
Requires: Qt5Network = %{version}-%{release}
-Requires: openssl-devel
+%requires_ge openssl-devel
%description -n Qt5Network-devel
Header files for Qt5 Network library.
s|^\(QMAKE_STRIP *\)=.*|\1= :|;
' mkspecs/common/linux.conf
+%{__sed} -i -e '1{
+ s,^#!.*bin/python$,#!%{__python},
+ s,^#!.*bin/env perl,#!%{__perl},
+}' \
+ bin/fixqt4headers.pl \
+ bin/syncqt.pl \
+ mkspecs/features/uikit/devices.py
+
%build
# pass OPTFLAGS to build qmake itself with optimization
export OPTFLAGS="%{rpmcflags}"
-openssl-linked \
-optimized-qmake \
-%{!?with_pch:no-}pch \
- -reduce-relocations \
+ %{?with_red_reloc:-reduce-relocations} \
-sm \
+ -system-doubleconversion \
-system-freetype \
+ -system-harfbuzz \
-system-libjpeg \
-system-libpng \
-system-pcre \
-system-sqlite \
- -system-xcb \
-system-zlib \
%{?with_tslib:-tslib} \
- -xcb-xinput \
+ -xcb \
-xkbcommon \
%{!?with_db2:-no}-sql-db2 \
%{!?with_ibase:-no}-sql-ibase \
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_sysconfdir}/qt5,%{_bindir},%{_pkgconfigdir}}
+install -d $RPM_BUILD_ROOT{%{_sysconfdir}/qt5,%{_bindir},%{_pkgconfigdir},%{qt5dir}/libexec}
# for QtSolutions (qtlockedfile, qtsingleapplication, etc)
install -d $RPM_BUILD_ROOT%{_includedir}/qt5/QtSolutions
%{_libdir}/libQt5AccessibilitySupport.prl
%{_libdir}/libQt5LinuxAccessibilitySupport.a
%{_libdir}/libQt5LinuxAccessibilitySupport.prl
+%{_libdir}/cmake/Qt5AccessibilitySupport
+%{_libdir}/cmake/Qt5LinuxAccessibilitySupport
%{qt5dir}/mkspecs/modules/qt_lib_accessibility_support_private.pri
%{qt5dir}/mkspecs/modules/qt_lib_linuxaccessibility_support_private.pri
# static-only
%{_libdir}/libQt5Bootstrap.a
%{_libdir}/libQt5Bootstrap.prl
+%{_libdir}/cmake/Qt5Bootstrap
%{qt5dir}/mkspecs/modules/qt_lib_bootstrap_private.pri
%files -n Qt5Concurrent
%dir %{_sysconfdir}/qt5
%dir %{qt5dir}
%dir %{qt5dir}/bin
+%dir %{qt5dir}/libexec
%dir %{qt5dir}/mkspecs
%dir %{qt5dir}/mkspecs/modules
%dir %{qt5dir}/plugins
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libQt5Core.so
%{_libdir}/libQt5Core.prl
+%dir %{_libdir}/metatypes
+%{_libdir}/metatypes/qt5core_metatypes.json
%dir %{_includedir}/qt5
%dir %{_includedir}/qt5/QtSolutions
%{_includedir}/qt5/QtCore
%{_libdir}/cmake/Qt5Core
%{qt5dir}/mkspecs/modules/qt_lib_core.pri
%{qt5dir}/mkspecs/modules/qt_lib_core_private.pri
+%attr(755,root,root) %{qt5dir}/bin/tracegen
%files -n Qt5DBus
%defattr(644,root,root,755)
%{_includedir}/qt5/QtDeviceDiscoverySupport
%{_libdir}/libQt5DeviceDiscoverySupport.a
%{_libdir}/libQt5DeviceDiscoverySupport.prl
+%{_libdir}/cmake/Qt5DeviceDiscoverySupport
%{qt5dir}/mkspecs/modules/qt_lib_devicediscovery_support_private.pri
%files -n Qt5EdidSupport-devel
%{_includedir}/qt5/QtEdidSupport
%{_libdir}/libQt5EdidSupport.a
%{_libdir}/libQt5EdidSupport.prl
+%{_libdir}/cmake/Qt5EdidSupport
%{qt5dir}/mkspecs/modules/qt_lib_edid_support_private.pri
%files -n Qt5EglSupport-devel
%{_includedir}/qt5/QtEglSupport
%{_libdir}/libQt5EglSupport.a
%{_libdir}/libQt5EglSupport.prl
+%{_libdir}/cmake/Qt5EglSupport
%{qt5dir}/mkspecs/modules/qt_lib_egl_support_private.pri
%files -n Qt5EventDispatcherSupport-devel
%{_includedir}/qt5/QtEventDispatcherSupport
%{_libdir}/libQt5EventDispatcherSupport.a
%{_libdir}/libQt5EventDispatcherSupport.prl
+%{_libdir}/cmake/Qt5EventDispatcherSupport
%{qt5dir}/mkspecs/modules/qt_lib_eventdispatcher_support_private.pri
%files -n Qt5FbSupport-devel
%{_includedir}/qt5/QtFbSupport
%{_libdir}/libQt5FbSupport.a
%{_libdir}/libQt5FbSupport.prl
+%{_libdir}/cmake/Qt5FbSupport
%{qt5dir}/mkspecs/modules/qt_lib_fb_support_private.pri
%files -n Qt5FontDatabaseSupport-devel
%{_includedir}/qt5/QtFontDatabaseSupport
%{_libdir}/libQt5FontDatabaseSupport.a
%{_libdir}/libQt5FontDatabaseSupport.prl
+%{_libdir}/cmake/Qt5FontDatabaseSupport
%{qt5dir}/mkspecs/modules/qt_lib_fontdatabase_support_private.pri
%files -n Qt5GlxSupport-devel
%{_includedir}/qt5/QtGlxSupport
%{_libdir}/libQt5GlxSupport.a
%{_libdir}/libQt5GlxSupport.prl
+%{_libdir}/cmake/Qt5GlxSupport
%{qt5dir}/mkspecs/modules/qt_lib_glx_support_private.pri
%files -n Qt5Gui
%defattr(644,root,root,755)
%{_includedir}/qt5/QtEglFSDeviceIntegration
%attr(755,root,root) %{_libdir}/libQt5EglFSDeviceIntegration.so
+%{_libdir}/cmake/Qt5EglFSDeviceIntegration
%{_libdir}/libQt5EglFSDeviceIntegration.prl
%{qt5dir}/mkspecs/modules/qt_lib_eglfsdeviceintegration_private.pri
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libQt5EglFsKmsSupport.so
%{_libdir}/libQt5EglFsKmsSupport.prl
+%{_libdir}/cmake/Qt5EglFsKmsSupport
%{_libdir}/cmake/Qt5Gui/Qt5Gui_QEglFSKmsEglDeviceIntegrationPlugin.cmake
%{_libdir}/cmake/Qt5Gui/Qt5Gui_QEglFSKmsGbmIntegrationPlugin.cmake
%{qt5dir}/mkspecs/modules/qt_lib_eglfs_kms_support_private.pri
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libQt5XcbQpa.so
%{_libdir}/libQt5XcbQpa.prl
+%{_libdir}/cmake/Qt5XcbQpa
%{qt5dir}/mkspecs/modules/qt_lib_xcb_qpa_lib_private.pri
%files -n Qt5Gui-platform-xcb-egl
%attr(755,root,root) %{qt5dir}/bin/qvkgen
%attr(755,root,root) %{_libdir}/libQt5Gui.so
%{_libdir}/libQt5Gui.prl
+%{_libdir}/metatypes/qt5gui_metatypes.json
%{_includedir}/qt5/QtGui
%{_includedir}/qt5/QtPlatformHeaders
%{_pkgconfigdir}/Qt5Gui.pc
%{_includedir}/qt5/QtInputSupport
%{_libdir}/libQt5InputSupport.a
%{_libdir}/libQt5InputSupport.prl
+%{_libdir}/cmake/Qt5InputSupport
%{qt5dir}/mkspecs/modules/qt_lib_input_support_private.pri
%files -n Qt5KmsSupport-devel
%{_includedir}/qt5/QtKmsSupport
%{_libdir}/libQt5KmsSupport.a
%{_libdir}/libQt5KmsSupport.prl
+%{_libdir}/cmake/Qt5KmsSupport
%{qt5dir}/mkspecs/modules/qt_lib_kms_support_private.pri
%files -n Qt5Network
%{_includedir}/qt5/QtPlatformCompositorSupport
%{_libdir}/libQt5PlatformCompositorSupport.a
%{_libdir}/libQt5PlatformCompositorSupport.prl
+%{_libdir}/cmake/Qt5PlatformCompositorSupport
%{qt5dir}/mkspecs/modules/qt_lib_platformcompositor_support_private.pri
%files -n Qt5PrintSupport
%{_includedir}/qt5/QtServiceSupport
%{_libdir}/libQt5ServiceSupport.a
%{_libdir}/libQt5ServiceSupport.prl
+%{_libdir}/cmake/Qt5ServiceSupport
%{qt5dir}/mkspecs/modules/qt_lib_service_support_private.pri
%files -n Qt5Sql
%{_includedir}/qt5/QtThemeSupport
%{_libdir}/libQt5ThemeSupport.a
%{_libdir}/libQt5ThemeSupport.prl
+%{_libdir}/cmake/Qt5ThemeSupport
%{qt5dir}/mkspecs/modules/qt_lib_theme_support_private.pri
%files -n Qt5VulkanSupport-devel
%{_includedir}/qt5/QtVulkanSupport
%{_libdir}/libQt5VulkanSupport.a
%{_libdir}/libQt5VulkanSupport.prl
+%{_libdir}/cmake/Qt5VulkanSupport
%{qt5dir}/mkspecs/modules/qt_lib_vulkan_support_private.pri
%files -n Qt5Widgets
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libQt5Widgets.so
%{_libdir}/libQt5Widgets.prl
+%{_libdir}/metatypes/qt5widgets_metatypes.json
%{_includedir}/qt5/QtWidgets
%{_pkgconfigdir}/Qt5Widgets.pc
%dir %{_libdir}/cmake/Qt5Widgets
%{_includedir}/qt5/QtXkbCommonSupport
%{_libdir}/libQt5XkbCommonSupport.a
%{_libdir}/libQt5XkbCommonSupport.prl
+%{_libdir}/cmake/Qt5XkbCommonSupport
%{qt5dir}/mkspecs/modules/qt_lib_xkbcommon_support_private.pri
%files -n Qt5Xml
%files -n qt5-doc-common
%defattr(644,root,root,755)
%dir %{_docdir}/qt5-doc
+%{_docdir}/qt5-doc/config
%{_docdir}/qt5-doc/global
%if %{with doc}