Subject: bug#26343: [PATCH] gnu: audacity: Update to 2.1.3.

From: Kei Kebreau <[email-masked]>
Date: Sun, 2 Apr 2017 11:52:11 -0400

* gnu/packages/audacity.scm (audacity): Update to 2.1.3.
[source]: Fetch gzipped tar archive instead of a zip archive; add
snippet to remove time-dependent code; remove unnecessary patch.
[native-inputs]: Add autoconf, automake and libtool.
[arguments]: Add autoreconf phase to detect system libraries.
* gnu/packages/patches/audacity-fix-ffmpeg-binding.patch: Delete patch.
* gnu/local.mk: Remove reference to removed patch.
---
 gnu/local.mk                                       |  1 -
 gnu/packages/audacity.scm                          | 25 +++++++++++++----
 .../patches/audacity-fix-ffmpeg-binding.patch      | 32 ----------------------
 3 files changed, 20 insertions(+), 38 deletions(-)
 delete mode 100644 gnu/packages/patches/audacity-fix-ffmpeg-binding.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 68f561e95..f03f50855 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -494,7 +494,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/ath9k-htc-firmware-binutils.patch	\
   %D%/packages/patches/ath9k-htc-firmware-gcc.patch		\
   %D%/packages/patches/ath9k-htc-firmware-objcopy.patch		\
-  %D%/packages/patches/audacity-fix-ffmpeg-binding.patch	\
   %D%/packages/patches/automake-skip-amhello-tests.patch	\
   %D%/packages/patches/automake-regexp-syntax.patch		\
   %D%/packages/patches/automake-test-gzip-warning.patch		\
diff --git a/gnu/packages/audacity.scm b/gnu/packages/audacity.scm
index a70d0e3a6..a4ac2a6ff 100644
--- a/gnu/packages/audacity.scm
+++ b/gnu/packages/audacity.scm
@@ -23,6 +23,7 @@
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages)
   #:use-module (gnu packages audio)
+  #:use-module (gnu packages autotools)
   #:use-module (gnu packages base)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages gtk)
@@ -39,15 +40,20 @@
 (define-public audacity
   (package
     (name "audacity")
-    (version "2.1.2")
+    (version "2.1.3")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "https://github.com/audacity/audacity/archive"
-                           "/Audacity-" version ".zip"))
+                           "/Audacity-" version ".tar.gz"))
        (sha256
-        (base32 "1642i9d5cdmqzj6r0qdl2ldnqsvpb08znnczncysi72x6zpvb5qq"))
-       (patches (search-patches "audacity-fix-ffmpeg-binding.patch"))))
+        (base32 "11mx7gb4dbqrgfp7hm0154x3m76ddnmhf2675q5zkxn7jc5qfc6b"))
+       ;; Replace time-dependent strings.
+       (modules '((guix build utils)))
+       (snippet
+        '(substitute* "src/AboutDialog.cpp"
+           (("__DATE__") "\"2017\"")
+           (("__TIME__") "\"00:00\"")))))
     (build-system gnu-build-system)
     (inputs
      ;; TODO: Add portSMF and libwidgetextra once they're packaged.  In-tree
@@ -73,7 +79,10 @@
        ("lilv" ,lilv)
        ("portaudio" ,portaudio)))
     (native-inputs
-     `(("gettext" ,gettext-minimal)     ;for msgfmt
+     `(("autoconf" ,autoconf)
+       ("automake" ,automake)
+       ("gettext" ,gettext-minimal)     ;for msgfmt
+       ("libtool" ,libtool)
        ("pkg-config" ,pkg-config)
        ("python" ,python-2)
        ("which" ,which)))
@@ -90,6 +99,12 @@
           (string-append "ID3TAG_LIBS=-L" libid3tag "/lib -lid3tag -lz")
           (string-append "LIBMAD_CFLAGS=-I" libmad "/include")
           (string-append "LIBMAD_LIBS=-L" libmad "/lib -lmad")))
+       #:phases
+       (modify-phases %standard-phases
+         ;; Ensure the usage of system libraries.
+         (add-before 'configure 'autoreconf
+           (lambda _
+             (zero? (system* "autoreconf" "-vfi")))))
        ;; The test suite is not "well exercised" according to the developers,
        ;; and fails with various errors.  See
        ;; <http://sourceforge.net/p/audacity/mailman/message/33524292/>.
diff --git a/gnu/packages/patches/audacity-fix-ffmpeg-binding.patch b/gnu/packages/patches/audacity-fix-ffmpeg-binding.patch
deleted file mode 100644
index d6d65338d..000000000
--- a/gnu/packages/patches/audacity-fix-ffmpeg-binding.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-This resolves some "declaration of C function conflicts with previous
-declaration" errors during compilation.
-
---- a/src/FFmpeg.h	2015-02-21 00:33:33.853857529 +0100
-+++ b/src/FFmpeg.h	2015-02-21 00:35:09.626497205 +0100
-@@ -688,7 +688,7 @@
-    FFMPEG_FUNCTION_WITH_RETURN(
-       AVOutputFormat*,
-       av_oformat_next,
--      (AVOutputFormat *f),
-+      (const AVOutputFormat *f),
-       (f)
-    );
-    FFMPEG_FUNCTION_WITH_RETURN(
-@@ -755,7 +755,7 @@
-    FFMPEG_FUNCTION_WITH_RETURN(
-       int,
-       av_fifo_size,
--      (AVFifoBuffer *f),
-+      (const AVFifoBuffer *f),
-       (f)
-    );
-    FFMPEG_FUNCTION_WITH_RETURN(
-@@ -801,7 +801,7 @@
-    FFMPEG_FUNCTION_WITH_RETURN(
-       AVDictionaryEntry *,
-       av_dict_get,
--      (AVDictionary *m, const char *key, const AVDictionaryEntry *prev, int flags),
-+      (const AVDictionary *m, const char *key, const AVDictionaryEntry *prev, int flags),
-       (m, key, prev, flags)
-    );
-    FFMPEG_FUNCTION_WITH_RETURN(
-- 
2.12.2