commit:     8d50e186779b54ad8202b9e6399f768c253f26e0
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 28 10:15:47 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sat Dec 28 10:39:46 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8d50e186

gui-apps/wcm: Fix C23 issue in a subproject

Closes: https://bugs.gentoo.org/946954
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 .../wcm-0.9.0-incompatible-pointer-types.patch     | 37 ++++++++++++++++++++++
 gui-apps/wcm/wcm-0.9.0.ebuild                      |  4 +++
 gui-apps/wcm/wcm-9999.ebuild                       |  4 +++
 3 files changed, 45 insertions(+)

diff --git a/gui-apps/wcm/files/wcm-0.9.0-incompatible-pointer-types.patch 
b/gui-apps/wcm/files/wcm-0.9.0-incompatible-pointer-types.patch
new file mode 100644
index 000000000000..2b4c4e2d1d59
--- /dev/null
+++ b/gui-apps/wcm/files/wcm-0.9.0-incompatible-pointer-types.patch
@@ -0,0 +1,37 @@
+https://github.com/artizirk/wdisplays/pull/25
+https://bugs.gentoo.org/946954
+
+--- a/subprojects/wdisplays/src/outputs.c
++++ b/subprojects/wdisplays/src/outputs.c
+@@ -526,7 +526,7 @@
+ static const struct zwlr_output_manager_v1_listener output_manager_listener = 
{
+   .head = output_manager_handle_head,
+   .done = output_manager_handle_done,
+-  .finished = noop,
++  .finished = (void (*)(void *, struct zwlr_output_manager_v1 *))noop,
+ };
+ static void registry_handle_global(void *data, struct wl_registry *registry,
+     uint32_t name, const char *interface, uint32_t version) {
+@@ -553,7 +553,7 @@
+ 
+ static const struct wl_registry_listener registry_listener = {
+   .global = registry_handle_global,
+-  .global_remove = noop,
++  .global_remove = (void (*)(void *, struct wl_registry *, uint32_t))noop,
+ };
+ 
+ void wd_add_output_management_listener(struct wd_state *state, struct
+@@ -603,10 +603,10 @@
+ 
+ static const struct zxdg_output_v1_listener output_listener = {
+   .logical_position = output_logical_position,
+-  .logical_size = noop,
+-  .done = noop,
++  .logical_size = (void (*)(void *, struct zxdg_output_v1 *, int32_t,  
int32_t))noop,
++  .done = (void (*)(void *, struct zxdg_output_v1 *))noop,
+   .name = output_name,
+-  .description = noop
++  .description = (void (*)(void *, struct zxdg_output_v1 *, const char *))noop
+ };
+ 
+ void wd_add_output(struct wd_state *state, struct wl_output *wl_output,

diff --git a/gui-apps/wcm/wcm-0.9.0.ebuild b/gui-apps/wcm/wcm-0.9.0.ebuild
index f49d1982ff82..9422667d1228 100644
--- a/gui-apps/wcm/wcm-0.9.0.ebuild
+++ b/gui-apps/wcm/wcm-0.9.0.ebuild
@@ -48,6 +48,10 @@ BDEPEND="
        virtual/pkgconfig
 "
 
+PATCHES=(
+       "${FILESDIR}"/${P}-incompatible-pointer-types.patch
+)
+
 src_prepare() {
        default
 

diff --git a/gui-apps/wcm/wcm-9999.ebuild b/gui-apps/wcm/wcm-9999.ebuild
index a2161dc88469..b314dd0dd63c 100644
--- a/gui-apps/wcm/wcm-9999.ebuild
+++ b/gui-apps/wcm/wcm-9999.ebuild
@@ -48,6 +48,10 @@ BDEPEND="
        virtual/pkgconfig
 "
 
+PATCHES=(
+       "${FILESDIR}"/${PN}-0.9.0-incompatible-pointer-types.patch
+)
+
 src_prepare() {
        default
 

Reply via email to