Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package qt6-base for openSUSE:Factory checked in at 2024-04-08 17:37:42 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/qt6-base (Old) and /work/SRC/openSUSE:Factory/.qt6-base.new.1905 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "qt6-base" Mon Apr 8 17:37:42 2024 rev:55 rq:1165776 version:6.7.0 Changes: -------- --- /work/SRC/openSUSE:Factory/qt6-base/qt6-base.changes 2024-03-28 14:05:56.927030907 +0100 +++ /work/SRC/openSUSE:Factory/.qt6-base.new.1905/qt6-base.changes 2024-04-08 17:38:07.450344017 +0200 @@ -1,0 +2,11 @@ +Tue Apr 2 13:39:34 UTC 2024 - Christophe Marin <christo...@krop.fr> + +- Update to 6.7.0: + * https://www.qt.io/blog/qt-6.7-released +- Replace 0001-Tell-the-truth-about-private-API.patch with + upstream change: + * 0001-CMake-ELF-allow-using-Qt-s-full-version-number-in-th.patch +- Add upstream fix (QTBUG-123937): + * fix_builds_with_Werror.patch + +------------------------------------------------------------------- @@ -5,0 +17,3 @@ + * Includes fix for issue where the wasm component may access + QNetworkReply header data via a dangling pointer + (CVE-2024-30161, bsc#1221926, QTBUG-122893) Old: ---- 0001-Tell-the-truth-about-private-API.patch qtbase-everywhere-src-6.6.3.tar.xz New: ---- 0001-CMake-ELF-allow-using-Qt-s-full-version-number-in-th.patch fix_builds_with_Werror.patch qtbase-everywhere-src-6.7.0.tar.xz BETA DEBUG BEGIN: Old: * https://www.qt.io/blog/qt-6.7-released - Replace 0001-Tell-the-truth-about-private-API.patch with upstream change: BETA DEBUG END: BETA DEBUG BEGIN: New: upstream change: * 0001-CMake-ELF-allow-using-Qt-s-full-version-number-in-th.patch - Add upstream fix (QTBUG-123937): New:- Add upstream fix (QTBUG-123937): * fix_builds_with_Werror.patch BETA DEBUG END: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ qt6-base.spec ++++++ --- /var/tmp/diff_new_pack.E2ZwK4/_old 2024-04-08 17:38:10.366451650 +0200 +++ /var/tmp/diff_new_pack.E2ZwK4/_new 2024-04-08 17:38:10.370451798 +0200 @@ -16,8 +16,8 @@ # -%define real_version 6.6.3 -%define short_version 6.6 +%define real_version 6.7.0 +%define short_version 6.7 %define tar_name qtbase-everywhere-src %define tar_suffix %{nil} # @@ -30,7 +30,7 @@ %global with_gles 1 %endif Name: qt6-base%{?pkg_suffix} -Version: 6.6.3 +Version: 6.7.0 Release: 0 Summary: Qt 6 core components (Core, Gui, Widgets, Network...) # Legal: qtpaths is BSD-3-Clause @@ -39,8 +39,9 @@ Source: https://download.qt.io/official_releases/qt/%{short_version}/%{real_version}%{tar_suffix}/submodules/%{tar_name}-%{real_version}%{tar_suffix}.tar.xz Source99: qt6-base-rpmlintrc # Patches 0-100 are upstream patches # +Patch0: fix_builds_with_Werror.patch # Patches 100-200 are openSUSE and/or non-upstream(able) patches # -Patch100: 0001-Tell-the-truth-about-private-API.patch +Patch100: 0001-CMake-ELF-allow-using-Qt-s-full-version-number-in-th.patch # No need to pollute the library dir with object files, install them in the qt6 subfolder Patch101: 0001-CMake-Install-objects-files-into-ARCHDATADIR.patch %if 0%{?suse_version} == 1500 @@ -85,6 +86,7 @@ BuildRequires: pkgconfig(libdrm) BuildRequires: pkgconfig(libinput) BuildRequires: pkgconfig(libpng) +BuildRequires: pkgconfig(libpq) BuildRequires: pkgconfig(libsystemd) BuildRequires: pkgconfig(libturbojpeg) BuildRequires: pkgconfig(libudev) @@ -93,7 +95,6 @@ BuildRequires: pkgconfig(odbc) BuildRequires: pkgconfig(opengl) BuildRequires: pkgconfig(openssl) >= 1.1.1 -BuildRequires: pkgconfig(libpq) BuildRequires: pkgconfig(sm) BuildRequires: pkgconfig(sqlite3) BuildRequires: pkgconfig(tslib) @@ -771,24 +772,25 @@ -DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo \ -DQT_BUILD_EXAMPLES:BOOL=TRUE \ -DQT_BUILD_TESTS:BOOL=FALSE \ - -DQT_CREATE_VERSIONED_HARD_LINK:BOOL=OFF \ - -DQT_DISABLE_RPATH:BOOL=OFF \ + -DQT_CREATE_VERSIONED_HARD_LINK:BOOL=FALSE \ + -DQT_DISABLE_RPATH:BOOL=FALSE \ %ifnarch ppc64 - -DCMAKE_INTERPROCEDURAL_OPTIMIZATION:BOOL=ON \ + -DCMAKE_INTERPROCEDURAL_OPTIMIZATION:BOOL=TRUE \ %endif - -DFEATURE_enable_new_dtags:BOOL=ON \ - -DFEATURE_journald:BOOL=ON \ - -DFEATURE_libproxy:BOOL=ON \ - -DFEATURE_reduce_relocations:BOOL=OFF \ - -DFEATURE_relocatable:BOOL=OFF \ - -DFEATURE_system_sqlite:BOOL=ON \ - -DFEATURE_system_xcb_xinput:BOOL=ON \ - -DFEATURE_xcb_native_painting:BOOL=ON \ + -DFEATURE_elf_private_full_version=TRUE \ + -DFEATURE_enable_new_dtags:BOOL=TRUE \ + -DFEATURE_journald:BOOL=TRUE \ + -DFEATURE_libproxy:BOOL=TRUE \ + -DFEATURE_reduce_relocations:BOOL=FALSE \ + -DFEATURE_relocatable:BOOL=FALSE \ + -DFEATURE_system_sqlite:BOOL=TRUE \ + -DFEATURE_system_xcb_xinput:BOOL=TRUE \ + -DFEATURE_xcb_native_painting:BOOL=TRUE \ -DINPUT_openssl:STRING=linked \ - -DFEATURE_forkfd_pidfd:BOOL=OFF \ + -DFEATURE_forkfd_pidfd:BOOL=FALSE \ %if 0%{?with_gles} -DINPUT_opengl:STRING=es2 \ - -DFEATURE_opengles3:BOOL=ON + -DFEATURE_opengles3:BOOL=TRUE %endif %{qt6_build} @@ -816,7 +818,6 @@ rm %{buildroot}%{_qt6_mkspecsdir}/modules/qt_lib_openglwidgets_private.pri # These files are only useful for the Qt continuous integration -rm %{buildroot}%{_qt6_libexecdir}/android_*.sh rm %{buildroot}%{_qt6_libexecdir}/ensure_pro_file.cmake rm %{buildroot}%{_qt6_libexecdir}/qt-testrunner.py rm %{buildroot}%{_qt6_libexecdir}/sanitizer-testrunner.py ++++++ 0001-CMake-ELF-allow-using-Qt-s-full-version-number-in-th.patch ++++++ >From bccbdc225505eb39458336922fa30f87fd81476a Mon Sep 17 00:00:00 2001 From: Thiago Macieira <thiago.macie...@intel.com> Date: Thu, 21 Mar 2024 10:07:03 -0700 Subject: [PATCH] CMake/ELF: allow using Qt's full version number in the private tags We added the feature to tag private symbols using the Qt major version only, because us developers often move between versions and need to keep compiled code working, even when using private API (we're supposed to know what we're doing). Linux distributions, however, want to be told that something used private API and therefore needs to be rebuilt. See [1][2][3]. Distributors will learn about this feature when updating Qt causes the existing patch to fail to apply. [1] https://build.opensuse.org/projects/openSUSE:Factory/packages/qt6-base/files/0001-Tell-the-truth-about-private-API.patch?expand=1 [2] https://src.fedoraproject.org/rpms/qt6-qtbase/blob/rawhide/f/qtbase-tell-the-truth-about-private-API.patch [3] https://github.com/clearlinux-pkgs/qtbase/blob/main/tell-the-truth-about-private-api.patch Change-Id: I5f663c2f9f4149af84fefffd17bed69026f4038d Reviewed-by: Alexey Edelev <alexey.ede...@qt.io> (cherry picked from commit e0940081bc7439d87d9ca41402a543a9c17fb857) Reviewed-by: Qt Cherry-pick Bot <cherrypick_...@qt-project.org> --- cmake/QtFlagHandlingHelpers.cmake | 6 +++++- configure.cmake | 6 ++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/cmake/QtFlagHandlingHelpers.cmake b/cmake/QtFlagHandlingHelpers.cmake index 28231cb564..32ce929e45 100644 --- a/cmake/QtFlagHandlingHelpers.cmake +++ b/cmake/QtFlagHandlingHelpers.cmake @@ -69,7 +69,11 @@ 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}") + if(QT_FEATURE_elf_private_full_version) + string(APPEND contents ".${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}") + endif() + string(APPEND contents "_PRIVATE_API { qt_private_api_tag*;\n") if(arg_PRIVATE_HEADERS) foreach(ph ${arg_PRIVATE_HEADERS}) string(APPEND contents " @FILE:${ph}@\n") diff --git a/configure.cmake b/configure.cmake index 037aab9b2d..19dd2bf34e 100644 --- a/configure.cmake +++ b/configure.cmake @@ -551,6 +551,12 @@ qt_feature("rpath" PUBLIC CONDITION BUILD_SHARED_LIBS AND UNIX AND NOT WIN32 AND NOT ANDROID ) qt_feature_config("rpath" QMAKE_PUBLIC_QT_CONFIG) +qt_feature("elf_private_full_version" PRIVATE + LABEL "Use Qt's full version number in ELF version symbols" + AUTODETECT OFF + CONDITION BUILD_SHARED_LIBS AND UNIX AND NOT APPLE +) +qt_feature_config("elf_private_full_version" QMAKE_PRIVATE_QT_CONFIG) qt_feature("force_asserts" PUBLIC LABEL "Force assertions" AUTODETECT OFF -- 2.44.0 ++++++ fix_builds_with_Werror.patch ++++++ >From a0439a7370df302e4a8f0402249b1aa2b1aeab4b Mon Sep 17 00:00:00 2001 From: Albert Astals Cid <aa...@kde.org> 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 Pick-to: 6.7 Change-Id: I0cdd2910755dc9079890011dd8dbc27a6e64793e --- 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 c9de1005a7..d6ae2570ae 100644 --- a/src/corelib/tools/qspan.h +++ b/src/corelib/tools/qspan.h @@ -297,7 +297,7 @@ public: : QSpanBase(il.begin(), il.size()) {} -#if __cpp_lib_span +#ifdef __cpp_lib_span template <typename S, size_t N, if_qualification_conversion<S> = true> Q_IMPLICIT constexpr QSpanBase(std::span<S, N> other) noexcept : QSpanBase(other.data(), other.size()) -- 2.44.0 ++++++ qtbase-everywhere-src-6.6.3.tar.xz -> qtbase-everywhere-src-6.7.0.tar.xz ++++++ /work/SRC/openSUSE:Factory/qt6-base/qtbase-everywhere-src-6.6.3.tar.xz /work/SRC/openSUSE:Factory/.qt6-base.new.1905/qtbase-everywhere-src-6.7.0.tar.xz differ: char 27, line 1