From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <gentoo-commits+bounces-1628011-garchives=archives.gentoo.org@lists.gentoo.org>
Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (2048 bits))
	(No client certificate requested)
	by finch.gentoo.org (Postfix) with ESMTPS id 7CFFA158064
	for <garchives@archives.gentoo.org>; Sun,  5 May 2024 12:54:11 +0000 (UTC)
Received: from pigeon.gentoo.org (localhost [127.0.0.1])
	by pigeon.gentoo.org (Postfix) with SMTP id B86692BC018;
	Sun,  5 May 2024 12:54:10 +0000 (UTC)
Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits))
	(No client certificate requested)
	by pigeon.gentoo.org (Postfix) with ESMTPS id 0BDDD2BC019
	for <gentoo-commits@lists.gentoo.org>; Sun,  5 May 2024 12:54:10 +0000 (UTC)
Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits))
	(No client certificate requested)
	by smtp.gentoo.org (Postfix) with ESMTPS id 4555C34315E
	for <gentoo-commits@lists.gentoo.org>; Sun,  5 May 2024 12:54:09 +0000 (UTC)
Received: from localhost.localdomain (localhost [IPv6:::1])
	by oystercatcher.gentoo.org (Postfix) with ESMTP id D8EF21A26
	for <gentoo-commits@lists.gentoo.org>; Sun,  5 May 2024 12:54:07 +0000 (UTC)
From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Content-Transfer-Encoding: 8bit
Content-type: text/plain; charset=UTF-8
Reply-To: gentoo-dev@lists.gentoo.org, "Sam James" <sam@gentoo.org>
Message-ID: <1714913625.330c8f61442cdeba8962c44c186fd0e8c908ac73.sam@gentoo>
Subject: [gentoo-commits] repo/gentoo:master commit in: net-misc/spice-gtk/, net-misc/spice-gtk/files/
X-VCS-Repository: repo/gentoo
X-VCS-Files: net-misc/spice-gtk/files/spice-gtk-0.42-lld17-fix.patch net-misc/spice-gtk/spice-gtk-0.42-r4.ebuild net-misc/spice-gtk/spice-gtk-9999.ebuild
X-VCS-Directories: net-misc/spice-gtk/files/ net-misc/spice-gtk/
X-VCS-Committer: sam
X-VCS-Committer-Name: Sam James
X-VCS-Revision: 330c8f61442cdeba8962c44c186fd0e8c908ac73
X-VCS-Branch: master
Date: Sun,  5 May 2024 12:54:07 +0000 (UTC)
Precedence: bulk
List-Post: <mailto:gentoo-commits@lists.gentoo.org>
List-Help: <mailto:gentoo-commits+help@lists.gentoo.org>
List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org>
List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org>
List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org>
X-BeenThere: gentoo-commits@lists.gentoo.org
X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply
X-Archives-Salt: 39333190-194e-4a31-9fe7-006ac2f0c2a8
X-Archives-Hash: f696a35d6b47567816924406188d58df

commit:     330c8f61442cdeba8962c44c186fd0e8c908ac73
Author:     Kostadin Shishmanov <kocelfc <AT> tutanota <DOT> com>
AuthorDate: Sun May  5 12:37:03 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun May  5 12:53:45 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=330c8f61

net-misc/spice-gtk: enable py3.12, backport lld 17 fix

Closes: https://bugs.gentoo.org/915210
Closes: https://bugs.gentoo.org/929731
Signed-off-by: Kostadin Shishmanov <kocelfc <AT> tutanota.com>
Closes: https://github.com/gentoo/gentoo/pull/36566
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../spice-gtk/files/spice-gtk-0.42-lld17-fix.patch | 167 +++++++++++++++++++++
 ...ce-gtk-9999.ebuild => spice-gtk-0.42-r4.ebuild} |   7 +-
 net-misc/spice-gtk/spice-gtk-9999.ebuild           |   2 +-
 3 files changed, 174 insertions(+), 2 deletions(-)

diff --git a/net-misc/spice-gtk/files/spice-gtk-0.42-lld17-fix.patch b/net-misc/spice-gtk/files/spice-gtk-0.42-lld17-fix.patch
new file mode 100644
index 000000000000..b6197fb15ba3
--- /dev/null
+++ b/net-misc/spice-gtk/files/spice-gtk-0.42-lld17-fix.patch
@@ -0,0 +1,167 @@
+https://gitlab.freedesktop.org/spice/spice-gtk/-/merge_requests/121
+https://bugs.gentoo.org/915210
+
+From 7e87382b585a799ced543b0c3fd127b2a813285f Mon Sep 17 00:00:00 2001
+From: Frediano Ziglio <freddy77@gmail.com>
+Date: Fri, 23 Jun 2023 21:17:26 +0100
+Subject: [PATCH] Split symbol file in 2 files
+
+One file for spice-glib and another for spice-gtk.
+This avoid having duplicate exports in the future.
+spice_g_signal_connect_object, spice_util_get_debug,
+spice_util_get_version_string, spice_util_set_debug and
+spice_uuid_to_string are exported by both libraries to keep ABI
+compatibility.
+
+Signed-off-by: Frediano Ziglio <freddy77@gmail.com>
+---
+ src/{map-file => map-file-glib} | 22 ---------------------
+ src/map-file-gtk                | 35 +++++++++++++++++++++++++++++++++
+ src/meson.build                 | 17 ++++++++++------
+ 3 files changed, 46 insertions(+), 28 deletions(-)
+ rename src/{map-file => map-file-glib} (89%)
+ create mode 100644 src/map-file-gtk
+
+diff --git a/src/map-file b/src/map-file-glib
+similarity index 89%
+rename from src/map-file
+rename to src/map-file-glib
+index c0d8ca6e..ef0a31f3 100644
+--- a/src/map-file
++++ b/src/map-file-glib
+@@ -31,18 +31,8 @@ spice_display_channel_get_primary;
+ spice_display_channel_get_type;
+ spice_display_channel_gl_draw_done;
+ spice_display_get_gl_scanout;
+-spice_display_get_grab_keys;
+-spice_display_get_pixbuf;
+ spice_display_get_primary;
+-spice_display_get_type;
+ spice_display_gl_draw_done;
+-spice_display_key_event_get_type;
+-spice_display_keyboard_ungrab;
+-spice_display_mouse_ungrab;
+-spice_display_new;
+-spice_display_new_with_monitor;
+-spice_display_send_keys;
+-spice_display_set_grab_keys;
+ spice_file_transfer_task_cancel;
+ spice_file_transfer_task_get_filename;
+ spice_file_transfer_task_get_progress;
+@@ -52,17 +42,7 @@ spice_file_transfer_task_get_type;
+ spice_get_option_group;
+ spice_gl_scanout_free;
+ spice_gl_scanout_get_type;
+-spice_grab_sequence_as_string;
+-spice_grab_sequence_copy;
+-spice_grab_sequence_free;
+-spice_grab_sequence_get_type;
+-spice_grab_sequence_new;
+-spice_grab_sequence_new_from_string;
+ spice_g_signal_connect_object;
+-spice_gtk_session_copy_to_guest;
+-spice_gtk_session_get;
+-spice_gtk_session_get_type;
+-spice_gtk_session_paste_from_guest;
+ spice_inputs_button_press;
+ spice_inputs_button_release;
+ spice_inputs_channel_button_press;
+@@ -185,8 +165,6 @@ spice_usb_device_manager_is_redirecting;
+ spice_usb_device_manager_allocate_device_for_file_descriptor;
+ spice_usb_device_manager_create_shared_cd_device;
+ spice_usb_device_manager_is_device_shared_cd;
+-spice_usb_device_widget_get_type;
+-spice_usb_device_widget_new;
+ spice_usbredir_channel_get_type;
+ spice_util_get_debug;
+ spice_util_get_version_string;
+diff --git a/src/map-file-gtk b/src/map-file-gtk
+new file mode 100644
+index 00000000..ca5dd446
+--- /dev/null
++++ b/src/map-file-gtk
+@@ -0,0 +1,35 @@
++SPICEGTK_1 {
++global:
++spice_display_get_grab_keys;
++spice_display_get_pixbuf;
++spice_display_get_type;
++spice_display_key_event_get_type;
++spice_display_keyboard_ungrab;
++spice_display_mouse_ungrab;
++spice_display_new;
++spice_display_new_with_monitor;
++spice_display_send_keys;
++spice_display_set_grab_keys;
++spice_grab_sequence_as_string;
++spice_grab_sequence_copy;
++spice_grab_sequence_free;
++spice_grab_sequence_get_type;
++spice_grab_sequence_new;
++spice_grab_sequence_new_from_string;
++spice_gtk_session_copy_to_guest;
++spice_gtk_session_get;
++spice_gtk_session_get_type;
++spice_gtk_session_paste_from_guest;
++spice_usb_device_widget_get_type;
++spice_usb_device_widget_new;
++
++/* FIXME: remove the following 5 duplicated symbols in next ABI break */
++spice_g_signal_connect_object;
++spice_util_get_debug;
++spice_util_get_version_string;
++spice_util_set_debug;
++spice_uuid_to_string;
++
++local:
++*;
++};
+diff --git a/src/meson.build b/src/meson.build
+index 852217ac..68fe7ab2 100644
+--- a/src/meson.build
++++ b/src/meson.build
+@@ -185,14 +185,20 @@ test_syms_path = meson.current_source_dir() / 'test-map-file'
+ test_version_script = '-Wl,--version-script=@0@'.format(test_syms_path)
+ spice_has_version_script = compiler.has_link_argument(test_version_script)
+ 
+-spice_client_glib_syms = files('map-file')
+-spice_client_glib_syms_path = meson.current_source_dir() / 'map-file'
+-spice_gtk_version_script = '-Wl,--version-script=@0@'.format(spice_client_glib_syms_path)
+-if not spice_has_version_script
++if spice_has_version_script
++  spice_client_glib_syms = files('map-file-glib')
++  spice_client_gtk_syms = files('map-file-gtk')
++  spice_client_glib_syms_path = meson.current_source_dir() / 'map-file-glib'
++  spice_client_gtk_syms_path = meson.current_source_dir() / 'map-file-gtk'
++  spice_glib_version_script = '-Wl,--version-script=@0@'.format(spice_client_glib_syms_path)
++  spice_gtk_version_script = '-Wl,--version-script=@0@'.format(spice_client_gtk_syms_path)
++else
+   if host_machine.system() == 'linux'
+     error('Version scripts should be supported on Linux')
+   endif
+   spice_client_glib_syms = []
++  spice_client_gtk_syms = []
++  spice_glib_version_script = []
+   spice_gtk_version_script = []
+ endif
+ 
+@@ -210,7 +216,7 @@ spice_client_glib_lib = library('spice-client-glib-2.0', spice_client_glib_sourc
+                                 version : spice_client_glib_so_version,
+                                 install : true,
+                                 include_directories : spice_gtk_include,
+-                                link_args : [spice_gtk_version_script],
++                                link_args : [spice_glib_version_script],
+                                 link_depends : spice_client_glib_syms,
+                                 dependencies : spice_glib_deps)
+ 
+@@ -377,7 +383,6 @@ if spice_gtk_has_gtk
+   #
+   # libspice-client-gtk.so
+   #
+-  spice_client_gtk_syms = spice_client_glib_syms
+ 
+   # soversion
+   # http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
+-- 
+GitLab
+

diff --git a/net-misc/spice-gtk/spice-gtk-9999.ebuild b/net-misc/spice-gtk/spice-gtk-0.42-r4.ebuild
similarity index 96%
copy from net-misc/spice-gtk/spice-gtk-9999.ebuild
copy to net-misc/spice-gtk/spice-gtk-0.42-r4.ebuild
index 37eef00f49c0..677217bfee91 100644
--- a/net-misc/spice-gtk/spice-gtk-9999.ebuild
+++ b/net-misc/spice-gtk/spice-gtk-0.42-r4.ebuild
@@ -4,7 +4,7 @@
 EAPI=8
 
 VALA_USE_DEPEND="vapigen"
-PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_COMPAT=( python3_{10..12} )
 
 inherit desktop meson optfeature python-any-r1 readme.gentoo-r1 vala xdg
 
@@ -89,6 +89,11 @@ BDEPEND="
 	vala? ( $(vala_depend) )
 "
 
+PATCHES=(
+	"${FILESDIR}/${PN}-0.42-libtool-export-symbols-fix.patch"
+	"${FILESDIR}/${PN}-0.42-lld17-fix.patch"
+)
+
 python_check_deps() {
 	python_has_version "dev-python/six[${PYTHON_USEDEP}]" &&
 	python_has_version "dev-python/pyparsing[${PYTHON_USEDEP}]"

diff --git a/net-misc/spice-gtk/spice-gtk-9999.ebuild b/net-misc/spice-gtk/spice-gtk-9999.ebuild
index 37eef00f49c0..5f81513a6c11 100644
--- a/net-misc/spice-gtk/spice-gtk-9999.ebuild
+++ b/net-misc/spice-gtk/spice-gtk-9999.ebuild
@@ -4,7 +4,7 @@
 EAPI=8
 
 VALA_USE_DEPEND="vapigen"
-PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_COMPAT=( python3_{10..12} )
 
 inherit desktop meson optfeature python-any-r1 readme.gentoo-r1 vala xdg