Patchwork [2/6] gnu: Add qtsvg 5.5.1.

login
register
mail settings
Submitter Jan Nieuwenhuizen
Date Dec. 14, 2016, 7:03 p.m.
Message ID <20161214190330.30433-3-janneke@gnu.org>
Download mbox | patch
Permalink /patch/18463/
State New
Headers show

Comments

Jan Nieuwenhuizen - Dec. 14, 2016, 7:03 p.m.
* gnu/packages/qt.scm (qtsvg55): New variable.
---
 gnu/packages/qt.scm | 38 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)

Patch

diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 291f3ee..cee341c 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -1310,3 +1310,41 @@  time Web content can be enhanced with native controls.")
                   ;; Remove the bundled sqlite copy in addition to
                   ;; passing "-system-sqlite".
                   (delete-file-recursively "src/3rdparty/sqlite")))))))
+
+(define-public qtsvg55
+  (package (inherit qtbase55)
+    (name "qtsvg")
+    (version "5.5.1")
+    (source (origin
+             (method url-fetch)
+             (uri (string-append "https://download.qt.io/official_releases/qt/"
+                                 (version-major+minor version) "/" version
+                                 "/submodules/" name "-opensource-src-"
+                                 version ".tar.xz"))
+             (sha256
+              (base32
+               "1iwibbh835cpxbfh7rnrpvl9k20valr6h256np59rzdy92z8ixgp"))))
+    (propagated-inputs `())
+    (native-inputs `(("perl" ,perl)))
+    (inputs
+     `(("mesa" ,mesa)
+       ("qtbase" ,qtbase55)
+       ("zlib" ,zlib)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'configure
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               (and (zero? (system* "qmake" (string-append "PREFIX=" out)))
+                    (system* "make" "clean"))))) ; Generate broken Makefiles
+                                                 ; to be substituted
+         (add-before 'build 'fix-Makefiles
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out"))
+                   (qtbase (assoc-ref inputs "qtbase")))
+               (substitute* (find-files "." "Makefile")
+                 (((string-append "-Wl,-rpath," qtbase "/lib") all)
+                  (string-append all " -Wl,-rpath," out "/lib "))
+                 (((string-append "INSTALL_ROOT)" qtbase))
+                  (string-append "INSTALL_ROOT)" out)))))))))))