aboutsummaryrefslogtreecommitdiff
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2018, 2021 Marius Bakke <marius@gnu.org>
;;; Copyright © 2019, 2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;;
;;; 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 swig)
  #:use-module (guix packages)
  #:use-module (guix download)
  #:use-module (guix licenses)
  #:use-module (guix build-system gnu)
  #:use-module (guix utils)
  #:use-module (gnu packages)
  #:use-module (gnu packages boost)
  #:use-module (gnu packages guile)
  #:use-module (gnu packages pcre)
  #:use-module (gnu packages perl)
  #:use-module (gnu packages python))

(define-public swig
  (package
    (name "swig")
    (version "4.0.2")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://sourceforge/" name "/" name "/"
                                 name "-" version "/"
                                 name "-" version ".tar.gz"))
             (sha256
              (base32
               "1z06m5zv87mha6hvys1iay810ghc1jngilfby1ms2n4d1mryjfym"))
             ;; Remove with next release.
             (patches (search-patches "swig-support-gcc-12.patch"))))
    (build-system gnu-build-system)
    (native-inputs (list boost
                         `(,pcre "bin") ;for 'pcre-config'
                         ;; The following are for tests and examples:
                         guile-3.0
                         perl))
                     ;;("python" ,python-wrapper)
    (inputs (list pcre))
    (arguments (list #:tests? (not (or (target-hurd?)
                                       (%current-target-system)))))
    (home-page "https://swig.org/")
    (synopsis
     "Interface compiler that connects C/C++ code to higher-level languages")
    (description
     "SWIG is an interface compiler that connects programs written in C and
C++ with languages such as Perl, Python, Ruby, Scheme, and Tcl.  It works by
taking the declarations found in C/C++ header files and using them to generate
the wrapper code that scripting languages need to access the underlying C/C++
code.  In addition, SWIG provides a variety of customization features that let
you tailor the wrapping process to suit your application.")

    ;; See http://www.swig.org/Release/LICENSE for details.
    (license gpl3+)))

(define-public swig-next
  ;; a number of packages using swig do not build with this version
  ;; so we need to keep swig 4.0.2 above and place the current release
  ;; as swig-next
  (package
    (inherit swig)
    (name "swig")
    (version "4.2.1")
    (source (origin
              (method url-fetch)
              (uri (string-append "mirror://sourceforge/" name "/" name "/"
                                 name "-" version "/"
                                 name "-" version ".tar.gz"))
              (sha256
               (base32
                "1n5pb77hwadjpbqgqn28i5v4cp94ar19wmv9vk6v4j6hw9a5617s"))))
    (inputs (list pcre2))))
u/packages/patches/gimp-make-gegl-introspect-optional.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. Tobias Geerinckx-Rice 2021-03-30gnu: gimp: Properly handle missing optional ‘dot’....* gnu/packages/gimp.scm (gimp)[source]: Add a patch to fix a fatal error when ‘dot’ is not in $PATH. (gegl)[arguments]: Move the 'refer-to-dot phase... [inputs]: ...and graphviz... (gegl-for-glimpse)[arguments]: ...here, and... [inputs]: ...here, respectively. (glimpse)[inputs]: Use gegl-for-glimpse gegl variant. Tobias Geerinckx-Rice 2021-03-29gnu: gegl: Refer to dot....* gnu/packages/gimp.scm (gegl)[arguments]: Add a new 'refer-to-dot phase. Tobias Geerinckx-Rice 2021-03-28gnu: gegl: Update to 0.4.28....* gnu/packages/gimp.scm (gegl): Update to 0.4.28. [arguments]: Build with meson@0.55. Tobias Geerinckx-Rice 2021-03-28gnu: babl: Update to 0.1.86....* gnu/packages/gimp.scm (babl): Update to 0.1.86. [arguments]: Build with meson@0.55. Tobias Geerinckx-Rice 2021-03-24Merge remote-tracking branch 'origin/master' into core-updatesEfraim Flashner 2021-03-17gnu: Use autoconf instead of autoconf-wrapper when possible....This should reduce confusion on when to use the "autoconf" package and when to use "autoconf-wrapper" instead in package definitions. Fixes <https://bugs.gnu.org/46564>. * gnu/packages/autotools.scm (autoconf-wrapper): advise to use the "autoconf" package instead where possible. * gnu/packages/game-development.scm (tsukundere)[native-inputs]: use "autoconf" instead of "autoconf-wrapper". * gnu/packages/gimp.scm (glimpse)[native-inputs]: likewise. (gimp-resynthesizer)[native-inputs]: add comment on why "autoconf-wrapper" is used. * gnu/packages/gnunet.scm (gnunet)[native-inputs]: use "autoconf" instead of "autoconf-wrapper". * gnu/packages/gnupg.scm (signing-party)[native-inputs]: add comment on why "autoconf-wrapper" is used. * gnu/packages/guile-xyz.scm (guile-bash,guile-filesystem,guile-ics,guile-udev)[native-inputs]: use "autoconf" instead of "autoconf-wrapper". * gnu/packages/libevent.scm (libuv)[native-inputs]: indicates "autoconf-wrapper" needs to be replaced with "autoconf" on core-updates. * gnu/packages/logging.scm (glog)[native-inputs]: use "autoconf" instead of "autoconf-wrapper". * gnu/packages/mail.scm (libetpan)[native-inputs]: likewise. * gnu/packages/mate.scm (mate-icon-theme-faenza)[native-inputs]: add comment on why "autoconf-wrapper" is used. (mate-screensaver)[native-inputs]: use "autoconf" instead of "autoconf-wrapper". * gnu/packages/package-management.scm (guix)[native-inputs]: likewise. * gnu/packages/sawfish.scm (librep)[native-inputs]: likewise. * gnu/packages/video.scm (motion)[native-inputs]: likewise. * gnu/packages/zile.scm (zile)[native-inputs]: likewise. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Maxime Devos 2021-03-06Merge branch 'master' into core-updatesChristopher Baines 2021-02-28gnu: gegl: Use HTTPS home page URI....* gnu/packages/gimp.scm (gegl)[home-page]: Use HTTPS URI. Nicolas Goaziou 2021-02-01gnu: Adjust package collection to Wrap using GUIX_PYTHONPATH....This change was automated using: $ git ls-files | grep .scm | \ xargs sed 's/(getenv "PYTHONPATH")/(getenv "GUIX_PYTHONPATH")/' -i $ git ls-files | grep .scm | \ xargs sed 's/`("PYTHONPATH"/`("GUIX_PYTHONPATH"/' -i * gnu/packages/admin.scm (nmap): (dstat): Wrap using GUIX_PYTHONPATH. * gnu/packages/audio.scm (jack-2): (carla): Likewise. * gnu/packages/benchmark.scm (fio): Likewise. * gnu/packages/bioinformatics.scm (couger): Likewise. (gess, find-circ, filtlong, nanopolish): Likewise. * gnu/packages/cdrom.scm (cdemu-client): Likewise. * gnu/packages/chemistry.scm (avogadro): Likewise. * gnu/packages/connman.scm (econnman): Likewise. * gnu/packages/cups.scm (hplip): Likewise. * gnu/packages/debug.scm (scanmem): Likewise. * gnu/packages/display-managers.scm (lightdm): Likewise. * gnu/packages/ebook.scm (cozy): Likewise. * gnu/packages/education.scm (anki): Likewise. * gnu/packages/engineering.scm (kicad, volk, freecad): Likewise. * gnu/packages/game-development.scm (renpy): Likewise. * gnu/packages/games.scm (roguebox-adventures) (seahorse-adventures, kajongg): Likewise. * gnu/packages/gimp.scm (gimp, glimpse): Likewise. * gnu/packages/glib.scm (itstool): Likewise. * gnu/packages/gnome.scm (gnome-music, gtg, rhythmbox): Likewise. (eolie, d-feet, gedit, caribou, gnome-shell, authenticator) (gnome-todo, orca, passwordsafe, terminator, setzer) (libratbag, komikku): Likewise. * gnu/packages/gps.scm (gpsd): Likewise. * gnu/packages/gtk.scm (gtk-doc): Likewise. * gnu/packages/ibus.scm (ibus, ibus-libpinyin, ibus-anthy) (ibus-libhangul): Likewise. * gnu/packages/inkscape.scm (inkscape-1.0): Likewise. * gnu/packages/linux.scm (bcc): Likewise. * gnu/packages/mail.scm (notifymuch): Likewise. * gnu/packages/maths.scm (units): Likewise. * gnu/packages/music.scm (solfege): Likewise. * gnu/packages/networking.scm (blueman): Likewise. * gnu/packages/patchutils.scm (patchwork): Likewise. * gnu/packages/photo.scm (rapid-photo-downloader, entangle): Likewise. * gnu/packages/plotutils.scm (asymptote): Likewise. * gnu/packages/presentation.scm (presentty): Likewise. * gnu/packages/screen.scm (byobu): Likewise. * gnu/packages/storage.scm (ceph): Likewise. * gnu/packages/syndication.scm (liferea): Likewise. * gnu/packages/task-management.scm (blanket): Likewise. * gnu/packages/text-editors.scm (manuskript): Likewise. * gnu/packages/version-control.scm (gitless, cgit, git-when-merged) (git-imerge): Likewise. * gnu/packages/video.scm (pitivi): Likewise. * gnu/packages/virtualization.scm (criu): Likewise. * gnu/packages/xfce.scm (catfish): Likewise. Maxim Cournoyer 2020-12-19gnu: babl: Use HTTPS home page URI....* gnu/packages/gimp.scm (babl)[home-page]: Use HTTPS URI. Nicolas Goaziou 2020-12-08gnu: libmypaint: Update to 1.6.1....Needed by mypaint@2.0.1. * gnu/packages/gimp.scm (libmypaint): Update to 1.6.1. Christopher Baines 2020-12-06gnu: Add the Glimpse Image Editor....* gnu/packages/gimp.scm (glimpse): New variable. Leo Famulari 2020-11-28gnu: gegl: Extend test time-outs....* gnu/packages/gimp.scm (gegl)[arguments]: Add an 'extend-test-time-outs phase. Tobias Geerinckx-Rice