From f22e0e264e400b69fc91509c676f9069b7cdbc2e Mon Sep 17 00:00:00 2001 From: Andreas Enge <andreas@enge.fr> Date: Tue, 17 Dec 2013 21:19:41 +0100 Subject: 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. --- gnu/packages/video.scm | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) (limited to 'gnu/packages') 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, -- cgit v1.2.3