2013-10-04 19:10:29 +02:00
|
|
|
;;; GNU Guix --- Functional package management for GNU
|
2014-05-14 14:30:28 +02:00
|
|
|
;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
|
2013-10-04 19:10:29 +02:00
|
|
|
;;;
|
|
|
|
;;; This file is part of GNU Guix.
|
|
|
|
;;;
|
|
|
|
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
|
|
|
;;; under the terms of the GNU General Public License as published by
|
|
|
|
;;; the Free Software Foundation; either version 3 of the License, or (at
|
|
|
|
;;; your option) any later version.
|
|
|
|
;;;
|
|
|
|
;;; GNU Guix is distributed in the hope that it will be useful, but
|
|
|
|
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
;;; GNU General Public License for more details.
|
|
|
|
;;;
|
|
|
|
;;; You should have received a copy of the GNU General Public License
|
|
|
|
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
|
|
|
|
(define-module (gnu packages qt)
|
2013-10-08 20:49:58 +02:00
|
|
|
#:use-module ((guix licenses) #:select (lgpl2.1 x11-style))
|
2013-10-04 19:10:29 +02:00
|
|
|
#:use-module (guix packages)
|
|
|
|
#:use-module (guix download)
|
2013-12-14 23:16:46 +01:00
|
|
|
#:use-module (guix build utils)
|
2013-10-04 19:10:29 +02:00
|
|
|
#:use-module (guix build-system gnu)
|
2013-10-12 14:48:52 +02:00
|
|
|
#:use-module (gnu packages)
|
2013-10-08 20:49:58 +02:00
|
|
|
#:use-module (gnu packages bison)
|
|
|
|
#:use-module (gnu packages compression)
|
|
|
|
#:use-module (gnu packages fontutils)
|
|
|
|
#:use-module (gnu packages glib)
|
|
|
|
#:use-module (gnu packages icu4c)
|
gnu: Consolidate libjpeg, libpng, and libtiff into one module.
* gnu/packages/image.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add image.scm and remove libjpeg.scm,
libpng.scm, and libtiff.scm.
* gnu/packages/libjpeg.scm, gnu/packages/libpng.scm, gnu/packages/libtiff.scm:
Delete files.
* gnu/packages/emacs.scm gnu/packages/games.scm, gnu/packages/gd.scm,
gnu/packages/geeqie.scm, gnu/packages/ghostscript.scm,
gnu/packages/gimp.scm, gnu/packages/gnome.scm, gnu/packages/gnunet.scm,
gnu/packages/gnustep.scm, gnu/packages/gnuzilla.scm,
gnu/packages/graphviz.scm, gnu/packages/gtk.scm,
gnu/packages/imagemagick.scm, gnu/packages/inkscape.scm,
gnu/packages/netpbm.scm, gnu/packages/pdf.scm, gnu/packages/plotutils.scm,
gnu/packages/qemu.scm, gnu/packages/qt.scm, gnu/packages/scheme.scm,
gnu/packages/sdl.scm, gnu/packages/slim.scm, gnu/packages/tcl.scm,
gnu/packages/texlive.scm, gnu/packages/video.scm, gnu/packages/xiph.scm,
gnu/packages/xorg.scm: Use (gnu packages image) module.
2014-06-25 14:39:02 +02:00
|
|
|
#:use-module (gnu packages image)
|
2013-10-08 20:49:58 +02:00
|
|
|
#:use-module (gnu packages linux)
|
gnu: Consolidate databases in (gnu packages databases).
* gnu/packages/databases.scm: New file, with the contents of the
following deleted files.
* gnu/packages/mysql.scm, gnu/packages/postgresql.scm,
gnu/packages/recutils.scm, gnu/packages/sqlite.scm,
gnu/packages/bdb.scm: Remove.
* gnu-system.am (GNU_SYSTEM_MODULES): Adjust accordingly.
* gnu/packages/apl.scm, gnu/packages/dc.scm, gnu/packages/games.scm,
gnu/packages/gnunet.scm, gnu/packages/linux.scm, gnu/packages/mail.scm,
gnu/packages/mpd.scm, gnu/packages/nvi.scm, gnu/packages/openldap.scm,
gnu/packages/package-management.scm, gnu/packages/python.scm,
gnu/packages/qt.scm, gnu/packages/rdf.scm,
gnu/packages/version-control.scm: Adjust to new module name.
2014-09-08 17:48:03 +02:00
|
|
|
#:use-module (gnu packages databases)
|
2013-10-08 20:49:58 +02:00
|
|
|
#:use-module (gnu packages openssl)
|
|
|
|
#:use-module (gnu packages perl)
|
|
|
|
#:use-module (gnu packages pkg-config)
|
2013-10-10 14:24:51 +02:00
|
|
|
#:use-module (gnu packages pulseaudio)
|
2013-10-08 20:49:58 +02:00
|
|
|
#:use-module (gnu packages python)
|
2013-12-28 09:10:46 +01:00
|
|
|
#:use-module (gnu packages gl)
|
2013-10-08 20:49:58 +02:00
|
|
|
#:use-module (gnu packages xorg))
|
2013-10-04 19:10:29 +02:00
|
|
|
|
|
|
|
(define-public libxkbcommon
|
|
|
|
(package
|
|
|
|
(name "libxkbcommon")
|
|
|
|
(version "0.3.1")
|
|
|
|
(source (origin
|
|
|
|
(method url-fetch)
|
|
|
|
(uri (string-append "http://xkbcommon.org/download/" name "-"
|
|
|
|
version ".tar.xz"))
|
|
|
|
(sha256
|
|
|
|
(base32
|
|
|
|
"13mk335r4dhi9qglzbp46ina1wz4qgcp8r7s06iq7j50pf0kb5ww"))))
|
|
|
|
(build-system gnu-build-system)
|
gnu: Move numerous "inputs" which should be "native-inputs".
* gnu/packages/avahi.scm, gnu/packages/cdrom.scm, gnu/packages/cryptsetup.scm,
gnu/packages/curl.scm, gnu/packages/emacs.scm, gnu/packages/fontutils.scm,
gnu/packages/gdb.scm, gnu/packages/geeqie.scm, gnu/packages/ghostscript.scm,
gnu/packages/glib.scm, gnu/packages/gnome.scm, gnu/packages/gnunet.scm,
gnu/packages/gnupg.scm, gnu/packages/gnuzilla.scm, gnu/packages/graphviz.scm,
gnu/packages/groff.scm, gnu/packages/gstreamer.scm, gnu/packages/gtk.scm,
gnu/packages/gv.scm, gnu/packages/imagemagick.scm, gnu/packages/irssi.scm,
gnu/packages/kde.scm, gnu/packages/libcanberra.scm, gnu/packages/libtiff.scm,
gnu/packages/linux.scm, gnu/packages/lvm.scm, gnu/packages/mp3.scm,
gnu/packages/netpbm.scm, gnu/packages/parted.scm, gnu/packages/pdf.scm,
gnu/packages/pulseaudio.scm, gnu/packages/qemu.scm, gnu/packages/qt.scm,
gnu/packages/ratpoison.scm, gnu/packages/rdf.scm, gnu/packages/slim.scm,
gnu/packages/texlive.scm, gnu/packages/version-control.scm,
gnu/packages/video.scm, gnu/packages/vpn.scm, gnu/packages/w3m.scm,
gnu/packages/xml.scm, gnu/packages/xnee.scm, gnu/packages/xorg.scm,
gnu/packages/zip.scm: Move some build-time dependencies from `inputs' to
`native-inputs'.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2013-12-15 12:01:56 +01:00
|
|
|
(native-inputs
|
2013-10-04 19:10:29 +02:00
|
|
|
`(("bison" ,bison)))
|
|
|
|
(home-page "http://xkbcommon.org/")
|
|
|
|
(synopsis "library to handle keyboard descriptions")
|
|
|
|
(description "Xkbcommon is a library to handle keyboard descriptions,
|
|
|
|
including loading them from disk, parsing them and handling their
|
|
|
|
state. It is mainly meant for client toolkits, window systems, and other
|
|
|
|
system applications; currently that includes Wayland, kmscon, GTK+, Qt,
|
|
|
|
Clutter, and more. Despite the name, it is not currently used by anything
|
|
|
|
X11 (yet).")
|
|
|
|
(license (x11-style "file://COPYING"
|
|
|
|
"See 'COPYING' in the distribution."))))
|
2013-10-08 20:49:58 +02:00
|
|
|
|
|
|
|
(define-public qt
|
|
|
|
(package
|
|
|
|
(name "qt")
|
2014-04-10 10:07:22 +02:00
|
|
|
(version "5.2.1")
|
2013-10-08 20:49:58 +02:00
|
|
|
(source (origin
|
|
|
|
(method url-fetch)
|
|
|
|
(uri (string-append "http://download.qt-project.org/official_releases/qt/"
|
|
|
|
(string-copy version 0 (string-rindex version #\.))
|
|
|
|
"/" version
|
|
|
|
"/single/qt-everywhere-opensource-src-"
|
2013-12-14 23:16:46 +01:00
|
|
|
version ".tar.xz"))
|
2013-10-08 20:49:58 +02:00
|
|
|
(sha256
|
|
|
|
(base32
|
2014-04-10 10:07:22 +02:00
|
|
|
"0kkqrxpd9gqb52a2zj09d7vhd4adczpjg32vjvll5wyzmh092m85"))))
|
2013-10-08 20:49:58 +02:00
|
|
|
(build-system gnu-build-system)
|
2013-10-10 20:54:25 +02:00
|
|
|
(propagated-inputs
|
|
|
|
`(("mesa" ,mesa)))
|
2013-10-08 20:49:58 +02:00
|
|
|
(inputs
|
|
|
|
;; FIXME: Add input ruby once available.
|
|
|
|
`(("alsa-lib" ,alsa-lib)
|
|
|
|
("dbus" ,dbus)
|
|
|
|
("fontconfig" ,fontconfig)
|
|
|
|
("freetype" ,freetype)
|
|
|
|
("glib" ,glib)
|
|
|
|
("icu4c" ,icu4c)
|
2013-12-14 23:16:46 +01:00
|
|
|
("libjpeg" ,libjpeg)
|
2013-10-08 20:49:58 +02:00
|
|
|
("libpng" ,libpng)
|
|
|
|
("libx11" ,libx11)
|
|
|
|
("libxi" ,libxi)
|
|
|
|
("libxkbcommon" ,libxkbcommon)
|
|
|
|
("libxrender" ,libxrender)
|
|
|
|
("mysql" ,mysql)
|
|
|
|
("openssl" ,openssl)
|
2013-10-10 14:24:51 +02:00
|
|
|
("pulseaudio" ,pulseaudio)
|
2013-10-08 20:49:58 +02:00
|
|
|
("python-wrapper" ,python-wrapper)
|
|
|
|
("xcb-util" ,xcb-util)
|
|
|
|
("xcb-util-image" ,xcb-util-image)
|
|
|
|
("xcb-util-keysyms" ,xcb-util-keysyms)
|
|
|
|
("xcb-util-renderutil" ,xcb-util-renderutil)
|
|
|
|
("xcb-util-wm" ,xcb-util-wm)
|
|
|
|
("zlib" ,zlib)))
|
gnu: Move numerous "inputs" which should be "native-inputs".
* gnu/packages/avahi.scm, gnu/packages/cdrom.scm, gnu/packages/cryptsetup.scm,
gnu/packages/curl.scm, gnu/packages/emacs.scm, gnu/packages/fontutils.scm,
gnu/packages/gdb.scm, gnu/packages/geeqie.scm, gnu/packages/ghostscript.scm,
gnu/packages/glib.scm, gnu/packages/gnome.scm, gnu/packages/gnunet.scm,
gnu/packages/gnupg.scm, gnu/packages/gnuzilla.scm, gnu/packages/graphviz.scm,
gnu/packages/groff.scm, gnu/packages/gstreamer.scm, gnu/packages/gtk.scm,
gnu/packages/gv.scm, gnu/packages/imagemagick.scm, gnu/packages/irssi.scm,
gnu/packages/kde.scm, gnu/packages/libcanberra.scm, gnu/packages/libtiff.scm,
gnu/packages/linux.scm, gnu/packages/lvm.scm, gnu/packages/mp3.scm,
gnu/packages/netpbm.scm, gnu/packages/parted.scm, gnu/packages/pdf.scm,
gnu/packages/pulseaudio.scm, gnu/packages/qemu.scm, gnu/packages/qt.scm,
gnu/packages/ratpoison.scm, gnu/packages/rdf.scm, gnu/packages/slim.scm,
gnu/packages/texlive.scm, gnu/packages/version-control.scm,
gnu/packages/video.scm, gnu/packages/vpn.scm, gnu/packages/w3m.scm,
gnu/packages/xml.scm, gnu/packages/xnee.scm, gnu/packages/xorg.scm,
gnu/packages/zip.scm: Move some build-time dependencies from `inputs' to
`native-inputs'.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2013-12-15 12:01:56 +01:00
|
|
|
(native-inputs
|
|
|
|
`(("perl" ,perl)
|
|
|
|
("pkg-config" ,pkg-config)))
|
2013-10-08 20:49:58 +02:00
|
|
|
(arguments
|
|
|
|
`(#:phases
|
|
|
|
(alist-replace
|
|
|
|
'configure
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let ((out (assoc-ref outputs "out")))
|
|
|
|
(substitute* '("configure" "qtbase/configure")
|
|
|
|
(("/bin/pwd") (which "pwd")))
|
|
|
|
;; do not pass "--enable-fast-install", which makes the
|
|
|
|
;; configure process fail
|
2013-11-11 19:16:03 +01:00
|
|
|
(zero? (system*
|
|
|
|
"./configure"
|
|
|
|
"-verbose"
|
|
|
|
"-prefix" out
|
|
|
|
"-opensource"
|
|
|
|
"-confirm-license"
|
|
|
|
;; drop special machine instructions not supported
|
|
|
|
;; on all instances of the target
|
|
|
|
,@(if (string-prefix? "x86_64"
|
|
|
|
(or (%current-target-system)
|
|
|
|
(%current-system)))
|
|
|
|
'()
|
|
|
|
'("-no-sse2"))
|
|
|
|
"-no-sse3"
|
|
|
|
"-no-ssse3"
|
|
|
|
"-no-sse4.1"
|
|
|
|
"-no-sse4.2"
|
|
|
|
"-no-avx"
|
|
|
|
"-no-avx2"
|
|
|
|
"-no-neon"
|
|
|
|
"-no-mips_dsp"
|
|
|
|
"-no-mips_dspr2"))))
|
2013-10-08 20:49:58 +02:00
|
|
|
%standard-phases)))
|
|
|
|
(home-page "http://qt-project.org/")
|
|
|
|
(synopsis "Cross-platform GUI library")
|
|
|
|
(description "Qt is a cross-platform application and UI framework for
|
|
|
|
developers using C++ or QML, a CSS & JavaScript like language.")
|
|
|
|
(license lgpl2.1)))
|
2013-10-12 14:48:52 +02:00
|
|
|
|
|
|
|
(define-public qt-4
|
|
|
|
(package (inherit qt)
|
2014-05-14 15:53:00 +02:00
|
|
|
(version "4.8.6")
|
2013-10-12 14:48:52 +02:00
|
|
|
(source (origin
|
|
|
|
(method url-fetch)
|
|
|
|
(uri (string-append "http://download.qt-project.org/official_releases/qt/"
|
|
|
|
(string-copy version 0 (string-rindex version #\.))
|
|
|
|
"/" version
|
2013-10-23 23:32:24 +02:00
|
|
|
"/qt-everywhere-opensource-src-"
|
2013-10-12 14:48:52 +02:00
|
|
|
version ".tar.gz"))
|
|
|
|
(sha256
|
|
|
|
(base32
|
2014-05-14 15:53:00 +02:00
|
|
|
"0b036iqgmbbv37dgwwfihw3mihjbnw3kb5kaisdy0qi8nn8xs54b"))
|
2013-10-12 14:48:52 +02:00
|
|
|
(patches (list (search-patch "qt4-tests.patch")))))
|
2013-12-14 23:16:46 +01:00
|
|
|
(inputs `(,@(alist-delete "libjpeg" (package-inputs qt))
|
2014-05-14 14:30:28 +02:00
|
|
|
("libjepg" ,libjpeg-8)
|
|
|
|
("libsm" ,libsm)))
|
2013-10-12 14:48:52 +02:00
|
|
|
(arguments
|
|
|
|
`(#:phases
|
|
|
|
(alist-replace
|
|
|
|
'configure
|
|
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
|
|
(let ((out (assoc-ref outputs "out")))
|
|
|
|
(substitute* '("configure")
|
|
|
|
(("/bin/pwd") (which "pwd")))
|
2014-09-28 09:35:32 +02:00
|
|
|
;; Explicitly link with icui18n, which is dlopened by
|
|
|
|
;; QtCore.so. The LDFLAGS are in fact added to other flags
|
|
|
|
;; determined by the configure phase.
|
|
|
|
;; According to the nix recipe, this may be necessary for
|
|
|
|
;; further libraries (cups, gtk-x11-2.0, libgdk-x11-2.0).
|
|
|
|
(setenv "LDFLAGS" "-licui18n")
|
2013-10-12 14:48:52 +02:00
|
|
|
;; do not pass "--enable-fast-install", which makes the
|
|
|
|
;; configure process fail
|
2013-11-11 19:16:03 +01:00
|
|
|
(zero? (system*
|
|
|
|
"./configure"
|
|
|
|
"-verbose"
|
|
|
|
"-prefix" out
|
|
|
|
"-opensource"
|
|
|
|
"-confirm-license"
|
|
|
|
;; drop special machine instructions not supported
|
|
|
|
;; on all instances of the target
|
|
|
|
,@(if (string-prefix? "x86_64"
|
|
|
|
(or (%current-target-system)
|
|
|
|
(%current-system)))
|
|
|
|
'()
|
|
|
|
'("-no-mmx"
|
2013-10-12 14:48:52 +02:00
|
|
|
"-no-3dnow"
|
|
|
|
"-no-sse"
|
2013-11-11 19:16:03 +01:00
|
|
|
"-no-sse2"))
|
|
|
|
"-no-sse3"
|
|
|
|
"-no-ssse3"
|
|
|
|
"-no-sse4.1"
|
|
|
|
"-no-sse4.2"
|
|
|
|
"-no-avx"
|
|
|
|
"-no-neon"))))
|
2013-10-12 14:48:52 +02:00
|
|
|
%standard-phases)))))
|