aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/qt.scm13
1 files changed, 13 insertions, 0 deletions
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 361bcf6b6e..4cf1ed5735 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -999,6 +999,19 @@ compositor libraries.")))
(inputs
`(("qtbase" ,qtbase)
("eudev" ,eudev)))
+ (arguments
+ (substitute-keyword-arguments (package-arguments qtsvg)
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (add-after 'unpack 'patch-dlopen-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "src/serialport/qtudev_p.h"
+ ;; Use the absolute paths for dynamically loaded libs,
+ ;; otherwise the lib will be searched in LD_LIBRARY_PATH which
+ ;; typically is not set in guix.
+ (("^\\s*(udevLibrary->setFileNameAndVersion\\(QStringLiteral\\(\")(udev\"\\),\\s*[0-9]+\\);)" _ a b)
+ (string-append a (assoc-ref inputs "eudev") "/lib/lib" b)))
+ #t))))))
(synopsis "Qt Serial Port module")
(description "The Qt Serial Port module provides the library for
interacting with serial ports from within Qt.")))