From fdd62332dce467547f6b71199e915c05cc393a33 Mon Sep 17 00:00:00 2001 From: DistroBaker Date: Mon, 23 Nov 2020 13:47:26 +0000 Subject: [PATCH] Merged update from upstream sources This is an automated DistroBaker update from upstream sources. If you do not know what this is about or would like to opt out, contact the OSCI team. Source: https://src.fedoraproject.org/rpms/qt5-qtbase.git#88950cc031f828834b10e6e43c794f9b9c31d106 --- .gitignore | 1 + qt5-qtbase.spec | 17 ++++------ qtbase-QTBUG-86319.patch | 73 ---------------------------------------- sources | 2 +- 4 files changed, 9 insertions(+), 84 deletions(-) delete mode 100644 qtbase-QTBUG-86319.patch diff --git a/.gitignore b/.gitignore index 0b0a3c3..5f93b68 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ /qtbase-everywhere-src-5.13.2.tar.xz /qtbase-everywhere-src-5.14.2.tar.xz /qtbase-everywhere-src-5.15.1.tar.xz +/qtbase-everywhere-src-5.15.2.tar.xz diff --git a/qt5-qtbase.spec b/qt5-qtbase.spec index b5e046a..178e5ae 100644 --- a/qt5-qtbase.spec +++ b/qt5-qtbase.spec @@ -48,8 +48,8 @@ BuildRequires: pkgconfig(libsystemd) Name: qt5-qtbase Summary: Qt5 - QtBase components -Version: 5.15.1 -Release: 7%{?dist} +Version: 5.15.2 +Release: 1%{?dist} # See LGPL_EXCEPTIONS.txt, for exception details License: LGPLv2 with exceptions or GPLv3 with exceptions @@ -127,9 +127,6 @@ Patch90: %{name}-gcc11.patch # glibc stat ## upstream patches -Patch100: qtbase-emit-qscreen-geometry-changed-when-logical-dpi-changes.patch - -Patch101: qtbase-QTBUG-86319.patch # Do not check any files in %%{_qt5_plugindir}/platformthemes/ for requires. # Those themes are there for platform integration. If the required libraries are @@ -173,9 +170,9 @@ BuildRequires: openssl-devel BuildRequires: pkgconfig(libpulse) pkgconfig(libpulse-mainloop-glib) BuildRequires: pkgconfig(libinput) BuildRequires: pkgconfig(xcb-xkb) >= 1.10 +BuildRequires: pkgconfig(xcb-util) BuildRequires: pkgconfig(xkbcommon) >= 0.4.1 BuildRequires: pkgconfig(xkbcommon-x11) >= 0.4.1 - BuildRequires: pkgconfig(xkeyboard-config) BuildRequires: pkgconfig(vulkan) %if 0%{?fedora} || 0%{?rhel} > 6 @@ -390,8 +387,6 @@ Qt5 libraries used for drawing widgets and OpenGL items. %patch90 -p1 -b .gcc11 ## upstream patches -%patch100 -p1 -b .emit-qscreen-geometry-changed-when-logical-dpi-changes -%patch101 -p1 # move some bundled libs to ensure they're not accidentally used pushd src/3rdparty @@ -536,7 +531,7 @@ translationdir=%{_qt5_translationdir} Name: Qt5 Description: Qt5 Configuration -Version: 5.15.1 +Version: 5.15.2 EOF # rpm macros @@ -845,7 +840,6 @@ fi %{_qt5_libdir}/cmake/Qt5Xml/Qt5XmlConfig*.cmake %{_qt5_libdir}/cmake/Qt5/Qt5ModuleLocation.cmake %{_qt5_libdir}/cmake/Qt5AccessibilitySupport/Qt5AccessibilitySupportConfig*.cmake -%{_qt5_libdir}/cmake/Qt5Bootstrap/Qt5BootstrapConfig*.cmake %{_qt5_libdir}/cmake/Qt5DeviceDiscoverySupport/Qt5DeviceDiscoverySupportConfig*.cmake %{_qt5_libdir}/cmake/Qt5EdidSupport/Qt5EdidSupportConfig*.cmake %{_qt5_libdir}/cmake/Qt5EglFSDeviceIntegration/Qt5EglFSDeviceIntegrationConfig*.cmake @@ -1049,6 +1043,9 @@ fi %changelog +* Fri Nov 20 09:27:41 CET 2020 Jan Grulich - 5.15.2-1 +- 5.15.2 + * Tue Nov 03 2020 Sandro Mani - 5.15.1-7 - Backport upstream fix for QTBUG-86319 diff --git a/qtbase-QTBUG-86319.patch b/qtbase-QTBUG-86319.patch deleted file mode 100644 index 992b66d..0000000 --- a/qtbase-QTBUG-86319.patch +++ /dev/null @@ -1,73 +0,0 @@ -From a82032351c921c3d5d57122aca57b47f83f9b9d1 Mon Sep 17 00:00:00 2001 -From: Thiago Macieira -Date: Thu, 10 Sep 2020 13:30:59 -0700 -Subject: [PATCH] forkfd/Linux: ask clone() to use the SIGCHLD as the - termination signal - -Because of these lines in the Linux kernel (kernel/fork.c, see [1][3]): - - if (clone_flags & CLONE_VFORK) - trace = PTRACE_EVENT_VFORK; - else if (args->exit_signal != SIGCHLD) - trace = PTRACE_EVENT_CLONE; - else - trace = PTRACE_EVENT_FORK; - -Without CLONE_VFORK (which we can't use), if the exit signal isn't -SIGCHLD, the debugger will get a PTRACE_EVENT_CLONE, which makes it -think the process we're starting is a thread, not a new process. Both -gdb and lldb remain attached to the child and when it later performs an -execve(), they get mightily confused. See gdb bug report[5]. - -The idea of not having an exit_signal was so that no SIGCHLD would be -delivered to the parent process in the first place. That way, some -misguided SIGCHLD handler (*cough* GLib *cough*) wouldn't reap our -processes. Unfortunately, what I didn't realize was that the kernel -sends SIGCHLD anyway (see [2][4]), so this defensive measure didn't -actually work. Consequently, we can pass SIGCHLD to clone() and get the -debuggers working again. - -[ChangeLog][Linux] Fixed an issue that would cause debugging a Qt -application that uses QProcess to confuse both gdb and lldb if -the Linux kernel was version 5.4 or higher. Behavior outside of -a debugging session was not affected. - -[1] https://code.woboq.org/linux/linux/kernel/fork.c.html#_do_fork -[2] https://code.woboq.org/linux/linux/kernel/signal.c.html#do_notify_parent -[3] https://elixir.bootlin.com/linux/v5.8/source/kernel/fork.c#L2432 -[4] https://elixir.bootlin.com/linux/v5.8/source/kernel/signal.c#L1925 -[5] https://sourceware.org/bugzilla/show_bug.cgi?id=26562 - -Fixes: QTBUG-86319 -Change-Id: I2fc68c725ba649218bd9fffd1633863613537d42 -Reviewed-by: Dimitrios Apostolou -Reviewed-by: Oswald Buddenhagen -Reviewed-by: hjk -(cherry picked from commit d1fc991c6e3c45a5f93c925d49e3fe77ce6ce455) -Reviewed-by: Qt Cherry-pick Bot ---- - src/3rdparty/forkfd/forkfd_linux.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/3rdparty/forkfd/forkfd_linux.c b/src/3rdparty/forkfd/forkfd_linux.c -index 523fbca3ccc..ffe0e9a5e24 100644 ---- a/src/3rdparty/forkfd/forkfd_linux.c -+++ b/src/3rdparty/forkfd/forkfd_linux.c -@@ -147,7 +147,7 @@ int system_forkfd(int flags, pid_t *ppid, int *system) - } - - *system = 1; -- unsigned long cloneflags = CLONE_PIDFD; -+ unsigned long cloneflags = CLONE_PIDFD | SIGCHLD; - pid = sys_clone(cloneflags, &pidfd); - if (ppid) - *ppid = pid; -@@ -171,7 +171,7 @@ int system_forkfd_wait(int ffd, struct forkfd_info *info, int ffdoptions, struct - { - siginfo_t si; - int ret; -- int options = __WALL | convertForkfdWaitFlagsToWaitFlags(ffdoptions); -+ int options = convertForkfdWaitFlagsToWaitFlags(ffdoptions); - - if ((options & WNOHANG) == 0) { - /* check if the file descriptor is non-blocking */ diff --git a/sources b/sources index 417e0d4..6ef5740 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (qtbase-everywhere-src-5.15.1.tar.xz) = 40b687c046b25a6717834ffe2616ee4f373d75214ec1c7e3a26502cd0cde9f0a872eaee99f06c54c7a3625ae85df5cdd3a3b54a160e8e37c7cfeb5800d026fe4 +SHA512 (qtbase-everywhere-src-5.15.2.tar.xz) = a549bfaf867d746ff744ab224eb65ac1bdcdac7e8457dfa379941b2b225a90442fcfc1e1175b9afb1f169468f8130b7ab917c67be67156520a4bfb5c92d304f9