mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-11-07 15:36:20 -05:00
gnu: wxWidgets: Update to 3.2.1.
* gnu/packages/wxwidgets.scm (wxwidgets): Update to 3.2.1. [source](modules, snippet): New fields. [inputs]: Remove SDL. Add CATCH-FRAMEWORK, EXPAT, GSTREAMER, GST-PLUGINS-BASE, LIBNOTIFY, LIBPNG, LIBSECRET, PCRE, SDL2, WEBKITGTK-WITH-LIBSOUP2, and ZLIB [arguments]: Add "--enable-mediactrl" and "--enable-gui" to #:configure-flags. Remove aarch64 workaround. Install catch header in refer-to-inputs phase. Add phase to adjust WebKitGTK version. (wxwidgets-3.1, wxwidgets-gtk2-3.1): Remove variables. (wxwidgets-3.0, (wxwidgets-gtk2-3.0): New variables. (wxsvg)[inputs]: Change from WXWIDGETS-3.1 to WXWIDGETS. * gnu/packages/audio.scm (audacity)[inputs]: Likewise. * gnu/packages/cdrom.scm (dvdstyler)[inputs]: Likewise. * gnu/packages/astronomy.scm (imppg)[inputs]: Change from WXWIDGETS to WXWIDGETS-3.0. * gnu/packages/ftp.scm (filezilla)[inputs]: Likewise. * gnu/packages/games.scm (megaglest)[inputs]: Likewise. * gnu/packages/geo.scm (opencpn)[inputs]: Likewise. * gnu/packages/music.scm (sooperlooper)[inputs]: Likewise. * gnu/packages/engineering.scm (kicad)[arguments]: Enable EGL support.
This commit is contained in:
parent
8737ee0479
commit
f16358144f
9 changed files with 138 additions and 83 deletions
|
@ -1925,7 +1925,7 @@ (define-public imppg
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list boost pkg-config))
|
(list boost pkg-config))
|
||||||
(inputs
|
(inputs
|
||||||
(list cfitsio freeimage glew wxwidgets))
|
(list cfitsio freeimage glew wxwidgets-3.0))
|
||||||
(home-page "https://github.com/GreatAttractor/imppg")
|
(home-page "https://github.com/GreatAttractor/imppg")
|
||||||
(synopsis "Astronomical Image Post-Proccessor (ImPPG)")
|
(synopsis "Astronomical Image Post-Proccessor (ImPPG)")
|
||||||
(description
|
(description
|
||||||
|
|
|
@ -892,7 +892,7 @@ (define-public audacity
|
||||||
#t))))
|
#t))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(inputs
|
(inputs
|
||||||
(list wxwidgets-3.1
|
(list wxwidgets
|
||||||
gtk+
|
gtk+
|
||||||
alsa-lib
|
alsa-lib
|
||||||
jack-1
|
jack-1
|
||||||
|
|
|
@ -515,7 +515,7 @@ (define-public dvdstyler
|
||||||
#t)))
|
#t)))
|
||||||
#:tests? #f)) ; No tests.
|
#:tests? #f)) ; No tests.
|
||||||
(inputs ; TODO package bundled wxvillalib
|
(inputs ; TODO package bundled wxvillalib
|
||||||
`(("wxwidgets" ,wxwidgets-3.1)
|
`(("wxwidgets" ,wxwidgets)
|
||||||
("wssvg" ,wxsvg)
|
("wssvg" ,wxsvg)
|
||||||
("dbus" ,dbus)
|
("dbus" ,dbus)
|
||||||
("cdrtools" ,cdrtools)
|
("cdrtools" ,cdrtools)
|
||||||
|
|
|
@ -964,6 +964,7 @@ (define-public kicad
|
||||||
#$(this-package-input "opencascade-occt")
|
#$(this-package-input "opencascade-occt")
|
||||||
"/include/opencascade")
|
"/include/opencascade")
|
||||||
"-DKICAD_SCRIPTING_WXPYTHON_PHOENIX=ON"
|
"-DKICAD_SCRIPTING_WXPYTHON_PHOENIX=ON"
|
||||||
|
"-DKICAD_USE_EGL=ON" ;because wxWidgets uses EGL
|
||||||
"-DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE")
|
"-DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE")
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
|
|
|
@ -240,7 +240,7 @@ (define-public filezilla
|
||||||
nettle
|
nettle
|
||||||
pugixml
|
pugixml
|
||||||
sqlite
|
sqlite
|
||||||
wxwidgets))
|
wxwidgets-3.0))
|
||||||
(home-page "https://filezilla-project.org")
|
(home-page "https://filezilla-project.org")
|
||||||
(synopsis "Full-featured graphical FTP/FTPS/SFTP client")
|
(synopsis "Full-featured graphical FTP/FTPS/SFTP client")
|
||||||
(description
|
(description
|
||||||
|
|
|
@ -6151,7 +6151,7 @@ (define-public megaglest
|
||||||
libvorbis
|
libvorbis
|
||||||
lua
|
lua
|
||||||
sdl2
|
sdl2
|
||||||
wxwidgets))
|
wxwidgets-3.0))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list cppunit pkg-config))
|
(list cppunit pkg-config))
|
||||||
(arguments
|
(arguments
|
||||||
|
|
|
@ -2158,7 +2158,7 @@ (define-public opencpn
|
||||||
sqlite
|
sqlite
|
||||||
tinyxml
|
tinyxml
|
||||||
wxsvg
|
wxsvg
|
||||||
wxwidgets
|
wxwidgets-3.0
|
||||||
xz
|
xz
|
||||||
zlib))
|
zlib))
|
||||||
(arguments
|
(arguments
|
||||||
|
|
|
@ -4040,7 +4040,7 @@ (define-public sooperlooper
|
||||||
(inputs
|
(inputs
|
||||||
(list jack-1
|
(list jack-1
|
||||||
alsa-lib
|
alsa-lib
|
||||||
wxwidgets-gtk2
|
wxwidgets-gtk2-3.0
|
||||||
libsndfile
|
libsndfile
|
||||||
libsamplerate
|
libsamplerate
|
||||||
liblo
|
liblo
|
||||||
|
|
|
@ -8,6 +8,7 @@
|
||||||
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
|
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
|
||||||
;;; Copyright © 2018, 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2018, 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;; Copyright © 2019 Arun Isaac <arunisaac@systemreboot.net>
|
;;; Copyright © 2019 Arun Isaac <arunisaac@systemreboot.net>
|
||||||
|
;;; Copyright © 2022 Marius Bakke <marius@gnu.org>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -35,6 +36,7 @@ (define-module (gnu packages wxwidgets)
|
||||||
#:use-module (guix utils)
|
#:use-module (guix utils)
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
|
#:use-module (gnu packages curl)
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
#:use-module (gnu packages databases)
|
#:use-module (gnu packages databases)
|
||||||
#:use-module (gnu packages freedesktop)
|
#:use-module (gnu packages freedesktop)
|
||||||
|
@ -45,18 +47,19 @@ (define-module (gnu packages wxwidgets)
|
||||||
#:use-module (gnu packages image)
|
#:use-module (gnu packages image)
|
||||||
#:use-module (gnu packages photo)
|
#:use-module (gnu packages photo)
|
||||||
#:use-module (gnu packages video)
|
#:use-module (gnu packages video)
|
||||||
|
#:use-module (gnu packages pcre)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
#:use-module (gnu packages python-xyz)
|
#:use-module (gnu packages python-xyz)
|
||||||
#:use-module (gnu packages sdl)
|
#:use-module (gnu packages sdl)
|
||||||
#:use-module (gnu packages webkit)
|
#:use-module (gnu packages webkit)
|
||||||
#:use-module (gnu packages xorg)
|
#:use-module (gnu packages xml)
|
||||||
#:use-module ((srfi srfi-1) #:select (alist-delete)))
|
#:use-module (gnu packages xorg))
|
||||||
|
|
||||||
(define-public wxwidgets
|
(define-public wxwidgets
|
||||||
(package
|
(package
|
||||||
(name "wxwidgets")
|
(name "wxwidgets")
|
||||||
(version "3.0.5.1")
|
(version "3.2.1")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -64,24 +67,128 @@ (define-public wxwidgets
|
||||||
"releases/download/v" version
|
"releases/download/v" version
|
||||||
"/wxWidgets-" version ".tar.bz2"))
|
"/wxWidgets-" version ".tar.bz2"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "01y89999jw5q7njrhxajincx7lydls6yq37ikazjryssrxrnw3s4"))))
|
(base32 "0rpsyph7l7kmpld376y0940la3c94y5vdpxmbkj8isqknimrfaf2"))
|
||||||
|
(modules '((guix build utils)
|
||||||
|
(ice-9 ftw)
|
||||||
|
(srfi srfi-26)))
|
||||||
|
(snippet
|
||||||
|
'(begin
|
||||||
|
;; wxWidgets bundles third-party code in the "3rdparty" directory as
|
||||||
|
;; well as the "src" directory. Remove external components that are
|
||||||
|
;; not required.
|
||||||
|
(let ((preserved-3rdparty '("nanosvg"))
|
||||||
|
;; The src directory contains a mixture of third party libraries
|
||||||
|
;; and similarly-named integration code. Cautiously use a
|
||||||
|
;; blacklist approach here.
|
||||||
|
(bundled-src '("expat" "jpeg" "png" "tiff" "zlib")))
|
||||||
|
(with-directory-excursion "3rdparty"
|
||||||
|
(for-each delete-file-recursively
|
||||||
|
(scandir "." (negate (cut member <>
|
||||||
|
(append '("." "..")
|
||||||
|
preserved-3rdparty))))))
|
||||||
|
(with-directory-excursion "src"
|
||||||
|
(for-each delete-file-recursively bundled-src)))))))
|
||||||
(build-system glib-or-gtk-build-system)
|
(build-system glib-or-gtk-build-system)
|
||||||
(inputs
|
(inputs
|
||||||
(list glu
|
(list catch-framework
|
||||||
;; XXX gstreamer-0.10 builds fail
|
curl
|
||||||
;; ("gstreamer" ,gstreamer-0.10)
|
expat
|
||||||
|
glu
|
||||||
|
gstreamer
|
||||||
|
gst-plugins-base
|
||||||
gtk+
|
gtk+
|
||||||
libjpeg-turbo
|
libjpeg-turbo
|
||||||
libmspack
|
libmspack
|
||||||
|
libnotify
|
||||||
|
libpng
|
||||||
|
libsecret
|
||||||
libsm
|
libsm
|
||||||
libtiff
|
libtiff
|
||||||
mesa
|
mesa
|
||||||
webkitgtk
|
pcre2
|
||||||
sdl
|
sdl2
|
||||||
shared-mime-info
|
shared-mime-info
|
||||||
xdg-utils))
|
webkitgtk-with-libsoup2
|
||||||
|
xdg-utils
|
||||||
|
zlib))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list pkg-config))
|
(list pkg-config))
|
||||||
|
(arguments
|
||||||
|
(list
|
||||||
|
#:configure-flags #~'("--with-libmspack"
|
||||||
|
"--with-regex"
|
||||||
|
"--with-sdl"
|
||||||
|
"--enable-gui"
|
||||||
|
"--enable-mediactrl"
|
||||||
|
"--enable-webview"
|
||||||
|
"--enable-webviewwebkit")
|
||||||
|
#:make-flags
|
||||||
|
#~(list (string-append "LDFLAGS=-Wl,-rpath=" #$output "/lib"))
|
||||||
|
#:tests? #f ;TODO
|
||||||
|
#:phases
|
||||||
|
#~(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'use-newer-webkit
|
||||||
|
(lambda _
|
||||||
|
;; XXX: The configure script tests only for an ancient
|
||||||
|
;; WebKitGTK version.
|
||||||
|
(substitute* "configure"
|
||||||
|
(("webkit2gtk-4\\.0")
|
||||||
|
"webkit2gtk-4.1"))))
|
||||||
|
(add-after 'unpack 'refer-to-inputs
|
||||||
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
(let ((catch (search-input-file inputs "include/catch.hpp"))
|
||||||
|
(mime (search-input-directory inputs "share/mime"))
|
||||||
|
(xdg-open (search-input-file inputs "bin/xdg-open")))
|
||||||
|
(install-file catch "3rdparty/catch/include/")
|
||||||
|
(substitute* "src/unix/utilsx11.cpp"
|
||||||
|
(("wxExecute\\(xdg_open \\+")
|
||||||
|
(string-append "wxExecute(\"" xdg-open "\"")))
|
||||||
|
(substitute* "src/unix/mimetype.cpp"
|
||||||
|
(("/usr(/local)?/share/mime")
|
||||||
|
mime)))))
|
||||||
|
(replace 'configure
|
||||||
|
(lambda* (#:key native-inputs inputs configure-flags
|
||||||
|
#:allow-other-keys)
|
||||||
|
(let ((sh (search-input-file (or native-inputs inputs)
|
||||||
|
"bin/sh")))
|
||||||
|
;; The configure script does not understand some of the default
|
||||||
|
;; options of gnu-build-system, so run it "by hand".
|
||||||
|
(apply invoke "./configure"
|
||||||
|
(string-append "SHELL=" sh)
|
||||||
|
(string-append "CONFIG_SHELL=" sh)
|
||||||
|
(string-append "--prefix=" #$output)
|
||||||
|
configure-flags)))))))
|
||||||
|
(home-page "https://www.wxwidgets.org/")
|
||||||
|
(synopsis "Widget toolkit for creating graphical user interfaces")
|
||||||
|
(description
|
||||||
|
"wxWidgets is a C++ library that lets developers create applications with
|
||||||
|
a graphical user interface. It has language bindings for Python, Perl, Ruby
|
||||||
|
and many other languages.")
|
||||||
|
(license (list l:lgpl2.0+ (l:fsf-free "file://doc/license.txt")))))
|
||||||
|
|
||||||
|
(define-public wxwidgets-gtk2
|
||||||
|
(package/inherit wxwidgets
|
||||||
|
(name "wxwidgets-gtk2")
|
||||||
|
(inputs (modify-inputs (package-inputs wxwidgets)
|
||||||
|
(delete "gtk+")
|
||||||
|
(prepend gtk+-2)))
|
||||||
|
(arguments
|
||||||
|
(substitute-keyword-arguments (package-arguments wxwidgets)
|
||||||
|
((#:configure-flags flags #~'())
|
||||||
|
#~(append #$flags '("--with-gtk=2")))))))
|
||||||
|
|
||||||
|
(define-public wxwidgets-3.0
|
||||||
|
(package
|
||||||
|
(inherit wxwidgets)
|
||||||
|
(version "3.0.5.1")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "https://github.com/wxWidgets/wxWidgets/"
|
||||||
|
"releases/download/v" version
|
||||||
|
"/wxWidgets-" version ".tar.bz2"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"01y89999jw5q7njrhxajincx7lydls6yq37ikazjryssrxrnw3s4"))))
|
||||||
(arguments
|
(arguments
|
||||||
`(#:configure-flags
|
`(#:configure-flags
|
||||||
'("--with-regex" "--with-libmspack"
|
'("--with-regex" "--with-libmspack"
|
||||||
|
@ -108,15 +215,18 @@ (define-public wxwidgets
|
||||||
(("wxExecute\\(xdg_open \\+")
|
(("wxExecute\\(xdg_open \\+")
|
||||||
(string-append "wxExecute(\"" xdg-open "\"")))
|
(string-append "wxExecute(\"" xdg-open "\"")))
|
||||||
(substitute* "src/unix/mimetype.cpp"
|
(substitute* "src/unix/mimetype.cpp"
|
||||||
(("/usr(/local)?/share/mime") mime))
|
(("/usr(/local)?/share/mime") mime))))))))))
|
||||||
#t))))))
|
|
||||||
(home-page "https://www.wxwidgets.org/")
|
(define-public wxwidgets-gtk2-3.0
|
||||||
(synopsis "Widget toolkit for creating graphical user interfaces")
|
(package/inherit wxwidgets-3.0
|
||||||
(description
|
(name "wxwidgets-gtk2")
|
||||||
"wxWidgets is a C++ library that lets developers create applications with
|
(inputs (modify-inputs (package-inputs wxwidgets-3.0)
|
||||||
a graphical user interface. It has language bindings for Python, Perl, Ruby
|
(delete "gtk+")
|
||||||
and many other languages.")
|
(prepend gtk+-2)))
|
||||||
(license (list l:lgpl2.0+ (l:fsf-free "file://doc/license.txt")))))
|
(arguments
|
||||||
|
(substitute-keyword-arguments (package-arguments wxwidgets-3.0)
|
||||||
|
((#:configure-flags flags #~'())
|
||||||
|
#~(append #$flags '("--with-gtk=2")))))))
|
||||||
|
|
||||||
(define-public wxwidgets-2
|
(define-public wxwidgets-2
|
||||||
(package
|
(package
|
||||||
|
@ -153,62 +263,6 @@ (define-public wxwidgets-2
|
||||||
(("-Wall") "-Wall -Wno-narrowing"))
|
(("-Wall") "-Wall -Wno-narrowing"))
|
||||||
#t)))))))
|
#t)))))))
|
||||||
|
|
||||||
(define-public wxwidgets-gtk2
|
|
||||||
(package/inherit wxwidgets
|
|
||||||
(name "wxwidgets-gtk2")
|
|
||||||
(inputs (modify-inputs (package-inputs wxwidgets)
|
|
||||||
(delete "gtk+")
|
|
||||||
(prepend gtk+-2)))))
|
|
||||||
|
|
||||||
;; Development version of wxWidgets, required to build against gstreamer-1.x.
|
|
||||||
;; This can be removed when wxWidgets is updated to the next stable version.
|
|
||||||
(define-public wxwidgets-3.1
|
|
||||||
(package (inherit wxwidgets)
|
|
||||||
(version "3.1.5")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method git-fetch)
|
|
||||||
(uri (git-reference
|
|
||||||
(url "https://github.com/wxWidgets/wxWidgets")
|
|
||||||
(commit (string-append "v" version))))
|
|
||||||
(file-name (git-file-name "wxwidgets" version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"0j998nzqmycafignclxmahgqm5kgs1fiqbsiyvzm7bnpnafi333y"))))
|
|
||||||
(inputs (modify-inputs (package-inputs wxwidgets)
|
|
||||||
(prepend catch-framework gstreamer gst-plugins-base)))
|
|
||||||
(arguments
|
|
||||||
(substitute-keyword-arguments (package-arguments wxwidgets)
|
|
||||||
((#:configure-flags flags)
|
|
||||||
'(list "--with-regex" "--with-libmspack" "--with-sdl"
|
|
||||||
"--enable-mediactrl" "--enable-webviewwebkit"))
|
|
||||||
((#:phases phases)
|
|
||||||
`(modify-phases ,phases
|
|
||||||
(add-after 'unpack 'add-catch
|
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
|
||||||
(install-file
|
|
||||||
(search-input-file inputs "include/catch.hpp")
|
|
||||||
"3rdparty/catch/include/")))
|
|
||||||
(replace 'configure
|
|
||||||
(lambda* (#:key configure-flags inputs native-inputs outputs
|
|
||||||
#:allow-other-keys)
|
|
||||||
(let ((sh (search-input-file (or native-inputs inputs)
|
|
||||||
"bin/sh")))
|
|
||||||
(apply invoke "./configure"
|
|
||||||
(string-append "SHELL=" sh)
|
|
||||||
(string-append "CONFIG_SHELL=" sh)
|
|
||||||
(string-append "--prefix="
|
|
||||||
(assoc-ref outputs "out"))
|
|
||||||
configure-flags))))))))))
|
|
||||||
|
|
||||||
(define-public wxwidgets-gtk2-3.1
|
|
||||||
(package/inherit wxwidgets-3.1
|
|
||||||
(inputs `(("gtk+" ,gtk+-2)
|
|
||||||
,@(alist-delete
|
|
||||||
"gtk+"
|
|
||||||
(package-inputs wxwidgets-3.1))))
|
|
||||||
(name "wxwidgets-gtk2")))
|
|
||||||
|
|
||||||
(define-public python-wxpython
|
(define-public python-wxpython
|
||||||
(package
|
(package
|
||||||
(name "python-wxpython")
|
(name "python-wxpython")
|
||||||
|
@ -278,7 +332,7 @@ (define-public wxsvg
|
||||||
(base32 "1fdbvihw1w2vm29xj54cqgpdabhlg0ydf3clkb0qrlf7mhgkc1rz"))))
|
(base32 "1fdbvihw1w2vm29xj54cqgpdabhlg0ydf3clkb0qrlf7mhgkc1rz"))))
|
||||||
(build-system glib-or-gtk-build-system)
|
(build-system glib-or-gtk-build-system)
|
||||||
(inputs
|
(inputs
|
||||||
(list wxwidgets-3.1 cairo ffmpeg))
|
(list wxwidgets cairo ffmpeg))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list pkg-config))
|
(list pkg-config))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
|
|
Loading…
Reference in a new issue