diff options
author | Andreas Enge <andreas@enge.fr> | 2013-12-17 21:19:41 +0100 |
---|---|---|
committer | Andreas Enge <andreas@enge.fr> | 2013-12-17 21:19:41 +0100 |
commit | f22e0e264e400b69fc91509c676f9069b7cdbc2e (patch) | |
tree | 7600981f46bb81eb54e0d88a77a7cc7d3f02ba6e | |
parent | f733c4c838640090c6da721d065d0640031a6158 (diff) | |
download | guix-f22e0e264e400b69fc91509c676f9069b7cdbc2e.tar.gz |
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.
-rw-r--r-- | gnu/packages/video.scm | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 1a90527f21..b1d1270c05 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -23,6 +23,7 @@ #: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 @@ ("freetype" ,freetype) ("libtheora" ,libtheora) ("libvorbis" ,libvorbis) + ("patchelf" ,patchelf) ("speex" ,speex) ("zlib", zlib))) (native-inputs @@ -60,6 +62,13 @@ ("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 @@ "--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, |