gnu: ffmpeg: Modify runpath of binaries to include output library path.

* gnu/packages/video.scm (ffmpeg): Patch binaries to add output library path
    to runpath.
This commit is contained in:
Andreas Enge 2013-12-17 21:19:41 +01:00
parent f733c4c838
commit f22e0e264e

View file

@ -23,6 +23,7 @@ (define-module (gnu packages video)
#:use-module (guix build-system gnu)
#:use-module (gnu packages algebra)
#:use-module (gnu packages compression)
#:use-module (gnu packages elf)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages oggvorbis)
#:use-module (gnu packages openssl)
@ -48,6 +49,7 @@ (define-public ffmpeg
("freetype" ,freetype)
("libtheora" ,libtheora)
("libvorbis" ,libvorbis)
("patchelf" ,patchelf)
("speex" ,speex)
("zlib", zlib)))
(native-inputs
@ -60,6 +62,13 @@ (define-public ffmpeg
("yasm" ,yasm)))
(arguments
`(#:test-target "fate"
#:modules ((guix build gnu-build-system)
(guix build utils)
(guix build rpath)
(srfi srfi-26))
#:imported-modules ((guix build gnu-build-system)
(guix build utils)
(guix build rpath))
#:phases
(alist-replace
'configure
@ -166,7 +175,16 @@ (define-public ffmpeg
"--disable-mipsdspr1"
"--disable-mipsdspr2"
"--disable-mipsfpu"))))
%standard-phases)))
(alist-cons-after
'strip 'add-lib-to-runpath
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(lib (string-append out "/lib")))
;; Add LIB to the RUNPATH of all the executables.
(with-directory-excursion out
(for-each (cut augment-rpath <> lib)
(find-files "bin" ".*")))))
%standard-phases))))
(home-page "http://www.ffmpeg.org/")
(synopsis "Audio and video framework")
(description "FFmpeg is a complete, cross-platform solution to record,