Remove patches that have been applied upstream.

ci/unstable
Patrick Franz 4 months ago
parent 67ec2ee434
commit 0da90c23d3
No known key found for this signature in database
GPG Key ID: 9E9F7A603077FE56

1
debian/changelog vendored

@ -2,6 +2,7 @@ qt6-base (6.7.2+dfsg-1) UNRELEASED; urgency=medium
[ Patrick Franz ]
* New upstream release (6.7.2).
* Remove patches that have been applied upstream.
-- Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org> Thu, 29 Aug 2024 00:08:13 +0200

@ -1,18 +0,0 @@
Description: Don't use yield on CPUs that might not support it
---
src/corelib/global/qsimd_p.h | 2 ++
1 file changed, 2 insertions(+)
--- a/src/corelib/global/qsimd_p.h
+++ b/src/corelib/global/qsimd_p.h
@@ -415,7 +415,9 @@ static inline void qYieldCpu()
https://stackoverflow.com/a/70076751/134841
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105416
*/
+# if !defined(Q_CC_GNU) || (__ARM_ARCH >= 7)
asm volatile("yield"); /* this works everywhere */
+# endif
# else
__yield(); /* this is what should work everywhere */
# endif

@ -1,82 +0,0 @@
From c8e2cdda704dbe2c381091fe687653cdf2b191ca Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lisandro=20Dami=C3=A1n=20Nicanor=20P=C3=A9rez=20Meyer?=
<perezmeyer@gmail.com>
Date: Wed, 1 Nov 2023 21:41:59 -0300
Subject: [PATCH] Be verbose on plugin inclusion, easy patch point for distros
TL;DR: This creates two changes:
1. Makes the plugin inclusion status more visible for builders for both Qt
itself and applications.
2. Allows a simple patch-point for distros to change the default
(perhaps not ideal, but good enough).
3. Does not changes the current behavior.
As discussed both in the mailing list and privately with
Alexandru Croitor and Joerg Bornemann this makes a lot os sense for Qt
on static builds and when trying to find where the plugins are so they
can be easily packaged up in order to distribute a build with all the
dependencies on it.
But at the same time it makes no sense for distributions building the
libraries in dynamic mode as it forces unnecesary build time
dependencies for for both Qt and applications like QML modules or even
PostgreSQL! [0].
[0] <https://sources.debian.org/src/martchus-qtutilities/6.10.0-1/cmake/modules/QtConfig.cmake/?hl=35#L35>
Other approaches have been considered like not shipping specific CMake
files, but this depends on the packager finding the right ones at the
right time, and does not allows end users to change the behavior if they
happen to need it.
Change-Id: Id32fbc0cf0f289edd4426fb703cf1195288aacb4
Gerrit: https://codereview.qt-project.org/c/qt/qtbase/+/515440
---
cmake/QtPlugins.cmake.in | 9 +++++++++
cmake/QtPostProcessHelpers.cmake | 9 +++++++++
2 files changed, 18 insertions(+)
diff --git a/cmake/QtPlugins.cmake.in b/cmake/QtPlugins.cmake.in
index 405d5f37b9..c951eaae42 100644
--- a/cmake/QtPlugins.cmake.in
+++ b/cmake/QtPlugins.cmake.in
@@ -1,6 +1,15 @@
include_guard(DIRECTORY)
@QT_MODULE_PLUGIN_INCLUDES@
+# Distributions should probably change this default.
+if(NOT DEFINED QT_SKIP_AUTO_PLUGIN_INCLUSION)
+ set(QT_SKIP_AUTO_PLUGIN_INCLUSION OFF)
+endif()
+
+if(QT_REPO_MODULE_VERSION)
+ message(STATUS "Skip auto plugin inclusion is set to ${QT_SKIP_AUTO_PLUGIN_INCLUSION}")
+endif()
+
if(NOT QT_NO_CREATE_TARGETS AND NOT QT_SKIP_AUTO_PLUGIN_INCLUSION)
__qt_internal_include_plugin_packages(@QT_MODULE@)
endif()
diff --git a/cmake/QtPostProcessHelpers.cmake b/cmake/QtPostProcessHelpers.cmake
index 83bcabe49b..82a88565a6 100644
--- a/cmake/QtPostProcessHelpers.cmake
+++ b/cmake/QtPostProcessHelpers.cmake
@@ -446,6 +446,15 @@ function(qt_internal_create_plugins_auto_inclusion_files)
# TODO: Find a better way to deal with this, perhaps by using find_package() instead of include
# for the Qml PluginConfig.cmake files.
+# Distributions should probably change this default.
+if(NOT DEFINED QT_SKIP_AUTO_QML_PLUGIN_INCLUSION)
+ set(QT_SKIP_AUTO_QML_PLUGIN_INCLUSION OFF)
+endif()
+
+if(QT_REPO_MODULE_VERSION)
+ message(STATUS \"Skip auto QML plugin inclusion is set to \${QT_SKIP_AUTO_QML_PLUGIN_INCLUSION}\")
+endif()
+
file(GLOB __qt_qml_plugins_config_file_list \"\${CMAKE_CURRENT_LIST_DIR}/QmlPlugins/${INSTALL_CMAKE_NAMESPACE}*Config.cmake\")
if (__qt_qml_plugins_config_file_list AND NOT QT_SKIP_AUTO_QML_PLUGIN_INCLUSION)
# First round of inclusions ensure all qml plugin targets are brought into scope.
--
2.42.0

@ -17,23 +17,23 @@ Forwarded: not-needed
--- a/cmake/QtPlugins.cmake.in
+++ b/cmake/QtPlugins.cmake.in
@@ -3,7 +3,7 @@ include_guard(DIRECTORY)
@@ -6,7 +6,7 @@ include_guard(DIRECTORY)
# Distributions should probably change this default.
if(NOT DEFINED QT_SKIP_AUTO_PLUGIN_INCLUSION)
- set(QT_SKIP_AUTO_PLUGIN_INCLUSION OFF)
+ set(QT_SKIP_AUTO_PLUGIN_INCLUSION ON)
endif()
if(QT_REPO_MODULE_VERSION)
if(NOT QT_NO_CREATE_TARGETS AND NOT QT_SKIP_AUTO_PLUGIN_INCLUSION)
--- a/cmake/QtPostProcessHelpers.cmake
+++ b/cmake/QtPostProcessHelpers.cmake
@@ -448,7 +448,7 @@ function(qt_internal_create_plugins_auto
@@ -448,7 +448,7 @@ function(qt_internal_create_plugins_auto_inclusion_files)
# Distributions should probably change this default.
if(NOT DEFINED QT_SKIP_AUTO_QML_PLUGIN_INCLUSION)
- set(QT_SKIP_AUTO_QML_PLUGIN_INCLUSION OFF)
+ set(QT_SKIP_AUTO_QML_PLUGIN_INCLUSION ON)
endif()
if(QT_REPO_MODULE_VERSION)
set(__qt_qml_plugins_config_file_list \"\")

@ -1,72 +0,0 @@
Description: QGtk3Theme: fix QGtk3Interface::fileIcon
By failing to set the G_FILE_ATTRIBUTE_STANDARD_ICON attribute, the
"icon" returned by g_file_info_get_icon was always null and a
GLib-GIO-CRITICAL warning was output to the console (at least since glib
2.76.0)[1].
.
After adding the necessary attribute, the code was crashing, because now
a valid icon was returned, however the icon should not be freed[2],
which is why I removed the "g_object_unref(icon)".
.
Now it was no longer crashing, but the size of the icons was off. It was
passing GTK_ICON_SIZE_BUTTON (4) to gtk_icon_theme_lookup_by_gicon where
a size in pixels was expected. I chose 16 because that's the pixel size
associated with GTK_ICON_SIZE_BUTTON[3].
.
Finally I noticed the returned icons had the wrong color. It seems that
a GdkPixbuf uses RGBA8888 format[4]. Adding an explicit conversion to
ARGB32 made the icons look correct for me.
.
[1] https://gitlab.gnome.org/GNOME/glib/-/commit/ed8e86a7d41a0900d8fa57edc64264d04cf8135b
[2] https://docs.gtk.org/gio/method.FileInfo.get_icon.html
[3] https://docs.gtk.org/gtk3/enum.IconSize.html#button
[4] https://docs.gtk.org/gdk-pixbuf/class.Pixbuf.html#image-data
Origin: upstream, https://code.qt.io/cgit/qt/qtbase.git/commit/?id=277d77029d7fe8f4
Last-Update: 2024-08-02
--- a/src/plugins/platformthemes/gtk3/qgtk3interface.cpp
+++ b/src/plugins/platformthemes/gtk3/qgtk3interface.cpp
@@ -296,8 +296,10 @@ QImage QGtk3Interface::qt_convert_gdk_pi
const int width = gdk_pixbuf_get_width(buf);
const int height = gdk_pixbuf_get_height(buf);
const int bpl = gdk_pixbuf_get_rowstride(buf);
- QImage converted(data, width, height, bpl, QImage::Format_ARGB32);
- return converted.copy(); // detatch to survive lifetime of buf
+ QImage converted(data, width, height, bpl, QImage::Format_RGBA8888);
+
+ // convert to more optimal format and detach to survive lifetime of buf
+ return converted.convertToFormat(QImage::Format_ARGB32_Premultiplied);
}
/*!
@@ -666,7 +668,7 @@ QIcon QGtk3Interface::fileIcon(const QFi
if (!file)
return QIcon();
- GFileInfo *info = g_file_query_info (file, G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE,
+ GFileInfo *info = g_file_query_info (file, G_FILE_ATTRIBUTE_STANDARD_ICON,
G_FILE_QUERY_INFO_NONE, nullptr, nullptr);
if (!info) {
g_object_unref(file);
@@ -681,12 +683,11 @@ QIcon QGtk3Interface::fileIcon(const QFi
}
GtkIconTheme *theme = gtk_icon_theme_get_default();
- GtkIconInfo *iconInfo = gtk_icon_theme_lookup_by_gicon(theme, icon, GTK_ICON_SIZE_BUTTON,
+ GtkIconInfo *iconInfo = gtk_icon_theme_lookup_by_gicon(theme, icon, 16,
GTK_ICON_LOOKUP_FORCE_SIZE);
if (!iconInfo) {
g_object_unref(file);
g_object_unref(info);
- g_object_unref(icon);
return QIcon();
}
@@ -694,7 +695,6 @@ QIcon QGtk3Interface::fileIcon(const QFi
QImage image = qt_convert_gdk_pixbuf(buf);
g_object_unref(file);
g_object_unref(info);
- g_object_unref(icon);
g_object_unref(buf);
return QIcon(QPixmap::fromImage(image));
}

@ -1,10 +1,3 @@
# fixed in 6.6.3
fix_qgtk3interface_fileicon.patch
# fixed in 6.7.0
be_verbose_on_plugin_inclusion.patch
# fixed in 6.7.2
upstream_Prefer-using-the-non-suffixed-libzstd-over-static-on.patch
upstream_Ensure-that-libzstd-targets-are-promoted-to-global-i.patch
# fixed in 6.9.0
upstream_IPC-add-PATH_MAX-less-fallback-definition-for-MAX_PA.patch
@ -23,7 +16,5 @@ forkfd_grow_stack_upwards_on_hppa.patch
enable_skip_plugins.patch
# Support old ARM architectures
# - Don't use yield on CPUs that might not support it
armel-noyield.patch
# - Support ARMv4 until clang < 17 is available in Debian
armv4.diff

@ -1,42 +0,0 @@
From 3073b9c4dec5e5877363794bf81cbd4b84fdb9ee Mon Sep 17 00:00:00 2001
From: Alexey Edelev <alexey.edelev@qt.io>
Date: Tue, 28 May 2024 16:36:41 +0200
Subject: [PATCH] Ensure that libzstd targets are promoted to global if they
were found
Promote all internal zstd targets if they were found by WrapZSTD to
global using PROVIDED_TARGETS mechanism.
Amends 7d9d1220f367d9275dfaa7ce12e89b0a9f4c1978
Task-numer: QTBUG-119469
Change-Id: I15ec484304f7bf2b3ee2a533d2badb3bb7797863
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
---
configure.cmake | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/configure.cmake b/configure.cmake
index b91260015f..62af7f665f 100644
--- a/configure.cmake
+++ b/configure.cmake
@@ -113,7 +113,15 @@ SSL_free(SSL_new(0));
}
")
-qt_find_package(WrapZSTD 1.3 PROVIDED_TARGETS WrapZSTD::WrapZSTD MODULE_NAME global QMAKE_LIB zstd)
+qt_find_package(WrapZSTD 1.3
+ PROVIDED_TARGETS
+ WrapZSTD::WrapZSTD
+ zstd::libzstd
+ zstd::libzstd_static
+ zstd::libzstd_shared
+ MODULE_NAME global
+ QMAKE_LIB zstd
+)
qt_find_package(WrapDBus1 1.2 PROVIDED_TARGETS dbus-1 MODULE_NAME global QMAKE_LIB dbus)
qt_find_package(Libudev PROVIDED_TARGETS PkgConfig::Libudev MODULE_NAME global QMAKE_LIB libudev)
qt_find_package(LTTngUST PROVIDED_TARGETS LTTng::UST MODULE_NAME core QMAKE_LIB lttng-ust)
--
2.43.0

@ -1,42 +0,0 @@
From 7d9d1220f367d9275dfaa7ce12e89b0a9f4c1978 Mon Sep 17 00:00:00 2001
From: Alexey Edelev <alexey.edelev@qt.io>
Date: Mon, 27 May 2024 11:09:05 +0200
Subject: [PATCH] Prefer using the non-suffixed libzstd over static one
Recent zstd versions provide the libstd target but not only libzstd_shared
or libzstd_static. Attempt to use it as the WrapZSTD::WrapZSTD counterpart
if the target exists.
Task-number: QTBUG-119469
Change-Id: I47916bfa6f10883d099184a497800277c8026b14
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
---
cmake/FindWrapZSTD.cmake | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/cmake/FindWrapZSTD.cmake b/cmake/FindWrapZSTD.cmake
index 7e5adcf276..310f6cf960 100644
--- a/cmake/FindWrapZSTD.cmake
+++ b/cmake/FindWrapZSTD.cmake
@@ -25,14 +25,17 @@ find_package(zstd CONFIG QUIET)
include(FindPackageHandleStandardArgs)
-if(TARGET zstd::libzstd_static OR TARGET zstd::libzstd_shared)
+if(TARGET zstd::libzstd_static OR TARGET zstd::libzstd_shared OR TARGET zstd::libzstd)
find_package_handle_standard_args(WrapZSTD
REQUIRED_VARS zstd_VERSION VERSION_VAR zstd_VERSION)
if(TARGET zstd::libzstd_shared)
set(zstdtargetsuffix "_shared")
+ elseif(TARGET zstd::libzstd)
+ set(zstdtargetsuffix "")
else()
set(zstdtargetsuffix "_static")
endif()
+
if(NOT TARGET WrapZSTD::WrapZSTD)
add_library(WrapZSTD::WrapZSTD INTERFACE IMPORTED)
set_target_properties(WrapZSTD::WrapZSTD PROPERTIES
--
2.43.0
Loading…
Cancel
Save