contact.ng0@cryptolab.net writes: > From: ng0 > > * gnu/packages/video.scm (libmp4v2): New variable. > --- > gnu/packages/video.scm | 56 +++++++++++++++++++++++++++++++++++++++++++++++++- > 1 file changed, 55 insertions(+), 1 deletion(-) > > diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm > index 8ba229e58..601364fdf 100644 > --- a/gnu/packages/video.scm > +++ b/gnu/packages/video.scm > @@ -11,7 +11,7 @@ > ;;; Copyright © 2016 Kei Kebreau > ;;; Copyright © 2016 Dmitry Nikolaev > ;;; Copyright © 2016 Andy Patterson > -;;; Copyright © 2016 ng0 > +;;; Copyright © 2016, 2017 ng0 > ;;; Copyright © 2016 Eric Bavier > ;;; Copyright © 2016 Jan Nieuwenhuizen > ;;; > @@ -57,6 +57,7 @@ > #:use-module (gnu packages compression) > #:use-module (gnu packages curl) > #:use-module (gnu packages databases) > + #:use-module (gnu packages dejagnu) > #:use-module (gnu packages elf) > #:use-module (gnu packages flex) > #:use-module (gnu packages fontutils) > @@ -75,6 +76,7 @@ > #:use-module (gnu packages linux) > #:use-module (gnu packages lua) > #:use-module (gnu packages m4) > + #:use-module (gnu packages man) > #:use-module (gnu packages mp3) > #:use-module (gnu packages ncurses) > #:use-module (gnu packages ocr) > @@ -1862,3 +1864,55 @@ of modern, widely supported codecs.") > (description > "Openh264 is a library which can decode H264 video streams.") > (license license:bsd-2))) > + > +(define-public libmp4v2 > + (package > + (name "libmp4v2") > + (version "2.0.0") > + (source > + (origin > + (method url-fetch) > + ;; XXX: The new location of upstream is uncertain and will become relevant the > + ;; moment when the googlecode archive shuts down. It is past the date it > + ;; should've been turned off. I tried to communicate with upstream, but this > + ;; wasn't very responsive and not very helpful. The short summary is, it is > + ;; chaos when it comes to the amount of forks and only time will tell where > + ;; the new upstream location is. > + (uri (string-append "https://storage.googleapis.com/google-" > + "code-archive-downloads/v2/" > + "code.google.com/mp4v2/mp4v2-" version ".tar.bz2")) > + (file-name (string-append name "-" version ".tar.bz2")) > + (sha256 > + (base32 > + "0f438bimimsvxjbdp4vsr8hjw2nwggmhaxgcw07g2z361fkbj683")))) > + (build-system gnu-build-system) > + (outputs '("out" > + "static")) ; 3.7MiB .a file > + (arguments > + `(#:phases Adding a phase here that gets rid of dates and such makes the build reproducible: (add-after 'unpack 'pre-configure (lambda _ (substitute* "configure" (("PROJECT_build=\"`date`\"") "PROJECT_build=\"\"") (("ac_abs_top_builddir=$ac_pwd") "ac_abs_top_builddir=\"\"")))) > + (modify-phases %standard-phases > + (add-after 'install 'move-static-libraries > + (lambda* (#:key outputs #:allow-other-keys) > + ;; Move static libraries to the "static" output. > + (let* ((out (assoc-ref outputs "out")) > + (lib (string-append out "/lib")) > + (static (assoc-ref outputs "static")) > + (slib (string-append static "/lib"))) > + (mkdir-p slib) > + (for-each (lambda (file) > + (install-file file slib) > + (delete-file file)) > + (find-files lib "\\.a$")) > + #t)))))) > + (native-inputs > + `(("help2man" ,help2man) > + ("dejagnu" ,dejagnu))) > + (home-page "https://code.google.com/archive/p/mp4v2/") > + (synopsis "libmp4v2 provides an API to create and modify mp4 files") The synopsis should start with an uppercase letter and not start with the package name. Perhaps you could erase everything before "API". > + (description > + "The MP4v2 library provides an API to create and modify mp4 files as defined by > +ISO-IEC:14496-1:2001 MPEG-4 Systems. This file format is derived from Apple's QuickTime > +file format that has been used as a multimedia file format in a variety of platforms and > +applications. It is a very powerful and extensible format that can accommodate > +practically any type of media.") > + (license license:mpl1.1))) The rest LGTM. Could you send an updated patch?