diff --git a/.gitignore b/.gitignore index ea0a7b8..e6b6921 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,4 @@ /qtbase-everywhere-src-6.5.3.tar.xz /qtbase-everywhere-src-6.6.0.tar.xz /qtbase-everywhere-src-6.6.1.tar.xz +/qtbase-everywhere-src-6.7.0.tar.xz diff --git a/qt6-qtbase.spec b/qt6-qtbase.spec index c8002ec..2eba18a 100644 --- a/qt6-qtbase.spec +++ b/qt6-qtbase.spec @@ -2,7 +2,7 @@ %global multilib_archs x86_64 %{ix86} %{?mips} ppc64 ppc s390x s390 sparc64 sparcv9 %global multilib_basearchs x86_64 %{?mips64} ppc64 s390x sparc64 -%ifarch s390x ppc64le aarch64 armv7hl +%ifarch s390x ppc64le aarch64 armv7hl riscv64 %global no_sse2 1 %endif @@ -46,8 +46,8 @@ BuildRequires: pkgconfig(libsystemd) Name: qt6-qtbase Summary: Qt6 - QtBase components -Version: 6.6.1 -Release: 6%{?dist} +Version: 6.7.0 +Release: 1%{?dist} License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0 Url: http://qt-project.org/ @@ -100,15 +100,16 @@ Patch58: qtbase-libglvnd.patch # FIXME: this change seems to completely break font rendering for some people # Patch60: qtbase-cache-emoji-font.patch -%if 0%{?fedora} < 39 +%if 0%{?fedora} && 0%{?fedora} < 39 # Latest QGnomePlatform needs to be specified to be used Patch100: qtbase-use-qgnomeplatform-as-default-platform-theme-on-gnome.patch %endif -## RHEL specific patches -Patch200: qtbase-fix-tests.patch - ## upstream patches +Patch200: qtbase-use-ifdefs-instead-if-for-cpp-lib-span.patch + +## RHEL specific patches +# Patch300: qtbase-fix-tests.patch # Do not check any files in %%{_qt6_plugindir}/platformthemes/ for requires. # Those themes are there for platform integration. If the required libraries are @@ -404,6 +405,7 @@ export MAKEFLAGS="%{?_smp_mflags}" %{?sqlite:-DQT_FEATURE_system_sqlite=ON} \ -DBUILD_SHARED_LIBS=ON \ -DQT_BUILD_EXAMPLES=%{?examples:ON}%{!?examples:OFF} \ + -DQT_INSTALL_EXAMPLES_SOURCES=%{?examples:ON}%{!?examples:OFF} \ -DQT_BUILD_TESTS=%{?build_tests:ON}%{!?build_tests:OFF} \ -DQT_QMAKE_TARGET_MKSPEC=%{platform} @@ -449,7 +451,7 @@ translationdir=%{_qt6_translationdir} Name: Qt6 Description: Qt6 Configuration -Version: 6.6.1 +Version: 6.7.0 EOF # rpm macros @@ -572,6 +574,8 @@ make check -k ||: %{_qt6_plugindir}/sqldrivers/libqsqlite.so %{_qt6_plugindir}/tls/libqcertonlybackend.so %{_qt6_plugindir}/tls/libqopensslbackend.so +%{_bindir}/qtpaths* +%{_qt6_bindir}/qtpaths* %files common # mostly empty for now, consider: filesystem/dir ownership, licenses @@ -621,7 +625,6 @@ make check -k ||: %{_bindir}/qdbuscpp2xml* %{_bindir}/qdbusxml2cpp* %{_bindir}/qmake* -%{_bindir}/qtpaths* %{_bindir}/qt-cmake %{_bindir}/qt-cmake-create %{_bindir}/qt-configure-module @@ -632,7 +635,6 @@ make check -k ||: %{_qt6_bindir}/qdbuscpp2xml %{_qt6_bindir}/qdbusxml2cpp %{_qt6_bindir}/qmake -%{_qt6_bindir}/qtpaths* %{_qt6_bindir}/qt-cmake %{_qt6_bindir}/qt-cmake-create %{_qt6_bindir}/qt-configure-module @@ -642,7 +644,6 @@ make check -k ||: %{_qt6_libexecdir}/qt-internal-configure-tests %{_qt6_libexecdir}/sanitizer-testrunner.py %{_qt6_libexecdir}/syncqt -%{_qt6_libexecdir}/android_emulator_launcher.sh %{_qt6_libexecdir}/moc %{_qt6_libexecdir}/tracegen %{_qt6_libexecdir}/tracepointgen @@ -725,6 +726,7 @@ make check -k ||: %{_qt6_libdir}/cmake/Qt6/3rdparty/kwin/*.cmake %{_qt6_libdir}/cmake/Qt6/3rdparty/kwin/qt_attribution.json %{_qt6_libdir}/cmake/Qt6BuildInternals/*.cmake +%{_qt6_libdir}/cmake/Qt6Core/Qt6CoreResourceInit.in.cpp %{_qt6_libdir}/cmake/Qt6BuildInternals/QtStandaloneTestTemplateProject/CMakeLists.txt %{_qt6_libdir}/cmake/Qt6BuildInternals/StandaloneTests/QtBaseTestsConfig.cmake %{_qt6_libdir}/cmake/Qt6BuildInternals/QtStandaloneTestTemplateProject/Main.cmake @@ -757,7 +759,7 @@ make check -k ||: %{_qt6_libdir}/cmake/Qt6XcbQpaPrivate/*.cmake %{_qt6_libdir}/cmake/Qt6Xml/*.cmake %{_qt6_libdir}/qt6/metatypes/*.json -%{_qt6_libdir}/qt6/objects-RelWithDebInfo/ExampleIconsPrivate_resources_1/.rcc/qrc_example_icons.cpp.o +%{_qt6_libdir}/qt6/objects-RelWithDebInfo/ExampleIconsPrivate_resources_1/.rcc/qrc_example_icons_init.cpp.o %{_qt6_libdir}/pkgconfig/*.pc %if 0%{?egl} @@ -871,6 +873,12 @@ make check -k ||: %changelog +* Wed Apr 17 2024 Jan Grulich - 6.7.0-1 +- 6.7.0 + + sync with Fedora + Resolves: RHEL-27845 + Resolves: RHEL-32788 + * Wed Mar 27 2024 Jan Grulich - 6.6.1-6 - Add -tests subpackage with unit tests that can run in CI Resolves: RHEL-28239 diff --git a/qtbase-tell-the-truth-about-private-API.patch b/qtbase-tell-the-truth-about-private-API.patch index fd2ac7a..4fa1aaf 100644 --- a/qtbase-tell-the-truth-about-private-API.patch +++ b/qtbase-tell-the-truth-about-private-API.patch @@ -1,28 +1,13 @@ -From 25e78cce15fdf737cc48ed5d7683ad1d01b55621 Mon Sep 17 00:00:00 2001 -From: Christophe Giboudeaux -Date: Sun, 20 Sep 2020 09:57:22 +0200 -Subject: [PATCH] Tell the truth about private API - -Mark private API with symbols only for the current patch release - -This change is a port of the libqt5-qtbase patch which was -added during the Qt 5.6 cycle. ---- - cmake/QtFlagHandlingHelpers.cmake | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - diff --git a/cmake/QtFlagHandlingHelpers.cmake b/cmake/QtFlagHandlingHelpers.cmake -index d8597326cc..f9da7b2171 100644 +index 28231cb5..018d697b 100644 --- a/cmake/QtFlagHandlingHelpers.cmake +++ b/cmake/QtFlagHandlingHelpers.cmake -@@ -23,7 +23,7 @@ function(qt_internal_add_linker_version_script target) - endif() - - if(TEST_ld_version_script) -- set(contents "Qt_${PROJECT_VERSION_MAJOR}_PRIVATE_API {\n qt_private_api_tag*;\n") -+ set(contents "Qt_${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}_PRIVATE_API {\n qt_private_api_tag*;\n") +@@ -69,7 +69,7 @@ function(qt_internal_add_linker_version_script target) + endforeach() + endforeach() + +- string(APPEND contents "\n};\nQt_${PROJECT_VERSION_MAJOR}_PRIVATE_API { qt_private_api_tag*;\n") ++ string(APPEND contents "\n};\nQt_${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}_PRIVATE_API { qt_private_api_tag*;\n") if(arg_PRIVATE_HEADERS) foreach(ph ${arg_PRIVATE_HEADERS}) string(APPEND contents " @FILE:${ph}@\n") --- -2.40.0 diff --git a/qtbase-use-ifdefs-instead-if-for-cpp-lib-span.patch b/qtbase-use-ifdefs-instead-if-for-cpp-lib-span.patch new file mode 100644 index 0000000..113d48b --- /dev/null +++ b/qtbase-use-ifdefs-instead-if-for-cpp-lib-span.patch @@ -0,0 +1,31 @@ +From 6810220218cbbf2854ecdedb291f7e4a84b31e54 Mon Sep 17 00:00:00 2001 +From: Albert Astals Cid +Date: Wed, 3 Apr 2024 00:47:01 +0200 +Subject: [PATCH] Use ifdef instead of if for __cpp_lib_span + +Like the other times it's used in this file + +This is causing compilation errors in projects that use -Werror=undef + +Fixes: QTBUG-123937 +Change-Id: I0cdd2910755dc9079890011dd8dbc27a6e64793e +Reviewed-by: Thiago Macieira +(cherry picked from commit 699ddcb15b5e981d32ea65d1c1a12f8fa0b06e0d) +Reviewed-by: Qt Cherry-pick Bot +--- + src/corelib/tools/qspan.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/corelib/tools/qspan.h b/src/corelib/tools/qspan.h +index c9de1005a77..d6ae2570ae3 100644 +--- a/src/corelib/tools/qspan.h ++++ b/src/corelib/tools/qspan.h +@@ -297,7 +297,7 @@ class QSpanBase : protected QSpanCommon + : QSpanBase(il.begin(), il.size()) + {} + +-#if __cpp_lib_span ++#ifdef __cpp_lib_span + template = true> + Q_IMPLICIT constexpr QSpanBase(std::span other) noexcept + : QSpanBase(other.data(), other.size()) diff --git a/sources b/sources index 8041d4c..9d477fb 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (qtbase-everywhere-src-6.6.1.tar.xz) = 93e77b9b077a3acd5607b643db282fdd7ed0bdfa07df74c3f0d2285afeb1672a6fa229a7e7a6c8a462701305fc22ffef20c212d906484e50fb5cdb706a7b72e1 +SHA512 (qtbase-everywhere-src-6.7.0.tar.xz) = 72896cc5a677361779f49d60dbdfc33a21d77bd479e0586b0beb03eee2016d613aee56e798143a489431a07a5e7a7db4c7c046105a11b63dd178768f3a7f195a