Skip to content

Commit

Permalink
feat: update package audiowmark to 0.6.3-1 (#511)
Browse files Browse the repository at this point in the history
* fix: apply upstream patch to fix configure requiring libgcrypt-config
* fix: apply upstream patch to fix tests
* fix: add 'autoconf-archive' to makedepends

Signed-off-by: Christopher Arndt <[email protected]>
Co-authored-by: Florian Hülsmann <[email protected]>
  • Loading branch information
SpotlightKid and cbix authored Jan 3, 2025
1 parent 3fa5d98 commit 36338ec
Show file tree
Hide file tree
Showing 5 changed files with 455 additions and 5 deletions.
2 changes: 1 addition & 1 deletion nvchecker/old_ver.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"abcpp": "1.4.6",
"aether.lv2": "1.2.1",
"airwindows-lv2": "30.0",
"audiowmark": "0.6.2",
"audiowmark": "0.6.3",
"clap-example-host": "1.0.3",
"clap-validator": "0.3.2",
"cloudreverb": "0.2",
Expand Down
23 changes: 19 additions & 4 deletions packages/audiowmark/PKGBUILD
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,35 @@
# Contributor: Christopher Arndt <osam -at- chrisarndt -dot- de>

pkgname=audiowmark
pkgver=0.6.2
pkgver=0.6.3
pkgrel=1
pkgdesc='Audio and video watermarking'
arch=(x86_64 aarch64)
url='https://uplex.de/audiowmark/'
license=(GPL-3.0-or-later)
depends=(bash gcc-libs glibc libgcrypt)
makedepends=(ffmpeg fftw libsndfile mpg123 zita-resampler)
makedepends=(autoconf-archive ffmpeg fftw libsndfile mpg123 zita-resampler)
groups=(pro-audio)
source=("https://github.com/swesterfeld/$pkgname/releases/download/$pkgver/$pkgname-$pkgver.tar.zst")
sha256sums=('aacc80be9fca2c9462be51b1cf34d9194946876ae08c7bbb13c5c3b2d9621437')
source=("https://github.com/swesterfeld/$pkgname/releases/download/$pkgver/$pkgname-$pkgver.tar.zst"
'audiowmark-configure.patch'
'audiowmark-nostdin.patch'
'audiowmark-tests.patch')
sha256sums=('65389bb1de1d5ea40fdf010d9ca2164394550c5b921e25944a117b8f2ddad5ab'
'bd91d4c1cecfbb20a86cfd8005caf07d019ac1568f9f76e561f3cd8866e9cbe1'
'e46363c767dbd96ba1b6ab91ae0e26fdf05cbebd935cc2cf545e899b368c22b9'
'9bc336a3434edb66518785c2fe9db1de7796cc215904ea1a1f74c0c3b986ba91')

prepare() {
cd $pkgname-$pkgver
# https://github.com/swesterfeld/audiowmark/issues/72
patch -p1 -N -r - -i "$srcdir"/audiowmark-configure.patch || :
patch -p1 -N -r - -i "$srcdir"/audiowmark-nostdin.patch || :
patch -p1 -N -r - -i "$srcdir"/audiowmark-tests.patch || :
}

build() {
cd $pkgname-$pkgver
autoreconf -f -i -Wno-portability
./configure --prefix=/usr --with-ffmpeg
make
}
Expand Down
259 changes: 259 additions & 0 deletions packages/audiowmark/audiowmark-configure.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,259 @@
From f227995dd83dd42f67b6a59d1b98433a1f41aaf4 Mon Sep 17 00:00:00 2001
From: Stefan Westerfeld <[email protected]>
Date: Sat, 28 Dec 2024 16:26:08 +0100
Subject: [PATCH 1/5] BUILD: fail if gcrypt is not found during configure (see
also #72).

Signed-off-by: Stefan Westerfeld <[email protected]>
---
configure.ac | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/configure.ac b/configure.ac
index 1d01b7d..ee874bf 100644
--- a/configure.ac
+++ b/configure.ac
@@ -77,7 +77,9 @@ AC_SNDFILE_REQUIREMENTS
AC_LIBMPG123_REQUIREMENTS
AC_ZITA_REQUIREMENTS
AC_FFTW_CHECK
-AM_PATH_LIBGCRYPT
+AM_PATH_LIBGCRYPT([], [], [
+ AC_MSG_ERROR([You need to install libgcrypt to build this package.])
+])

dnl -------------------- ffmpeg is optional ----------------------------
AC_ARG_WITH([ffmpeg], [AS_HELP_STRING([--with-ffmpeg], [build against ffmpeg libraries])], [], [with_ffmpeg=no])

From 256fe93da3767364216420724c5947ed7257fe0a Mon Sep 17 00:00:00 2001
From: Stefan Westerfeld <[email protected]>
Date: Sat, 28 Dec 2024 18:42:20 +0100
Subject: [PATCH 2/5] BUILD: try using pkg-config first to find libgcrypt (see
also #72).

Signed-off-by: Stefan Westerfeld <[email protected]>
---
configure.ac | 21 ++++++++++++++++++---
1 file changed, 18 insertions(+), 3 deletions(-)

diff --git a/configure.ac b/configure.ac
index ee874bf..14d9767 100644
--- a/configure.ac
+++ b/configure.ac
@@ -73,13 +73,28 @@ AC_DEFUN([AC_FFTW_CHECK],
AC_DEFINE_UNQUOTED(SPECTMORPH_HAVE_FFTW, $SPECTMORPH_HAVE_FFTW, [Whether libfftw3 is available])
])

+dnl libgcrypt
+AC_DEFUN([AC_LIBGCRYPT_REQUIREMENTS],
+[
+ dnl newer libgcrypt versions provide a pkg-config file
+ PKG_CHECK_MODULES(LIBGCRYPT, [libgcrypt], [have_libgcrypt=yes], [have_libgcrypt=no])
+
+ dnl older libgcrypt versions provide libgcrypt-config
+ if test "x$have_libgcrypt" != "xyes"; then
+ AM_PATH_LIBGCRYPT([], [have_libgcrypt=yes])
+ fi
+
+ dnl fail if neither pkg-config file nor libgcrypt-config was found
+ if test "x$have_libgcrypt" != "xyes"; then
+ AC_MSG_ERROR([You need to install libgcrypt to build this package.])
+ fi
+])
+
AC_SNDFILE_REQUIREMENTS
AC_LIBMPG123_REQUIREMENTS
AC_ZITA_REQUIREMENTS
AC_FFTW_CHECK
-AM_PATH_LIBGCRYPT([], [], [
- AC_MSG_ERROR([You need to install libgcrypt to build this package.])
-])
+AC_LIBGCRYPT_REQUIREMENTS

dnl -------------------- ffmpeg is optional ----------------------------
AC_ARG_WITH([ffmpeg], [AS_HELP_STRING([--with-ffmpeg], [build against ffmpeg libraries])], [], [with_ffmpeg=no])

From 15e4e5643e22182a0bfa458205e763d3cb1f11d9 Mon Sep 17 00:00:00 2001
From: Stefan Westerfeld <[email protected]>
Date: Sat, 28 Dec 2024 19:01:32 +0100
Subject: [PATCH 3/5] BUILD: add libgcrypt.m4 check for self contained builds

Signed-off-by: Stefan Westerfeld <[email protected]>
---
m4/libgcrypt.m4 | 167 ++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 167 insertions(+)
create mode 100644 m4/libgcrypt.m4

diff --git a/m4/libgcrypt.m4 b/m4/libgcrypt.m4
new file mode 100644
index 0000000..cd4249e
--- /dev/null
+++ b/m4/libgcrypt.m4
@@ -0,0 +1,167 @@
+# libgcrypt.m4 - Autoconf macros to detect libgcrypt
+# Copyright (C) 2002, 2003, 2004, 2011, 2014, 2018, 2020 g10 Code GmbH
+#
+# This file is free software; as a special exception the author gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# This file is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
+# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+#
+# Last-changed: 2022-11-01
+
+
+dnl AM_PATH_LIBGCRYPT([MINIMUM-VERSION,
+dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]])
+dnl Test for libgcrypt and define LIBGCRYPT_CFLAGS and LIBGCRYPT_LIBS.
+dnl MINIMUM-VERSION is a string with the version number optionally prefixed
+dnl with the API version to also check the API compatibility. Example:
+dnl a MINIMUM-VERSION of 1:1.2.5 won't pass the test unless the installed
+dnl version of libgcrypt is at least 1.2.5 *and* the API number is 1. Using
+dnl this features allows to prevent build against newer versions of libgcrypt
+dnl with a changed API.
+dnl
+dnl If a prefix option is not used, the config script is first
+dnl searched in $SYSROOT/bin and then along $PATH. If the used
+dnl config script does not match the host specification the script
+dnl is added to the gpg_config_script_warn variable.
+dnl
+AC_DEFUN([AM_PATH_LIBGCRYPT],
+[ AC_REQUIRE([AC_CANONICAL_HOST])
+ AC_ARG_WITH(libgcrypt-prefix,
+ AS_HELP_STRING([--with-libgcrypt-prefix=PFX],
+ [prefix where LIBGCRYPT is installed (optional)]),
+ libgcrypt_config_prefix="$withval", libgcrypt_config_prefix="")
+ if test x"${LIBGCRYPT_CONFIG}" = x ; then
+ if test x"${libgcrypt_config_prefix}" != x ; then
+ LIBGCRYPT_CONFIG="${libgcrypt_config_prefix}/bin/libgcrypt-config"
+ fi
+ fi
+
+ use_gpgrt_config=""
+ if test x"$GPGRT_CONFIG" != x -a "$GPGRT_CONFIG" != "no"; then
+ if $GPGRT_CONFIG libgcrypt --exists; then
+ LIBGCRYPT_CONFIG="$GPGRT_CONFIG libgcrypt"
+ AC_MSG_NOTICE([Use gpgrt-config as libgcrypt-config])
+ use_gpgrt_config=yes
+ fi
+ fi
+ if test -z "$use_gpgrt_config"; then
+ if test x"${LIBGCRYPT_CONFIG}" = x ; then
+ case "${SYSROOT}" in
+ /*)
+ if test -x "${SYSROOT}/bin/libgcrypt-config" ; then
+ LIBGCRYPT_CONFIG="${SYSROOT}/bin/libgcrypt-config"
+ fi
+ ;;
+ '')
+ ;;
+ *)
+ AC_MSG_WARN([Ignoring \$SYSROOT as it is not an absolute path.])
+ ;;
+ esac
+ fi
+ AC_PATH_PROG(LIBGCRYPT_CONFIG, libgcrypt-config, no)
+ fi
+
+ tmp=ifelse([$1], ,1:1.2.0,$1)
+ if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then
+ req_libgcrypt_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'`
+ min_libgcrypt_version=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\2/'`
+ else
+ req_libgcrypt_api=0
+ min_libgcrypt_version="$tmp"
+ fi
+
+ AC_MSG_CHECKING(for LIBGCRYPT - version >= $min_libgcrypt_version)
+ ok=no
+ if test "$LIBGCRYPT_CONFIG" != "no" ; then
+ req_major=`echo $min_libgcrypt_version | \
+ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\1/'`
+ req_minor=`echo $min_libgcrypt_version | \
+ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\2/'`
+ req_micro=`echo $min_libgcrypt_version | \
+ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\3/'`
+ if test -z "$use_gpgrt_config"; then
+ libgcrypt_config_version=`$LIBGCRYPT_CONFIG --version`
+ else
+ libgcrypt_config_version=`$LIBGCRYPT_CONFIG --modversion`
+ fi
+ major=`echo $libgcrypt_config_version | \
+ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'`
+ minor=`echo $libgcrypt_config_version | \
+ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\2/'`
+ micro=`echo $libgcrypt_config_version | \
+ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\3/'`
+ if test "$major" -gt "$req_major"; then
+ ok=yes
+ else
+ if test "$major" -eq "$req_major"; then
+ if test "$minor" -gt "$req_minor"; then
+ ok=yes
+ else
+ if test "$minor" -eq "$req_minor"; then
+ if test "$micro" -ge "$req_micro"; then
+ ok=yes
+ fi
+ fi
+ fi
+ fi
+ fi
+ fi
+ if test $ok = yes; then
+ AC_MSG_RESULT([yes ($libgcrypt_config_version)])
+ else
+ AC_MSG_RESULT(no)
+ fi
+ if test $ok = yes; then
+ # If we have a recent libgcrypt, we should also check that the
+ # API is compatible
+ if test "$req_libgcrypt_api" -gt 0 ; then
+ if test -z "$use_gpgrt_config"; then
+ tmp=`$LIBGCRYPT_CONFIG --api-version 2>/dev/null || echo 0`
+ else
+ tmp=`$LIBGCRYPT_CONFIG --variable=api_version 2>/dev/null || echo 0`
+ fi
+ if test "$tmp" -gt 0 ; then
+ AC_MSG_CHECKING([LIBGCRYPT API version])
+ if test "$req_libgcrypt_api" -eq "$tmp" ; then
+ AC_MSG_RESULT([okay])
+ else
+ ok=no
+ AC_MSG_RESULT([does not match. want=$req_libgcrypt_api got=$tmp])
+ fi
+ fi
+ fi
+ fi
+ if test $ok = yes; then
+ LIBGCRYPT_CFLAGS=`$LIBGCRYPT_CONFIG --cflags`
+ LIBGCRYPT_LIBS=`$LIBGCRYPT_CONFIG --libs`
+ ifelse([$2], , :, [$2])
+ if test -z "$use_gpgrt_config"; then
+ libgcrypt_config_host=`$LIBGCRYPT_CONFIG --host 2>/dev/null || echo none`
+ else
+ libgcrypt_config_host=`$LIBGCRYPT_CONFIG --variable=host 2>/dev/null || echo none`
+ fi
+ if test x"$libgcrypt_config_host" != xnone ; then
+ if test x"$libgcrypt_config_host" != x"$host" ; then
+ AC_MSG_WARN([[
+***
+*** The config script "$LIBGCRYPT_CONFIG" was
+*** built for $libgcrypt_config_host and thus may not match the
+*** used host $host.
+*** You may want to use the configure option --with-libgcrypt-prefix
+*** to specify a matching config script or use \$SYSROOT.
+***]])
+ gpg_config_script_warn="$gpg_config_script_warn libgcrypt"
+ fi
+ fi
+ else
+ LIBGCRYPT_CFLAGS=""
+ LIBGCRYPT_LIBS=""
+ ifelse([$3], , :, [$3])
+ fi
+ AC_SUBST(LIBGCRYPT_CFLAGS)
+ AC_SUBST(LIBGCRYPT_LIBS)
+])
Loading

0 comments on commit 36338ec

Please sign in to comment.