1 |
commit: fb620f608733db4c0046ed51a848377f37263ea6 |
2 |
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> |
3 |
AuthorDate: Tue Sep 14 08:51:08 2021 +0000 |
4 |
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> |
5 |
CommitDate: Tue Sep 14 09:03:36 2021 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fb620f60 |
7 |
|
8 |
kde-plasma/kwin: Fix build with >=media-libs/libglvnd-1.3.4 |
9 |
|
10 |
Drop obsolete >=media-libs/libglvnd-1.3.4 blocker and DEPEND crutch. |
11 |
|
12 |
Closes: https://bugs.gentoo.org/810511 |
13 |
Package-Manager: Portage-3.0.23, Repoman-3.0.3 |
14 |
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org> |
15 |
|
16 |
.../kwin/files/kwin-5.22.5-libglvnd-1.3.4.patch | 44 ++++++++++++++++++++++ |
17 |
kde-plasma/kwin/kwin-5.22.5.ebuild | 5 +-- |
18 |
2 files changed, 46 insertions(+), 3 deletions(-) |
19 |
|
20 |
diff --git a/kde-plasma/kwin/files/kwin-5.22.5-libglvnd-1.3.4.patch b/kde-plasma/kwin/files/kwin-5.22.5-libglvnd-1.3.4.patch |
21 |
new file mode 100644 |
22 |
index 00000000000..bdca6e2081b |
23 |
--- /dev/null |
24 |
+++ b/kde-plasma/kwin/files/kwin-5.22.5-libglvnd-1.3.4.patch |
25 |
@@ -0,0 +1,44 @@ |
26 |
+From 839710201c389b7f4ed248cb3818e755a37ce977 Mon Sep 17 00:00:00 2001 |
27 |
+From: Vlad Zahorodnii <vlad.zahorodnii@×××.org> |
28 |
+Date: Fri, 10 Sep 2021 13:36:04 +0300 |
29 |
+Subject: [PATCH] x11: Fix build with EGL_NO_PLATFORM_SPECIFIC_TYPES |
30 |
+ |
31 |
+eglCreateWindowSurface() wants a Window (unsigned long), but with |
32 |
+EGL_NO_PLATFORM_SPECIFIC_TYPES, EGLNativeWindowType is defined as an |
33 |
+opaque pointer, i.e. void*. |
34 |
+ |
35 |
+BUG: 440372 |
36 |
+--- |
37 |
+ src/plugins/platforms/x11/common/eglonxbackend.cpp | 13 +++++++------ |
38 |
+ 1 file changed, 7 insertions(+), 6 deletions(-) |
39 |
+ |
40 |
+diff --git a/src/plugins/platforms/x11/common/eglonxbackend.cpp b/src/plugins/platforms/x11/common/eglonxbackend.cpp |
41 |
+index c62ec170d..d2900c7c3 100644 |
42 |
+--- a/src/plugins/platforms/x11/common/eglonxbackend.cpp |
43 |
++++ b/src/plugins/platforms/x11/common/eglonxbackend.cpp |
44 |
+@@ -213,15 +213,16 @@ EGLSurface EglOnXBackend::createSurface(xcb_window_t window) |
45 |
+ return EGL_NO_SURFACE; |
46 |
+ } |
47 |
+ |
48 |
++ // Window is 64 bits on a 64-bit architecture whereas xcb_window_t is always 32 bits. |
49 |
++ unsigned long nativeWindow = window; |
50 |
++ |
51 |
+ EGLSurface surface = EGL_NO_SURFACE; |
52 |
+ if (havePlatformBase()) { |
53 |
+- // Note: Window is 64 bits on a 64-bit architecture whereas xcb_window_t is |
54 |
+- // always 32 bits. eglCreatePlatformWindowSurfaceEXT() expects the |
55 |
+- // native_window parameter to be pointer to a Window, so this variable |
56 |
+- // cannot be an xcb_window_t. |
57 |
+- surface = eglCreatePlatformWindowSurfaceEXT(eglDisplay(), config(), (void *) &window, nullptr); |
58 |
++ // eglCreatePlatformWindowSurfaceEXT() expects a pointer to the Window. |
59 |
++ surface = eglCreatePlatformWindowSurfaceEXT(eglDisplay(), config(), (void *) &nativeWindow, nullptr); |
60 |
+ } else { |
61 |
+- surface = eglCreateWindowSurface(eglDisplay(), config(), window, nullptr); |
62 |
++ // eglCreateWindowSurface() expects a Window, not a pointer to the Window. |
63 |
++ surface = eglCreateWindowSurface(eglDisplay(), config(), reinterpret_cast<EGLNativeWindowType>(nativeWindow), nullptr); |
64 |
+ } |
65 |
+ |
66 |
+ return surface; |
67 |
+-- |
68 |
+GitLab |
69 |
+ |
70 |
|
71 |
diff --git a/kde-plasma/kwin/kwin-5.22.5.ebuild b/kde-plasma/kwin/kwin-5.22.5.ebuild |
72 |
index 493e658800d..fbccfdbbf13 100644 |
73 |
--- a/kde-plasma/kwin/kwin-5.22.5.ebuild |
74 |
+++ b/kde-plasma/kwin/kwin-5.22.5.ebuild |
75 |
@@ -79,7 +79,6 @@ COMMON_DEPEND=" |
76 |
" |
77 |
# TODO: sys-apps/hwdata? not packaged yet; commit 33a1777a, Gentoo-bug 717216 |
78 |
RDEPEND="${COMMON_DEPEND} |
79 |
- !>=media-libs/libglvnd-1.3.4 |
80 |
>=dev-qt/qtquickcontrols-${QTMIN}:5 |
81 |
>=dev-qt/qtquickcontrols2-${QTMIN}:5 |
82 |
>=dev-qt/qtvirtualkeyboard-${QTMIN}:5 |
83 |
@@ -91,11 +90,9 @@ RDEPEND="${COMMON_DEPEND} |
84 |
) |
85 |
multimedia? ( >=dev-qt/qtmultimedia-${QTMIN}:5[gstreamer,qml] ) |
86 |
" |
87 |
-# FIXME: <media-libs/libglvnd-1.3.4 not a dep, only temp. workaround for bug #810511 |
88 |
DEPEND="${COMMON_DEPEND} |
89 |
>=dev-qt/designer-${QTMIN}:5 |
90 |
>=dev-qt/qtconcurrent-${QTMIN}:5 |
91 |
- <media-libs/libglvnd-1.3.4 |
92 |
x11-base/xorg-proto |
93 |
test? ( |
94 |
>=dev-libs/wayland-protocols-1.19 |
95 |
@@ -106,6 +103,8 @@ PDEPEND=" |
96 |
>=kde-plasma/kde-cli-tools-${PVCUT}:5 |
97 |
" |
98 |
|
99 |
+PATCHES=( "${FILESDIR}/${P}-libglvnd-1.3.4.patch" ) # KDE-bug 440372, bug 810511 |
100 |
+ |
101 |
src_prepare() { |
102 |
ecm_src_prepare |
103 |
use multimedia || eapply "${FILESDIR}/${PN}-5.21.80-gstreamer-optional.patch" |