all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Kei Kebreau <kei@openmailbox.org>
To: contact.ng0@cryptolab.net
Cc: guix-devel@gnu.org, ng0 <ng0@libertad.pw>
Subject: Re: [PATCH 1/5] gnu: Add libmp4v2.
Date: Tue, 07 Feb 2017 15:16:07 -0500	[thread overview]
Message-ID: <87poitiwoo.fsf@openmailbox.org> (raw)
In-Reply-To: <20170131133501.30273-2-contact.ng0@cryptolab.net> (contact's message of "Tue, 31 Jan 2017 13:34:57 +0000")

[-- Attachment #1: Type: text/plain, Size: 4828 bytes --]

contact.ng0@cryptolab.net writes:

> From: ng0 <ng0@libertad.pw>
>
> * 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 <kei@openmailbox.org>
>  ;;; Copyright © 2016 Dmitry Nikolaev <cameltheman@gmail.com>
>  ;;; Copyright © 2016 Andy Patterson <ajpatter@uwaterloo.ca>
> -;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
> +;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net>
>  ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
>  ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
>  ;;;
> @@ -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?

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

  parent reply	other threads:[~2017-02-08 22:22 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-01-31 13:34 libextractor dependencies: libmp4v2, tidy-html, libsmf contact.ng0
2017-01-31 13:34 ` [PATCH 1/5] gnu: Add libmp4v2 contact.ng0
2017-02-07 20:16   ` Kei Kebreau
2017-02-07 20:16   ` Kei Kebreau
2017-02-07 20:16   ` Kei Kebreau [this message]
2017-02-07 20:16   ` Kei Kebreau
2017-02-07 20:16   ` Kei Kebreau
2017-01-31 13:34 ` [PATCH 2/5] gnu: Add tidy-html contact.ng0
2017-02-07 20:27   ` Kei Kebreau
2017-02-07 20:27   ` Kei Kebreau
2017-02-07 20:27   ` Kei Kebreau
2017-02-07 20:27   ` Kei Kebreau
2017-01-31 13:34 ` [PATCH 3/5] gnu: Add libsmf contact.ng0
2017-01-31 13:35 ` [PATCH 4/5] gnu: libextractor: Add dependencies contact.ng0
2017-01-31 13:35 ` [PATCH 5/5] gnu: libextractor: Move .a files to output "static" contact.ng0
2017-02-02 17:13   ` Maxim Cournoyer
2017-02-07 20:46 ` libextractor dependencies: libmp4v2, tidy-html, libsmf Kei Kebreau
2017-02-07 20:46 ` Kei Kebreau
2017-02-07 20:46 ` Kei Kebreau
2017-02-09 12:50   ` ng0
2017-02-09 13:36   ` libextractor changes, v2 contact.ng0
2017-02-09 13:37     ` [PATCH 1/5] gnu: Add libmp4v2 contact.ng0
2017-02-09 13:37     ` [PATCH 2/5] gnu: Add tidy-html contact.ng0
2017-02-09 13:37     ` [PATCH 3/5] gnu: Add libsmf contact.ng0
2017-02-09 13:37     ` [PATCH 4/5] gnu: libextractor: Add dependencies contact.ng0
2017-02-09 13:37     ` [PATCH 5/5] gnu: libextractor: Move .a files to output "static" contact.ng0
2017-02-09 17:17     ` libextractor changes, v2 Kei Kebreau
  -- strict thread matches above, loose matches on Subject: below --
2016-12-22 16:44 libextractor enhancements up for review ng0
2016-12-22 16:44 ` [PATCH 1/5] gnu: Add libmp4v2 ng0

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87poitiwoo.fsf@openmailbox.org \
    --to=kei@openmailbox.org \
    --cc=contact.ng0@cryptolab.net \
    --cc=guix-devel@gnu.org \
    --cc=ng0@libertad.pw \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.