guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

05/07: gnu: k3b: Add inputs for libraries loaded at runtime.


From: guix-commits
Subject: 05/07: gnu: k3b: Add inputs for libraries loaded at runtime.
Date: Sun, 21 Jun 2020 11:40:19 -0400 (EDT)

civodul pushed a commit to branch master
in repository guix.

commit 4aa89a09144e8dac30c9c618ce159f81862da952
Author: Timotej Lazar <timotej.lazar@araneo.si>
AuthorDate: Wed Jun 17 12:50:06 2020 +0200

    gnu: k3b: Add inputs for libraries loaded at runtime.
    
    Patch the source to load these from absolute paths. Actual loading is done 
by
    the Qt library, so we cannot use k3b’s runpath.
    
    * gnu/packages/kde-multimedia.scm (k3b)[inputs]: Add libcdio-paranoia and
    libdvdcss.
    [arguments]<#:phases>[set-absolute-library-paths]: New phase.
    
    Signed-off-by: Ludovic Courtès <ludo@gnu.org>
---
 gnu/packages/kde-multimedia.scm | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm
index 654aecd..9fab19f 100644
--- a/gnu/packages/kde-multimedia.scm
+++ b/gnu/packages/kde-multimedia.scm
@@ -300,6 +300,19 @@ This package is part of the KDE multimedia module.")
     (arguments
      `(#:phases
        (modify-phases %standard-phases
+         (add-after 'unpack 'set-absolute-library-paths
+           (lambda _
+             ;; Set absolute paths for dlopened libraries. We can’t use k3b’s
+             ;; runpath as they are loaded by the Qt library.
+             (let ((libcdio-paranoia (assoc-ref %build-inputs 
"libcdio-paranoia"))
+                   (libdvdcss (assoc-ref %build-inputs "libdvdcss")))
+               (substitute* "libk3b/tools/k3bcdparanoialib.cpp"
+                 (("\"(cdio_cdda|cdio_paranoia)\"" _ library)
+                  (string-append "\"" libcdio-paranoia "/lib/" library "\"")))
+               (substitute* "libk3b/tools/k3blibdvdcss.cpp"
+                 (("\"(dvdcss)\"" _ library)
+                  (string-append "\"" libdvdcss "/lib/" library "\""))))
+             #t))
          (add-after 'qt-wrap 'wrap-path
            (lambda _
              ;; Set paths to backend programs.
@@ -335,6 +348,8 @@ This package is part of the KDE multimedia module.")
        ("kxmlgui" ,kxmlgui)
        ("lame" ,lame)
        ("libburn" ,libburn)
+       ("libcdio-paranoia" ,libcdio-paranoia)
+       ("libdvdcss" ,libdvdcss)
        ("libdvdread" ,libdvdread)
        ;; TODO: LibFuzzer
        ("libiconv" ,libiconv)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]