diff options
Diffstat (limited to 'media-sound/rhythmbox/files')
5 files changed, 200 insertions, 0 deletions
diff --git a/media-sound/rhythmbox/files/rhythmbox-3.4.7-implicit-declaration.patch b/media-sound/rhythmbox/files/rhythmbox-3.4.7-implicit-declaration.patch new file mode 100644 index 000000000000..2595561ad779 --- /dev/null +++ b/media-sound/rhythmbox/files/rhythmbox-3.4.7-implicit-declaration.patch @@ -0,0 +1,72 @@ +From 10369b9a6b896dc79d7ae715fe67bf3b4c581c22 Mon Sep 17 00:00:00 2001 +From: Matt Turner <mattst88@gmail.com> +Date: Tue, 9 May 2023 15:48:56 -0400 +Subject: [PATCH] build: Define _GNU_SOURCE for pthread_getname_np + +With clang-16, implicit function definitions are treated as errors. As a +result, the check for pthread_getname_np fails because +pthread_getname_np is only provided under _GNU_SOURCE (see +pthread_getname_np(3)) + +> Checking if "pthread_getname_np" : links: NO + +The compilation failure is + +> error: implicit declaration of function 'pthread_getname_np' [-Werror,-Wimplicit-function-declaration] + +The inclusion of pthread.h lib/rb-debug.c must be moved above the system +headers because they may include pthread.h themselves (and in practice +unistd.h does). If that change is not done, lib/rb-debug.c will fail to +compile for the same reason as the configure test. + +Note that to test this, one must disable prctl() detection. + +Bug: https://bugs.gentoo.org/898926 +--- + lib/rb-debug.c | 11 ++++++----- + meson.build | 1 + + 2 files changed, 7 insertions(+), 5 deletions(-) + +diff --git a/lib/rb-debug.c b/lib/rb-debug.c +index a5b4ccac6..b9e0ec81d 100644 +--- a/lib/rb-debug.c ++++ b/lib/rb-debug.c +@@ -30,17 +30,18 @@ + + #include "config.h" + ++#if defined(HAVE_PRCTL) ++#include <sys/prctl.h> ++#elif defined(HAVE_PTHREAD_GETNAME_NP) ++#define _GNU_SOURCE ++#include <pthread.h> ++#endif + #include <unistd.h> + #include <stdio.h> + #include <string.h> + #include <stdarg.h> + #include <signal.h> + #include <time.h> +-#if defined(HAVE_PRCTL) +-#include <sys/prctl.h> +-#elif defined(HAVE_PTHREAD_GETNAME_NP) +-#include <pthread.h> +-#endif + + #include <glib.h> + +diff --git a/meson.build b/meson.build +index 681e084e8..bbe014246 100644 +--- a/meson.build ++++ b/meson.build +@@ -110,6 +110,7 @@ have_prctl = cc.has_function('prctl', prefix: '#include <sys/prctl.h>') + cdata.set('HAVE_PRCTL', have_prctl) + + have_pthread_getname_np = cc.links(''' ++ #define _GNU_SOURCE + #include <pthread.h> + int main() { + char nm[17]; +-- +GitLab + diff --git a/media-sound/rhythmbox/files/rhythmbox-3.4.7-libxml-entities.patch b/media-sound/rhythmbox/files/rhythmbox-3.4.7-libxml-entities.patch new file mode 100644 index 000000000000..b542224d2fbe --- /dev/null +++ b/media-sound/rhythmbox/files/rhythmbox-3.4.7-libxml-entities.patch @@ -0,0 +1,36 @@ +From: =?utf-8?q?J=C3=BCrg_Billeter?= <j@bitron.ch> +Date: Tue, 28 Nov 2023 20:12:07 +0100 +Subject: Add missing <libxml/entities.h> include + +(cherry picked from commit 4a906b33535c794f45d3bbc816f3b56a729529b4) + +Origin: upstream, after 3.4.7 +--- + rhythmdb/rhythmdb-query.c | 1 + + sources/rb-static-playlist-source.c | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/rhythmdb/rhythmdb-query.c b/rhythmdb/rhythmdb-query.c +index 0d1c24c..0009dde 100644 +--- a/rhythmdb/rhythmdb-query.c ++++ b/rhythmdb/rhythmdb-query.c +@@ -30,6 +30,7 @@ + + #include <string.h> + ++#include <libxml/entities.h> + #include <glib.h> + #include <glib-object.h> + #include <gobject/gvaluecollector.h> +diff --git a/sources/rb-static-playlist-source.c b/sources/rb-static-playlist-source.c +index 4c60f70..9d8606a 100644 +--- a/sources/rb-static-playlist-source.c ++++ b/sources/rb-static-playlist-source.c +@@ -46,6 +46,7 @@ + + #include <string.h> + ++#include <libxml/entities.h> + #include <libxml/tree.h> + #include <glib/gi18n.h> + #include <gtk/gtk.h> diff --git a/media-sound/rhythmbox/files/rhythmbox-3.4.7-libxml2-2.12.patch b/media-sound/rhythmbox/files/rhythmbox-3.4.7-libxml2-2.12.patch new file mode 100644 index 000000000000..7d95cb439d57 --- /dev/null +++ b/media-sound/rhythmbox/files/rhythmbox-3.4.7-libxml2-2.12.patch @@ -0,0 +1,38 @@ +From: =?utf-8?q?J=C3=BCrg_Billeter?= <j@bitron.ch> +Date: Tue, 28 Nov 2023 20:04:17 +0100 +Subject: playlist-manager: Fix crash with libxml2 2.12 +MIME-Version: 1.0 +Content-Type: text/plain; charset="utf-8" +Content-Transfer-Encoding: 8bit + +The missing include resulted in an implicit function declaration, which +may result in a segmentation fault on startup. + + ../shell/rb-playlist-manager.c: In function ‘rb_playlist_manager_load_playlists’: + ../shell/rb-playlist-manager.c:374:23: warning: implicit declaration of function ‘xmlParseMemory’ [-Wimplicit-function-declaration] + 374 | doc = xmlParseMemory (g_bytes_get_data (data, NULL), g_bytes_get_size (data)); + | ^~~~~~~~~~~~~~ + ../shell/rb-playlist-manager.c:374:23: warning: nested extern declaration of ‘xmlParseMemory’ [-Wnested-externs] + ../shell/rb-playlist-manager.c:374:21: warning: assignment to ‘xmlDocPtr’ {aka ‘struct _xmlDoc *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] + 374 | doc = xmlParseMemory (g_bytes_get_data (data, NULL), g_bytes_get_size (data)); + | ^ + +(cherry picked from commit 66da2f843e84bfa85870a4ace4054aa91ea07951) + +Origin: upstream, after 3.4.7 +--- + shell/rb-playlist-manager.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/shell/rb-playlist-manager.c b/shell/rb-playlist-manager.c +index 4974c9f..e0a54c6 100644 +--- a/shell/rb-playlist-manager.c ++++ b/shell/rb-playlist-manager.c +@@ -41,6 +41,7 @@ + #include <stdio.h> /* rename() */ + #include <unistd.h> /* unlink() */ + ++#include <libxml/parser.h> + #include <libxml/tree.h> + #include <glib/gi18n.h> + #include <gtk/gtk.h> diff --git a/media-sound/rhythmbox/files/rhythmbox-3.4.7-python3.12.patch b/media-sound/rhythmbox/files/rhythmbox-3.4.7-python3.12.patch new file mode 100644 index 000000000000..fb38b66c89d4 --- /dev/null +++ b/media-sound/rhythmbox/files/rhythmbox-3.4.7-python3.12.patch @@ -0,0 +1,30 @@ +From: Jonathan Matthew <jonathan@d14n.org> +Date: Mon, 4 Dec 2023 08:15:19 +1000 +Subject: artsearch: fix regex strings so python 3.12 stops complaining + +(cherry picked from commit ceeed5736c3e25d33fec5a100afde20ef485e07e) + +Origin: upstream, after 3.4.7 +--- + plugins/artsearch/lastfm.py | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/plugins/artsearch/lastfm.py b/plugins/artsearch/lastfm.py +index 0409105..82d5eeb 100644 +--- a/plugins/artsearch/lastfm.py ++++ b/plugins/artsearch/lastfm.py +@@ -49,10 +49,10 @@ API_URL = 'https://ws.audioscrobbler.com/2.0/' + # LASTFM_TOOLTIP = (LASTFM_LOGO, _("Image provided by Last.fm")) + + DISC_NUMBER_REGEXS = ( +- "\(disc *[0-9]+\)", +- "\(cd *[0-9]+\)", +- "\[disc *[0-9]+\]", +- "\[cd *[0-9]+\]", ++ "\\(disc *[0-9]+\\)", ++ "\\(cd *[0-9]+\\)", ++ "\\[disc *[0-9]+\\]", ++ "\\[cd *[0-9]+\\]", + " - disc *[0-9]+$", + " - cd *[0-9]+$", + " disc *[0-9]+$", diff --git a/media-sound/rhythmbox/files/rhythmbox-3.4.7-skip-broken-test.patch b/media-sound/rhythmbox/files/rhythmbox-3.4.7-skip-broken-test.patch new file mode 100644 index 000000000000..6cfccb262f7c --- /dev/null +++ b/media-sound/rhythmbox/files/rhythmbox-3.4.7-skip-broken-test.patch @@ -0,0 +1,24 @@ +From: Jeremy Bicha <jeremy.bicha@canonical.com> +Date: Thu, 23 Jun 2022 10:12:20 -0400 +Subject: tests: Skip load_query_multiple + +This test fails on arm64 only + +https://gitlab.gnome.org/GNOME/rhythmbox/-/issues/1993 +--- + tests/test-widgets.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/test-widgets.c b/tests/test-widgets.c +index 0f725ed..60b194d 100644 +--- a/tests/test-widgets.c ++++ b/tests/test-widgets.c +@@ -291,7 +291,7 @@ rb_query_creator_suite (void) + tcase_add_checked_fixture (tc_qls, test_rhythmdb_setup, test_rhythmdb_shutdown); + tcase_add_test (tc_qls, test_query_creator_load_query_empty); + tcase_add_test (tc_qls, test_query_creator_load_query_simple); +- tcase_add_test (tc_qls, test_query_creator_load_query_multiple); ++ /* tcase_add_test (tc_qls, test_query_creator_load_query_multiple); */ + tcase_add_test (tc_qls, test_query_creator_load_query_disjunction); + tcase_add_test (tc_qls, test_query_creator_load_limit_count); + tcase_add_test (tc_qls, test_query_creator_load_limit_minutes); |