summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorAndreas Enge <andreas@enge.fr>2025-11-30 19:31:59 +0100
committerAndreas Enge <andreas@enge.fr>2025-11-30 19:33:56 +0100
commit733fc8ecebe7ddfa8ad65514fd3cac690d074324 (patch)
treefe6c021644c793c099d4320231ad4ed737be9c82 /gnu
parent4a47e22573b559de0903393afc9ae7181acb85a9 (diff)
gnu: vlc: Fix build with newer livemedia-utils.
This is a follow-up to commit 4be2dc6bd32f6a99b53580aea3c4ab3968801b52 . * gnu/packages/patches/vlc-livemedia-2024.11.28.patch: New file. * gnu/local.mk (dist_patch_DATA): Register patch. * gnu/packages/video.scm (vlc)[source]: Use patch. Fixes: guix/guix#4579 Change-Id: Ibee73a199f0d47324d30839a6a6f00b71a72a000
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/patches/vlc-livemedia-2024.11.28.patch45
-rw-r--r--gnu/packages/video.scm3
3 files changed, 48 insertions, 1 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index e3964f85abb..4c26080e2d3 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2441,6 +2441,7 @@ dist_patch_DATA = \
%D%/packages/patches/vcmi-disable-privacy-breach.patch \
%D%/packages/patches/vinagre-newer-freerdp.patch \
%D%/packages/patches/vinagre-newer-rdp-parameters.patch \
+ %D%/packages/patches/vlc-livemedia-2024.11.28.patch \
%D%/packages/patches/vsearch-unbundle-cityhash.patch \
%D%/packages/patches/vst3sdk-3.7.7-allow-winelib-compilation.patch \
%D%/packages/patches/vte-CVE-2012-2738-pt1.patch \
diff --git a/gnu/packages/patches/vlc-livemedia-2024.11.28.patch b/gnu/packages/patches/vlc-livemedia-2024.11.28.patch
new file mode 100644
index 00000000000..824673d0a52
--- /dev/null
+++ b/gnu/packages/patches/vlc-livemedia-2024.11.28.patch
@@ -0,0 +1,45 @@
+From upstream vlc.
+
+From 8befcbfa834b809602db24c9ba7456d8cfc25cdb Mon Sep 17 00:00:00 2001
+From: Florian Albrechtskirchinger <falbrechtskirchinger@gmail.com>
+Date: Sun, 2 Mar 2025 08:30:43 +0100
+Subject: [PATCH] live555: fix build with versions >= 2024.11.28
+
+In the 2024.11.28 release (version 1732752000), live555 introduced
+`EventLoopWatchVariable` as a typedef for `std::atomic<char>`, replacing
+direct use of `char` in earlier versions. Add a conditional typedef to
+define it as `char` for older versions, and update `event_rtsp` and
+`event_data` to use `EventLoopWatchVariable`.
+---
+ modules/access/live555.cpp | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/modules/access/live555.cpp b/modules/access/live555.cpp
+index 461766661e..cacea3c469 100644
+--- a/modules/access/live555.cpp
++++ b/modules/access/live555.cpp
+@@ -194,6 +194,10 @@ class RTSPClientVlc;
+ #define CAP_SUBSESSION_PAUSE (1 << 3)
+ #define CAPS_DEFAULT CAP_RATE_CONTROL
+
++#if LIVEMEDIA_LIBRARY_VERSION_INT < 1732752000 // 2024.11.28
++typedef char EventLoopWatchVariable;
++#endif
++
+ struct demux_sys_t
+ {
+ char *p_sdp; /* XXX mallocated */
+@@ -232,8 +236,8 @@ struct demux_sys_t
+ bool b_no_data; /* if we never received any data */
+ int i_no_data_ti; /* consecutive number of TaskInterrupt */
+
+- char event_rtsp;
+- char event_data;
++ EventLoopWatchVariable event_rtsp;
++ EventLoopWatchVariable event_data;
+
+ bool b_get_param; /* Does the server support GET_PARAMETER */
+ bool b_paused; /* Are we paused? */
+--
+2.52.0
+
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index d619b9c1414..7d4e1526c05 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -2473,7 +2473,8 @@ media, 2D/3D graphics and ECMAScript.")
"/vlc-" version ".tar.xz"))
(sha256
(base32
- "1c7vbbicx95nymrybgvd2d3p65q0wayhpvsx9ncs1vpsglfvxnr4"))))
+ "1c7vbbicx95nymrybgvd2d3p65q0wayhpvsx9ncs1vpsglfvxnr4"))
+ (patches (search-patches "vlc-livemedia-2024.11.28.patch"))))
(build-system gnu-build-system)
(native-inputs
(list flex bison gettext-minimal pkg-config))