summary refs log tree commit diff
path: root/gnu/packages/qt.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/qt.scm')
-rw-r--r--gnu/packages/qt.scm63
1 files changed, 55 insertions, 8 deletions
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 30b772d4d9..0d6bbc8fc6 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
+;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -26,19 +27,27 @@
   #:use-module (gnu packages bison)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages flex)
   #:use-module (gnu packages gl)
   #:use-module (gnu packages glib)
+  #:use-module (gnu packages gnuzilla)
+  #:use-module (gnu packages gperf)
   #:use-module (gnu packages icu4c)
   #:use-module (gnu packages image)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages databases)
+  #:use-module (gnu packages ninja)
   #:use-module (gnu packages openssl)
+  #:use-module (gnu packages pciutils)
+  #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages pulseaudio)
   #:use-module (gnu packages python)
   #:use-module (gnu packages ruby)
-  #:use-module (gnu packages xorg))
+  #:use-module (gnu packages xdisorg)
+  #:use-module (gnu packages xorg)
+  #:use-module (gnu packages xml))
 
 (define-public libxkbcommon
   (package
@@ -81,7 +90,7 @@ X11 (yet).")
 (define-public qt
   (package
     (name "qt")
-    (version "5.3.2")
+    (version "5.4.0")
     (source (origin
              (method url-fetch)
              (uri (string-append "http://download.qt-project.org/official_releases/qt/"
@@ -91,28 +100,48 @@ X11 (yet).")
                                  version ".tar.xz"))
              (sha256
               (base32
-               "1w4v53889kqpwxw45wcqz5bi6zx8xp434jpafk1vlmyb8hrzjnvz"))))
+               "176351k8ngczb324i8bbkrsz9pby7cvy2qnixfjwybzxp53xzndj"))
+             (snippet
+              '(begin
+                 ;; Remove broken symlinks.
+                 (delete-file "qtwebengine/src/3rdparty/chromium/third_party/\
+mesa/src/src/gallium/state_trackers/d3d1x/w32api")
+                 (delete-file "qtwebengine/src/3rdparty/chromium/third_party/\
+webrtc/tools/e2e_quality/audio/perf")))))
     (build-system gnu-build-system)
     (propagated-inputs
      `(("mesa" ,mesa)))
     (inputs
      `(("alsa-lib" ,alsa-lib)
        ("dbus" ,dbus)
+       ("expat" ,expat)
        ("fontconfig" ,fontconfig)
        ("freetype" ,freetype)
        ("glib" ,glib)
        ("icu4c" ,icu4c)
        ("libjpeg" ,libjpeg)
+       ("libpci" ,pciutils)
        ("libpng" ,libpng)
        ("libx11" ,libx11)
+       ("libxcomposite" ,libxcomposite)
+       ("libxcursor" ,libxcursor)
+       ("libxfixes" ,libxfixes)
        ("libxi" ,libxi)
+       ("libxinerama" ,libxinerama)
        ("libxkbcommon" ,libxkbcommon)
+       ("libxml2" ,libxml2)
+       ("libxrandr" ,libxrandr)
        ("libxrender" ,libxrender)
+       ("libxslt" ,libxslt)
+       ("libxtst" ,libxtst)
+       ("mtdev" ,mtdev)
        ("mysql" ,mysql)
+       ("nss" ,nss)
        ("openssl" ,openssl)
        ("pulseaudio" ,pulseaudio)
-       ("python-wrapper" ,python-wrapper)
-       ("ruby" ,ruby)
+       ("pcre" ,pcre)
+       ("sqlite" ,sqlite)
+       ("udev" ,eudev)
        ("xcb-util" ,xcb-util)
        ("xcb-util-image" ,xcb-util-image)
        ("xcb-util-keysyms" ,xcb-util-keysyms)
@@ -120,8 +149,15 @@ X11 (yet).")
        ("xcb-util-wm" ,xcb-util-wm)
        ("zlib" ,zlib)))
     (native-inputs
-      `(("perl" ,perl)
-        ("pkg-config" ,pkg-config)))
+     `(("bison" ,bison)
+       ("flex" ,flex)
+       ("gperf" ,gperf)
+       ("ninja" ,ninja)
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)
+       ("python" ,python-2)
+       ("ruby" ,ruby)
+       ("which" ,(@ (gnu packages which) which))))
     (arguments
      `(#:phases
          (alist-replace
@@ -129,7 +165,15 @@ X11 (yet).")
           (lambda* (#:key outputs #:allow-other-keys)
             (let ((out (assoc-ref outputs "out")))
               (substitute* '("configure" "qtbase/configure")
-                           (("/bin/pwd") (which "pwd")))
+                (("/bin/pwd") (which "pwd")))
+              (substitute* "qtbase/src/corelib/global/global.pri"
+                (("/bin/ls") (which "ls")))
+              (substitute* "qtwebengine/src/3rdparty/chromium/build/common.gypi"
+                (("/bin/echo") (which "echo")))
+              (substitute* "qtwebengine/src/3rdparty/chromium/third_party/\
+WebKit/Source/build/scripts/scripts.gypi"
+                (("/usr/bin/gcc") (which "gcc")))
+              (setenv "NINJA_PATH" (which "ninja"))
               ;; do not pass "--enable-fast-install", which makes the
               ;; configure process fail
               (zero? (system*
@@ -138,6 +182,9 @@ X11 (yet).")
                       "-prefix" out
                       "-opensource"
                       "-confirm-license"
+                      "-system-sqlite"
+                      ;; explicitly link with openssl instead of dlopening it
+                      "-openssl-linked"
                       ;; explicitly link with dbus instead of dlopening it
                       "-dbus-linked"
                       ;; drop special machine instructions not supported