Subject: [PATCH] gnu: liba52: Update to 0.8.0, change source and homepage

From: Andrew Wong <[email-masked]>
Date: Wed, 23 Apr 2025 22:11:56 -0400

* gnu/packages/video.scm (liba52): Update to 0.8.0.
[source] <uri>: Switch to new, maintained repository.
<patches>: Convert to substitutions for flexibility.
<snippet>: New substitutions.
[arguments]: Remove redundant bootstrap phase replication.
[home-page]: Switch to new homepage.

* gnu/packages/patches/liba52-enable-pic.patch: Remove obsolete patch.
* gnu/packages/patches/liba52-link-with-libm.patch: Remove obsolete patch.
* gnu/packages/patches/liba52-set-soname.patch: Remove obsolete patch.
* gnu/packages/patches/liba52-use-mtune-not-mcpu.patch: Remove obsolete patch.

Change-Id: I65d61d2921a444b3f86fdc6f7e4be2143ada5ce5
---
 gnu/packages/patches/liba52-enable-pic.patch  | 25 ----------
 .../patches/liba52-link-with-libm.patch       | 33 -------------
 gnu/packages/patches/liba52-set-soname.patch  | 23 ---------
 .../patches/liba52-use-mtune-not-mcpu.patch   | 24 ----------
 gnu/packages/video.scm                        | 47 +++++++++----------
 5 files changed, 21 insertions(+), 131 deletions(-)
 delete mode 100644 gnu/packages/patches/liba52-enable-pic.patch
 delete mode 100644 gnu/packages/patches/liba52-link-with-libm.patch
 delete mode 100644 gnu/packages/patches/liba52-set-soname.patch
 delete mode 100644 gnu/packages/patches/liba52-use-mtune-not-mcpu.patch

diff --git a/gnu/packages/patches/liba52-enable-pic.patch b/gnu/packages/patches/liba52-enable-pic.patch
deleted file mode 100644
index 924ac1331f..0000000000
--- a/gnu/packages/patches/liba52-enable-pic.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-Copied from Debian.
-
-Description: Disabling -prefer-non-pic which enables -fPIC
-Bug-Debian: http://bugs.debian.org/401590
-Author: Daniel Baumann <[email-masked]>, Dmitrijs Ledkovs <[email-masked]>
-
-
----
- liba52/configure.incl |    3 ---
- 1 files changed, 0 insertions(+), 3 deletions(-)
-
-Index: a52dec-deb/liba52/configure.incl
-===================================================================
---- a52dec-deb.orig/liba52/configure.incl	2009-12-05 02:52:12.000000000 +0000
-+++ a52dec-deb/liba52/configure.incl	2009-12-05 03:23:45.000000000 +0000
-@@ -1,9 +1,6 @@
- AC_SUBST([LIBA52_CFLAGS])
- AC_SUBST([LIBA52_LIBS])
- 
--dnl avoid -fPIC when possible
--LIBA52_CFLAGS="$LIBA52_CFLAGS -prefer-non-pic"
--
- AC_ARG_ENABLE([double],
-     [  --enable-double         use double-precision samples])
- if test x"$enable_double" = x"yes"; then
diff --git a/gnu/packages/patches/liba52-link-with-libm.patch b/gnu/packages/patches/liba52-link-with-libm.patch
deleted file mode 100644
index a0771aaa62..0000000000
--- a/gnu/packages/patches/liba52-link-with-libm.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-Copied from Debian.
-
-Description: Explicitely link against -lm
-Bug-Debian: http://bugs.debian.org/553595
-Author: Fabian Greffrath <[email-masked]>, Dmitrijs Ledkovs <[email-masked]>
-
----
- libao/Makefile.am |    1 +
- src/Makefile.am   |    2 +-
- 2 files changed, 2 insertions(+), 1 deletions(-)
-
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -1,9 +1,9 @@
--CFLAGS = @A52DEC_CFLAGS@
-+AM_CFLAGS = @A52DEC_CFLAGS@
- 
- bin_PROGRAMS = a52dec extract_a52
- a52dec_SOURCES = a52dec.c getopt.c gettimeofday.c
- a52dec_LDADD = $(top_builddir)/liba52/liba52.la \
--	       $(top_builddir)/libao/libao.a @LIBAO_LIBS@
-+	       $(top_builddir)/libao/libao.a @LIBAO_LIBS@ -lm
- extract_a52_SOURCES = extract_a52.c getopt.c
- 
- man_MANS = a52dec.1 extract_a52.1
---- a/liba52/Makefile.am
-+++ b/liba52/Makefile.am
-@@ -1,4 +1,4 @@
--CFLAGS = @CFLAGS@ @LIBA52_CFLAGS@
-+AM_CFLAGS = @CFLAGS@ @LIBA52_CFLAGS@
- 
- lib_LTLIBRARIES = liba52.la
- 
diff --git a/gnu/packages/patches/liba52-set-soname.patch b/gnu/packages/patches/liba52-set-soname.patch
deleted file mode 100644
index 3eba1fb038..0000000000
--- a/gnu/packages/patches/liba52-set-soname.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-Copied from Debian.
-
-Description: Sets the soname to liba52-$(VERSION).so
-Bug-Debian: http://bugs.debian.org/401636
-Author: Daniel Baumann <[email-masked]>, Dmitrijs Ledkovs <[email-masked]>
-
-
----
- liba52/Makefile.am |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-Index: a52dec-deb/liba52/Makefile.am
-===================================================================
---- a52dec-deb.orig/liba52/Makefile.am	2009-12-05 02:52:12.000000000 +0000
-+++ a52dec-deb/liba52/Makefile.am	2009-12-05 03:23:47.000000000 +0000
-@@ -4,6 +4,6 @@
- 
- liba52_la_SOURCES = bitstream.c imdct.c bit_allocate.c parse.c downmix.c
- liba52_la_LIBADD = @LIBA52_LIBS@ -lm
--liba52_la_LDFLAGS = -no-undefined
-+liba52_la_LDFLAGS = -no-undefined -release @VERSION@
- 
- EXTRA_DIST = configure.incl a52_internal.h bitstream.h tables.h
diff --git a/gnu/packages/patches/liba52-use-mtune-not-mcpu.patch b/gnu/packages/patches/liba52-use-mtune-not-mcpu.patch
deleted file mode 100644
index d78ecbbab0..0000000000
--- a/gnu/packages/patches/liba52-use-mtune-not-mcpu.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Copied from Debian.
-
-From: Rodeo
-Origin: https://github.com/HandBrake/HandBrake/blob/master/contrib/a52dec/A04-modern-gcc-cflags.patch
-
---- a52dec-0.7.4/configure.in.orig
-+++ a52dec-0.7.4/configure.in
-@@ -34,11 +34,11 @@
-     case "$host" in
-     i?86-* | k?-*)
- 	case "$host" in
--	i386-*) OPT_CFLAGS="$CFLAGS -mcpu=i386";;
--	i486-*) OPT_CFLAGS="$CFLAGS -mcpu=i486";;
--	i586-*) OPT_CFLAGS="$CFLAGS -mcpu=pentium";;
--	i686-*) OPT_CFLAGS="$CFLAGS -mcpu=pentiumpro";;
--	k6-*)   OPT_CFLAGS="$CFLAGS -mcpu=k6";;
-+	i386-*) OPT_CFLAGS="$CFLAGS -mtune=i386";;
-+	i486-*) OPT_CFLAGS="$CFLAGS -mtune=i486";;
-+	i586-*) OPT_CFLAGS="$CFLAGS -mtune=pentium";;
-+	i686-*) OPT_CFLAGS="$CFLAGS -mtune=pentiumpro";;
-+	k6-*)   OPT_CFLAGS="$CFLAGS -mtune=k6";;
- 	esac
- 	AC_TRY_CFLAGS([$OPT_CFLAGS],[CFLAGS=$OPT_CFLAGS]);;
-     sparc-* | sparc64-*)
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 9f18f4dcc2..f77e9296e3 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -882,33 +882,28 @@ (define-public celluloid
 (define-public liba52
   (package
     (name "liba52")
-    (version "0.7.4")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append
-                    ;; A mirror://sourceforge URI doesn't work, presumably
-                    ;; because the SourceForge project is misconfigured.
-                    "http://liba52.sourceforge.net/files/a52dec-" version
-                    ".tar.gz"))
-              (sha256
-               (base32
-                "0czccp4fcpf2ykp16xcrzdfmnircz1ynhls334q374xknd5747d2"))
-              (patches (search-patches "liba52-enable-pic.patch"
-                                       "liba52-set-soname.patch"
-                                       "liba52-use-mtune-not-mcpu.patch"
-                                       "liba52-link-with-libm.patch"))))
+    (version "0.8.0")
+    (source
+     (origin (method git-fetch)
+             (uri (git-reference
+                   (url "https://git.adelielinux.org/community/a52dec")
+                   (commit (string-append "v" version))))
+             (sha256
+              (base32 "0k1y7irz1hqfzs6yqv4brgwpa04biv50z05gc584h9md0y5y52k7"))
+             (modules '((guix build utils)))
+             (snippet
+              #~(begin (substitute* "liba52/Makefile.am"
+                         ;; Set so name to liba52-$(VERSION).so
+                         (("liba52_la_LDFLAGS = -no-undefined" all)
+                          (string-append all " -release @VERSION@")))
+                       (substitute* "liba52/configure.incl"
+                         ;; Don't avoid -fPIC
+                         (("^.+-prefer-non-pic.*$") ""))
+                       (substitute* "configure.ac" (("-mcpu") "-mtune"))))))
     (build-system gnu-build-system)
-    ;; XXX We need to run ./bootstrap because of the build system fixes above.
-    (native-inputs
-     (list autoconf automake libtool))
-    (arguments `(#:configure-flags '("--enable-shared")
-                 #:phases
-                 (modify-phases %standard-phases
-                   ;; XXX We need to run ./bootstrap because of the build
-                   ;; system fixes above.
-                   (replace 'bootstrap
-                     (lambda _ (invoke "sh" "bootstrap"))))))
-    (home-page "https://liba52.sourceforge.net/")
+    (native-inputs (list autoconf automake libtool))
+    (arguments (list #:configure-flags #~(list "--enable-shared")))
+    (home-page "https://git.adelielinux.org/community/a52dec/")
     (synopsis "ATSC A/52 audio stream decoder")
     (description "liba52 is a library for decoding ATSC A/52 audio streams.
 The A/52 standard is used in a variety of applications, including digital

base-commit: f7c41ab31f5023023385500f6eb9083d23dd1ccb
-- 
2.49.0