gnu: linux-libre: Update to 4.1.
[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 #:make-flags
66 (list (string-append "LDFLAGS=-Wl,-rpath="
67 (assoc-ref %outputs "out") "/lib"))
68 ;; No 'check' target.
69 #:tests? #f))
70 (home-page "https://www.wxwidgets.org/")
71 (synopsis "Widget toolkit for creating graphical user interfaces")
72 (description
73 "wxWidgets is a C++ library that lets developers create applications with
74 a graphical user interface. It has language bindings for Python, Perl, Ruby
75 and many other languages.")
76 (license (list l:lgpl2.0+ (l:fsf-free "file://doc/license.txt")))))
77
78 (define-public wxwidgets-2
79 (package
80 (inherit wxwidgets)
81 (version "2.8.12")
82 (source
83 (origin
84 (method url-fetch)
85 (uri (string-append
86 "mirror://sourceforge/wxwindows/wxGTK-" version ".tar.gz"))
87 (sha256
88 (base32 "1gjs9vfga60mk4j4ngiwsk9h6c7j22pw26m3asxr1jwvqbr8kkqk"))))
89 (inputs
90 `(("gtk" ,gtk+-2)
91 ("libjpeg" ,libjpeg)
92 ("libtiff" ,libtiff)
93 ("libmspack" ,libmspack)
94 ("sdl" ,sdl)
95 ("unixodbc" ,unixodbc)))
96 (arguments
97 `(#:configure-flags
98 '("--enable-unicode" "--with-regex=sys" "--with-sdl")
99 #:make-flags
100 (list (string-append "LDFLAGS=-Wl,-rpath="
101 (assoc-ref %outputs "out") "/lib"))
102 ;; No 'check' target.
103 #:tests? #f))))