summaryrefslogtreecommitdiff
path: root/dev-qt/qtwayland
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-12-10 15:20:44 +0000
committerV3n3RiX <venerix@koprulu.sector>2022-12-10 15:20:44 +0000
commit177349fb1459039cc30cb8e3936af4117d038c16 (patch)
tree34c1bc161daefb8e152212dfba02b98da8a777a5 /dev-qt/qtwayland
parentc15acf374d4b25ba5afcb52435da6090f2d98a20 (diff)
gentoo auto-resync : 10:12:2022 - 15:20:44
Diffstat (limited to 'dev-qt/qtwayland')
-rw-r--r--dev-qt/qtwayland/Manifest4
-rw-r--r--dev-qt/qtwayland/files/qtwayland-5.15.2-QTBUG-90037-QTBUG-91264.patch131
-rw-r--r--dev-qt/qtwayland/files/qtwayland-5.15.3-clang.patch12
-rw-r--r--dev-qt/qtwayland/qtwayland-5.15.7-r1.ebuild47
4 files changed, 49 insertions, 145 deletions
diff --git a/dev-qt/qtwayland/Manifest b/dev-qt/qtwayland/Manifest
index 4d513d7797c2..62c7bbefc865 100644
--- a/dev-qt/qtwayland/Manifest
+++ b/dev-qt/qtwayland/Manifest
@@ -1,8 +1,8 @@
-AUX qtwayland-5.15.2-QTBUG-90037-QTBUG-91264.patch 4691 BLAKE2B d817e7715759dfd6a6efc13b3b8e7742406b3af7cdf8602e134121b8d6e97e857dc82bb71e32c0ad04a04fc8f20443475bd5a251ab6eb0c83412a75201865561 SHA512 82ac704e0a57a0e6272676c329e29116a7ab4186c94a1e81fe4f503bf332b20b699930d86ff22e9a83e72be856a5711230f264a6d10991fd070601ab4e4fd67c
-AUX qtwayland-5.15.3-clang.patch 405 BLAKE2B 914a7448f590cfd6e83ca32352070644bbb6c07bd794d6f86ff6346d4697f6734d4c61469f20fa27517cf14f4742df946dba1f20ac242ea50d8e712733e3c099 SHA512 41da7708a596eabbbf58baa2d081c6a870fd49ac5b284c094e7e3230df201ae29627de1470bc3a80aff3dd30166b51bf9fce53e3d6fda0f18b97452fda3cd467
DIST qtwayland-5.15.7-gentoo-kde-1.tar.xz 42912 BLAKE2B e616cdb5aef13b6350658de2d6922109b7d827536afce98d67f7b1936c91de7521a6b4f8997926334cb77e1009fd4e27e4e0aef5c78cf9ba5a6c964797d2b1e1 SHA512 23be3f4e1612a557f1eb0c17cb158897b48910e336765b6c2e06ed892b67f368dfd4ba916373bbed9d3650a1e1f39b3768db39632b4763ad103515b32a86c0c2
+DIST qtwayland-5.15.7-gentoo-kde-2.tar.xz 43720 BLAKE2B b80db3b4113ea2b80709595a7762d185576f9017e6dc089c99613cb03aad569e53bee3ca083b9ec9866c6835aee5f35cf3240cd3a681a1e038ae0fa18f62bd03 SHA512 947e2862524f83ca7f4ca6e5eee16162642cf510929ef9dad642408fe023d9b27fe88ee21cf1bd498c318ae39a278d02ae85c8aae0a552f30823a9a244250dc4
DIST qtwayland-everywhere-opensource-src-5.15.7.tar.xz 568024 BLAKE2B ed2031ea40c5618c2390865807ef33eae42a3231098f1959f0a7e9e3b8e8d70f4461647aaa11afeade0528aa4d14049b03cc566552a13dd4d1b5773ec3d16061 SHA512 a004a82ec2b4f132d597ae3c82b4079671ecdfeed09c455073e552197da2b9f921c85bef2b40be76e87e61d5ec1e7ab39ed232be26b27d9aed6e938c659965a3
DIST qtwayland-everywhere-src-6.4.0.tar.xz 836088 BLAKE2B 3efc506e1a0bc63182397d483bf352e21d39c75a7360ee3fe839527451950875748aea5cf62207ffef38b845a12c2bbbefde918d14333d1b194a4ea39b82670f SHA512 745fcc84c936c3f2fa7382291b5013679f9e57d6c680f1d352b0a132ba7cbaaea1495211f8fc4f1af85a81c711794987e4e05284d3ac06c94e92e9b601dae924
+EBUILD qtwayland-5.15.7-r1.ebuild 1008 BLAKE2B 6c530af0c321eec7d3ebabc7304bb5803b97983d0bd6b7ec032f09b91ad2456bd7300e505c931870e0b3449ed4c5afa0bf8eb0ea45ad2cd3529265dc1d722488 SHA512 a4f711eb5c1cc2c39182826abecffb3d279b61ff82eb92c2d5c9f10c5c28efad05688a0a9b771d48e147801082cfe67dbe5522cb7b5b2bf28caedbcfbce01e52
EBUILD qtwayland-5.15.7.ebuild 1002 BLAKE2B 7a4945b847da1f25bcb4f6c1deced1caced106e08ef96a26e54601448a839b4e14dac349cc6594b977bc5673520a5578cbb108e962a737f7d72eb15eaf19f08c SHA512 cb5bc1170be1a8e27b61805155749e627bd93f09402b23400622c8f43ee8fd3b5007e9bf5fb93682809ee049f93f8714dd2c27e0c05921c35cb7a26a5f0785de
EBUILD qtwayland-6.4.0.ebuild 438 BLAKE2B ecb43b4035f97bde672b22faf6a1aa7a5fd0860db6bf871b4055c97b1c199840e2ba84b6720a69a3a2ff5bc8222abaead3a6ba53c282e83b1c3c114cd075115a SHA512 c9512430e1085f3e60a4fcab21036ac8aa393eb442ec2ebcc7f4161958316a9131bddbdb422fb2018f190ec99d5d51d2ba02a28503c220cc5e2c16e904445190
MISC metadata.xml 584 BLAKE2B ad42909b120209835e121a29de558d338bae4348eb55e69a94e8ac8b54f26564df0a750839bef9418ae8056a0d24f234615247a610b8287f5b0fbffbc60193f2 SHA512 86fd81d63b19fc6e95bdcb92e9da9b03861248a4e78e9de36aca6996e61644ab8bce7a60ca22ee7ad86fefc9b407a1fd0136240b8fdfa3c40a149444ab1dcbe2
diff --git a/dev-qt/qtwayland/files/qtwayland-5.15.2-QTBUG-90037-QTBUG-91264.patch b/dev-qt/qtwayland/files/qtwayland-5.15.2-QTBUG-90037-QTBUG-91264.patch
deleted file mode 100644
index 8bffa3e08b3e..000000000000
--- a/dev-qt/qtwayland/files/qtwayland-5.15.2-QTBUG-90037-QTBUG-91264.patch
+++ /dev/null
@@ -1,131 +0,0 @@
-From d7b34dbf072236cdfb3b64e5ad26d1ff29dfec5f Mon Sep 17 00:00:00 2001
-From: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
-Date: Thu, 22 Apr 2021 08:42:33 +0200
-Subject: client: Gracefully handle shutdown and window hiding
-
-When a window is hidden or destroyed, the render thread may already
-be rendering. We need to properly read-lock the surface pointer
-when it is in use and exit when it becomes null.
-
-Note that there is also a potential crash in the Mesa GL driver
-where it keeps a proxy to the wl_surface, so if we delete this
-while we are still rendering, it can crash inside the driver.
-This is not addressed by this patch, and has not been reproduced
-on any other drivers so far.
-
-[ChangeLog][Client] Fixed a crash that could happen when hiding
-or closing windows while Qt Quick was actively rendering on
-a different thread.
-
-Pick-to: 6.0 6.1 5.15
-Fixes: QTBUG-91264
-Fixes: QTBUG-90037
-Task-number: QTBUG-92249
-Change-Id: I029b123b83c58740321e8b90a463ced748d8bcf4
-Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
-Reviewed-by: David Edmundson <davidedmundson@kde.org>
-(cherry picked from commit b19b0fbaf775e8b8eda1e03c265a5393d618c6c0)
----
- src/client/qwaylandwindow.cpp | 17 ++++++++++++++++-
- src/client/qwaylandwindow_p.h | 2 +-
- .../client/wayland-egl/qwaylandglcontext.cpp | 1 -
- 3 files changed, 17 insertions(+), 3 deletions(-)
-
-diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp
-index 494911b3..0d849b57 100644
---- a/src/client/qwaylandwindow.cpp
-+++ b/src/client/qwaylandwindow.cpp
-@@ -414,6 +414,7 @@ void QWaylandWindow::closePopups(QWaylandWindow *parent)
-
- QPlatformScreen *QWaylandWindow::calculateScreenFromSurfaceEvents() const
- {
-+ QReadLocker lock(&mSurfaceLock);
- if (mSurface) {
- if (auto *screen = mSurface->oldestEnteredScreen())
- return screen;
-@@ -552,6 +553,10 @@ void QWaylandWindow::sendRecursiveExposeEvent()
-
- void QWaylandWindow::attach(QWaylandBuffer *buffer, int x, int y)
- {
-+ QReadLocker locker(&mSurfaceLock);
-+ if (mSurface == nullptr)
-+ return;
-+
- if (buffer) {
- Q_ASSERT(!buffer->committed());
- handleUpdate();
-@@ -571,6 +576,10 @@ void QWaylandWindow::attachOffset(QWaylandBuffer *buffer)
-
- void QWaylandWindow::damage(const QRect &rect)
- {
-+ QReadLocker locker(&mSurfaceLock);
-+ if (mSurface == nullptr)
-+ return;
-+
- const int s = scale();
- if (mDisplay->compositorVersion() >= 4)
- mSurface->damage_buffer(s * rect.x(), s * rect.y(), s * rect.width(), s * rect.height());
-@@ -605,6 +614,8 @@ void QWaylandWindow::commit(QWaylandBuffer *buffer, const QRegion &damage)
- qCDebug(lcWaylandBackingstore) << "Buffer already committed, ignoring.";
- return;
- }
-+
-+ QReadLocker locker(&mSurfaceLock);
- if (!mSurface)
- return;
-
-@@ -624,7 +635,9 @@ void QWaylandWindow::commit(QWaylandBuffer *buffer, const QRegion &damage)
-
- void QWaylandWindow::commit()
- {
-- mSurface->commit();
-+ QReadLocker locker(&mSurfaceLock);
-+ if (mSurface != nullptr)
-+ mSurface->commit();
- }
-
- const wl_callback_listener QWaylandWindow::callbackListener = {
-@@ -725,6 +738,7 @@ QPointF QWaylandWindow::mapFromWlSurface(const QPointF &surfacePosition) const
-
- wl_surface *QWaylandWindow::wlSurface()
- {
-+ QReadLocker locker(&mSurfaceLock);
- return mSurface ? mSurface->object() : nullptr;
- }
-
-@@ -749,6 +763,7 @@ QWaylandScreen *QWaylandWindow::waylandScreen() const
-
- void QWaylandWindow::handleContentOrientationChange(Qt::ScreenOrientation orientation)
- {
-+ QReadLocker locker(&mSurfaceLock);
- if (mDisplay->compositorVersion() < 2)
- return;
-
-diff --git a/src/client/qwaylandwindow_p.h b/src/client/qwaylandwindow_p.h
-index d45980a8..54ac67a9 100644
---- a/src/client/qwaylandwindow_p.h
-+++ b/src/client/qwaylandwindow_p.h
-@@ -288,7 +288,7 @@ private:
-
- static QWaylandWindow *mMouseGrab;
-
-- QReadWriteLock mSurfaceLock;
-+ mutable QReadWriteLock mSurfaceLock;
-
- friend class QWaylandSubSurface;
- };
-diff --git a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
-index 683fe123..8f12736d 100644
---- a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
-+++ b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
-@@ -192,7 +192,6 @@ public:
- }
- void blit(QWaylandEglWindow *window)
- {
-- Q_ASSERT(window->wlSurface());
- QOpenGLTextureCache *cache = QOpenGLTextureCache::cacheForContext(m_context->context());
-
- QSize surfaceSize = window->surfaceSize();
---
-2.35.0
-
diff --git a/dev-qt/qtwayland/files/qtwayland-5.15.3-clang.patch b/dev-qt/qtwayland/files/qtwayland-5.15.3-clang.patch
deleted file mode 100644
index 4ad80127f516..000000000000
--- a/dev-qt/qtwayland/files/qtwayland-5.15.3-clang.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-https://bugs.gentoo.org/833488
---- a/src/hardwareintegration/compositor/linux-dmabuf-unstable-v1/linuxdmabuf.h
-+++ b/src/hardwareintegration/compositor/linux-dmabuf-unstable-v1/linuxdmabuf.h
-@@ -44,6 +44,8 @@
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-
-+#include <array>
-+
- // compatibility with libdrm <= 2.4.74
- #ifndef DRM_FORMAT_RESERVED
- #define DRM_FORMAT_RESERVED ((1ULL << 56) - 1)
diff --git a/dev-qt/qtwayland/qtwayland-5.15.7-r1.ebuild b/dev-qt/qtwayland/qtwayland-5.15.7-r1.ebuild
new file mode 100644
index 000000000000..70185ea5e611
--- /dev/null
+++ b/dev-qt/qtwayland/qtwayland-5.15.7-r1.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+if [[ ${PV} != *9999* ]]; then
+ QT5_KDEPATCHSET_REV=2
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+fi
+
+inherit qt5-build
+
+DESCRIPTION="Wayland platform plugin for Qt"
+
+SLOT=5/${QT5_PV} # bug 815646
+IUSE="vulkan X"
+
+DEPEND="
+ dev-libs/wayland
+ =dev-qt/qtcore-${QT5_PV}*:5=
+ =dev-qt/qtdeclarative-${QT5_PV}*:5=
+ =dev-qt/qtgui-${QT5_PV}*:5=[egl,libinput,vulkan=,X?]
+ media-libs/libglvnd
+ vulkan? ( dev-util/vulkan-headers )
+ X? (
+ =dev-qt/qtgui-${QT5_PV}*[-gles2-only]
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="dev-util/wayland-scanner"
+
+src_configure() {
+ local myqmakeargs=(
+ --
+ $(qt_use vulkan feature-wayland-vulkan-server-buffer)
+ $(qt_use X feature-xcomposite-egl)
+ $(qt_use X feature-xcomposite-glx)
+ )
+ qt5-build_src_configure
+}
+
+src_install() {
+ qt5-build_src_install
+ rm "${D}${QT5_BINDIR}"/qtwaylandscanner || die
+}