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))))
?id=a5c70c2e0e91ede6061ba130c27e5fdedbcbf2d8'>gnu: libmpdclient: Update to 2.15....* gnu/packages/mpd.scm (libmpdclient): Update to 2.15. Tobias Geerinckx-Rice 2018-08-24gnu: ncmpc: Update to 0.29....* gnu/packages/mpd.scm (ncmpc): Update to 0.29. [build-system]: Switch to Meson. [arguments]: Find ncurses.h. [native-inputs]: Add gettext. Tobias Geerinckx-Rice 2018-08-18gnu: mpd: Update to 0.20.21....* gnu/packages/mpd.scm (mpd): Update to 0.20.21. Tobias Geerinckx-Rice 2018-06-27gnu: python-mpd2: Return #t from phases....* gnu/packages/mpd.scm (python-mpd2)[arguments]: Substitute INVOKE for SYSTEM*. Tobias Geerinckx-Rice 2018-05-29gnu: mpd: Update to 0.20.20....* gnu/packages/mpd.scm (mpd): Update to 0.20.20. Leo Famulari 2018-05-12gnu: MPD: Remove unecessary dependency on libmad....MPD already depends on FFmpeg, which uses LAME for MP3 decoding. gnu/packages/mpd.scm (mpd)[inputs]: Remove LIBMAD. Leo Famulari 2018-05-06gnu: mpd-mpc: Update to 0.30....* gnu/packages/mpd.scm (mpd-mpc): Update to 0.30. Leo Famulari 2018-04-27gnu: mpd: Update to 0.20.19....* gnu/packages/mpd.scm (mpd): Update to 0.20.19. Tobias Geerinckx-Rice 2018-04-15gnu: ncmpcpp: Update to 0.8.2....* gnu/packages/mpd.scm (ncmpcpp): Update to 0.8.2. Leo Famulari 2018-03-21gnu: mpd: Update to 0.20.18....* gnu/packages/mpd.scm (mpd): Update to 0.20.18. Leo Famulari 2018-02-22gnu: mpd-mpc: Update to 0.29....* gnu/packages/mpd.scm (mpd-mpc): Update to 0.29. [build-system]: Use the meson-build-system. Leo Famulari 2018-02-22gnu: mpd: Update to 0.20.17....* gnu/packages/mpd.scm (mpd): Update to 0.20.17. [source]: Use HTTPS URL. Leo Famulari 2018-02-22gnu: libmpdclient: Update to 2.14....* gnu/packages/mpd.scm (libmpdclient): Update to 2.14. [source]: Use HTTPS URL. Leo Famulari 2018-02-16gnu: Use HTTPS for supported nongnu.org home pages....* gnu/packages/acl.scm (acl)[home-page]: Use HTTPS. * gnu/packages/admin.scm (dmidecode)[home-page]: Likewise. * gnu/packages/attr.scm (attr)[home-page]: Likewise. * gnu/packages/audio.scm (lash)[home-page]: Likewise. * gnu/packages/avr.scm (avr-libc)[home-page]: Likewise. * gnu/packages/backup.scm (rdiff-backup, libchop)[home-page]: Likewise. * gnu/packages/compression.scm (fastjar, lzip, lziprecover, atool) (lunzip, clzip, lzlib, plzip)[home-page]: Likewise. * gnu/packages/emacs.scm (geiser, bbdb, m17n-lib, m17n-lib)[home-page]: Likewise. * gnu/packages/flashing-tools.scm (avrdude)[home-page]: Likewise. * gnu/packages/fontutils.scm (libotf)[home-page]: Likewise. * gnu/packages/game-development.scm (gzochi)[home-page]: Likewise. * gnu/packages/games.scm (enigma)[home-page]: Likewise. * gnu/packages/gsasl.scm (libntlm)[home-page]: Likewise. * gnu/packages/gtk.scm (guile-cairo)[home-page]: Likewise. * gnu/packages/guile.scm (guile-reader, guile-lib, guile-json) (guile-redis, g-wrap)[home-page]: Likewise. * gnu/packages/libunwind.scm (libunwind)[home-page]: Likewise. * gnu/packages/lout.scm (lout)[home-page]: Likewise. * gnu/packages/mpd.scm (sonata)[home-page]: Likewise. * gnu/packages/networking.scm (quagga)[home-page]: Likewise. * gnu/packages/ratpoison.scm (ratpoison)[home-page]: Likewise. * gnu/packages/skribilo.scm (skribilo)[home-page]: Likewise. * gnu/packages/telephony.scm (exosip)[home-page]: Likewise. * gnu/packages/texinfo.scm (texi2html)[home-page]: Likewise. * gnu/packages/xdisorg.scm (xbindkeys)[home-page]: Likewise. Tobias Geerinckx-Rice 2018-01-22gnu: mpd: Update to 0.20.15....* gnu/packages/mpd.scm (mpd): Update to 0.20.15. Leo Famulari 2018-01-13gnu: mpd: Remove (gnu packages gcc) import....This follows up commit 7641266b0328f8a3a4f3643560d00dcf82d539b3. * gnu/packages/mpd.scm: Don't #:use-module (gnu packages gcc). Tobias Geerinckx-Rice 2018-01-13gnu: mpd: Use HTTPS for musicpd.org home pages....* gnu/packages/mpd.scm (libmpdclient, mpd, mpd-mpc, ncmpc)[home-page]: Use HTTPS. Tobias Geerinckx-Rice 2018-01-13gnu: mpdscribble: Update home page....* gnu/packages/mpd.scm (mpdscribble)[home-page]: This package seems to have found a home. Use it. Tobias Geerinckx-Rice 2018-01-13gnu: libmpdclient: Update to 2.13....* gnu/packages/mpd.scm (libmpdclient): Update to 2.13. [build-system]: Switch to meson-build-system. [native-inputs]: Add pkg-config and check. [arguments]: Enable tests and build documentation. Tobias Geerinckx-Rice 2017-12-19gnu: mpd: Update to 0.20.13....* gnu/packages/mpd.scm (mpd): Update to 0.20.13. Leo Famulari 2017-12-07gnu: mpd: Update to 0.20.12....* gnu/packages/mpd.scm (mpd): Update to 0.20.12. Leo Famulari 2017-11-17gnu: Move testing packages from python.scm to check.scm....* gnu/packages/python.scm (python-behave-web-api, python2-behave-web-api, python-mock, python2-mock, python-mock-2, python-nose, python2-nose, python-nose2, python2-nose2, python-unittest2, python2-unittest2, python-pytest, python2-pytest, python-pytest-3.0, python2-pytest-3.0, python-pytest-cov, python2-pytest-cov, python-pytest-runner, python2-pytest-runner, python-pytest-mock, python2-pytest-mock, python-pytest-xdist, python2-pytest-xdist, python-scripttest, python2-scripttest, python-testtools, python2-testtools, python-testscenarios, python2-testscenarios, python-testresources, python2-testresources, python-subunit, python2-subunit, python-fixtures, python2-fixtures, python-testrepository, python2-testrepository, python-coverage, python2-coverage, python-cov-core, python2-cov-core, python-testpath, python2-testpath, python-testlib, python2-testlib, python-pytest-cache, python2-pytest-cache, python-pytest-localserver, python-pytest-xprocess, python-pytest-subtesthack, python2-pytest-subtesthack, python-hypothesis, python2-hypothesis, python-lit, python2-lit, python-pytest-pep8, python2-pytest-pep8, python-pytest-flakes, python2-pytest-flakes, python2-coverage-test-runner, python-pylint, python2-pylint, python-paramunittest, python2-python-paramunittest, python-pytest-warnings, python2-pytest-warnings, python-pytest-capturelog, python2-pytest-capturelog, python-pytest-catchlog, python2-pytest-catchlog, python-nosexcover, python2-nosexcover, python-discover, python2-discover, behave, python-rednose, python2-rednose, python-nose-randomly, python2-nose-randomly, python-nose-timer, python2-nose-timer): Move from here... * gnu/packages/check.scm: ...to here. * gnu/packages/admin.scm, gnu/packages/android.scm, gnu/packages/backup.scm, gnu/packages/bioinformatics.scm, gnu/packages/calendar.scm, gnu/packages/dav.scm, gnu/packages/django.scm, gnu/packages/freedesktop.scm, gnu/packages/haskell.scm, gnu/packages/image.scm, gnu/packages/irc.scm, gnu/packages/jrnl.scm, gnu/packages/ldc.scm, gnu/packages/libffi.scm, gnu/packages/mail.scm, gnu/packages/mpd.scm, gnu/packages/openstack.scm, gnu/packages/package-management.scm, gnu/packages/password-utils.scm, gnu/packages/python-crypto.scm, gnu/packages/python-web.scm, gnu/packages/rdf.scm, gnu/packages/statistics.scm, gnu/packages/storage.scm, gnu/packages/time.scm, gnu/packages/tls.scm, gnu/packages/tor.scm, gnu/packages/tryton.scm: Adjust accordingly. Ricardo Wurmus 2017-10-31gnu: ncmpcpp: Update to 0.8.1....* gnu/packages/mpd.scm (ncmpcpp): Update to 0.8.1. Leo Famulari 2017-10-30gnu: mpd: Update to 0.20.11....* gnu/packages/mpd.scm (mpd): Update to 0.20.11. Leo Famulari 2017-09-04gnu: mpd: Update to 0.20.10....* gnu/packages/mpd.scm (mpd): Update to 0.20.10. Leo Famulari 2017-07-10gnu: ncmpcpp: Update to 0.8....* gnu/packages/mpd.scm (ncmpcpp): Update to 0.8. [inputs]: Add curl. [source], [home-page]: Use HTTPS URLs. Leo Famulari 2017-06-21gnu: mpd: Build with the default GCC....* gnu/packages/mpd.scm (mpd)[native-inputs]: Remove gcc-5. Leo Famulari 2017-06-17gnu: mpd: Update to 0.20.9....* gnu/packages/mpd.scm (mpd): Update to 0.20.9. Leo Famulari