Merge branch 'master' into core-updates
[jackhill/guix/guix.git] / gnu / packages / wxwidgets.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
3 ;;;
4 ;;; This file is part of GNU Guix.
5 ;;;
6 ;;; GNU Guix is free software; you can redistribute it and/or modify it
7 ;;; under the terms of the GNU General Public License as published by
8 ;;; the Free Software Foundation; either version 3 of the License, or (at
9 ;;; your option) any later version.
10 ;;;
11 ;;; GNU Guix is distributed in the hope that it will be useful, but
12 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
13 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 ;;; GNU General Public License for more details.
15 ;;;
16 ;;; You should have received a copy of the GNU General Public License
17 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
18
19 (define-module (gnu packages wxwidgets)
20 #:use-module (guix packages)
21 #:use-module (guix download)
22 #:use-module ((guix licenses) #:prefix l:)
23 #:use-module (guix build-system glib-or-gtk)
24 #:use-module (guix build utils)
25 #:use-module (gnu packages)
26 #:use-module (gnu packages compression)
27 #:use-module (gnu packages databases)
28 #:use-module (gnu packages gl)
29 #:use-module (gnu packages gstreamer)
30 #:use-module (gnu packages gtk)
31 #:use-module (gnu packages image)
32 #:use-module (gnu packages pkg-config)
33 #:use-module (gnu packages sdl)
34 #:use-module (gnu packages xorg))
35
36 (define-public wxwidgets
37 (package
38 (name "wxwidgets")
39 (version "3.0.2")
40 (source
41 (origin
42 (method url-fetch)
43 (uri (string-append "mirror://sourceforge/wxwindows/" version
44 "/wxWidgets-" version ".tar.bz2"))
45 (sha256
46 (base32 "0paq27brw4lv8kspxh9iklpa415mxi8zc117vbbbhfjgapf7js1l"))))
47 (build-system glib-or-gtk-build-system)
48 ;; TODO: add WebKit
49 (inputs
50 `(("glu" ,glu)
51 ;; XXX gstreamer-0.10 builds fail
52 ;; ("gstreamer" ,gstreamer-0.10)
53 ("gtk" ,gtk+)
54 ("libjpeg" ,libjpeg)
55 ("libmspack" ,libmspack)
56 ("libsm" ,libsm)
57 ("libtiff" ,libtiff)
58 ("mesa" ,mesa)
59 ("sdl" ,sdl)))
60 (native-inputs
61 `(("pkg-config" ,pkg-config)))
62 (arguments
63 '(#:configure-flags
64 '("--with-regex=sys" "--with-libmspack" "--with-sdl")
65 ;; No 'check' target.
66 #:tests? #f))
67 (home-page "https://www.wxwidgets.org/")
68 (synopsis "Widget toolkit for creating graphical user interfaces")
69 (description
70 "wxWidgets is a C++ library that lets developers create applications with
71 a graphical user interface. It has language bindings for Python, Perl, Ruby
72 and many other languages.")
73 (license (list l:lgpl2.0+ (l:fsf-free "file://doc/license.txt")))))
74
75 (define-public wxwidgets-2
76 (package
77 (inherit wxwidgets)
78 (version "2.8.12")
79 (source
80 (origin
81 (method url-fetch)
82 (uri (string-append "https://sourceforge.net/projects/wxwindows/files/"
83 version "/wxGTK-" version ".tar.gz"))
84 (sha256
85 (base32 "1gjs9vfga60mk4j4ngiwsk9h6c7j22pw26m3asxr1jwvqbr8kkqk"))))
86 (inputs
87 `(("gtk" ,gtk+-2)
88 ("libjpeg" ,libjpeg)
89 ("libtiff" ,libtiff)
90 ("libmspack" ,libmspack)
91 ("sdl" ,sdl)
92 ("unixodbc" ,unixodbc)))
93 (arguments
94 `(#:configure-flags
95 '("--enable-unicode" "--with-regex=sys" "--with-sdl")
96 ;; No 'check' target.
97 #:tests? #f))))