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))))
where now unused. Janneke Nieuwenhuizen 2023-04-21gnu: po4a: Remove patch-docbook-xml phase....* gnu/packages/gettext.scm (po4a) [arguments]: Remove patch-docbook-xml phase. Remove trailing #t. Use gexps. [native-inputs]: Remove labels. Maxim Cournoyer 2023-03-20Merge remote-tracking branch 'origin/master' into core-updatesAndreas Enge 2023-03-12gnu: mdpo: Remove python-pre-commit....* gnu/packages/gettext.scm (mdpo)[native-inputs]: Remove python-pre-commit. Signed-off-by: Lars-Dominik Braun <lars@6xq.net> Antero Mejr 2023-02-26gnu: gettext: Remove input label....* gnu/packages/gettext.scm (gnu-gettext)[native-inputs]: Remove label. Ludovic Courtès 2023-01-30Merge remote-tracking branch 'origin/master' into core-updates... Conflicts: doc/guix.texi gnu/local.mk gnu/packages/admin.scm gnu/packages/base.scm gnu/packages/chromium.scm gnu/packages/compression.scm gnu/packages/databases.scm gnu/packages/diffoscope.scm gnu/packages/freedesktop.scm gnu/packages/gnome.scm gnu/packages/gnupg.scm gnu/packages/guile.scm gnu/packages/inkscape.scm gnu/packages/llvm.scm gnu/packages/openldap.scm gnu/packages/pciutils.scm gnu/packages/ruby.scm gnu/packages/samba.scm gnu/packages/sqlite.scm gnu/packages/statistics.scm gnu/packages/syndication.scm gnu/packages/tex.scm gnu/packages/tls.scm gnu/packages/version-control.scm gnu/packages/xml.scm guix/build-system/copy.scm guix/scripts/home.scm Efraim Flashner 2023-01-03gnu: po4a: Update to 0.68...The phase do-not-override-PERL5LIB is removed since it was fixed in po4a v0.63. https://github.com/mquinson/po4a/blob/0ab1670e50f0a72781e3d1de6ab9da0c2d71c646/NEWS#L366 bash-minimal is added to inputs since the wrap-program function is used. See also https://issues.guix.gnu.org/49327#80 The only regrettable thing is that only the SGML test failed, but I could not find the cause... Nevertheless, some previously failed tests are now passing. * gnu/packages/gettext.scm (po4a): Update to 0.68. Signed-off-by: Julien Lepiller <julien@lepiller.eu> gemmaro 2022-11-23gnu: gettext: Skip Gnulib tests that fail on GNU/Hurd....* gnu/packages/gettext.scm (gettext-minimal)[arguments]: In 'patch-tests' phase, arrange to not run 'test-tls'. Adjust 'XFAIL_TESTS' flag passed to #:make-flags. Ludovic Courtès 2022-05-28gnu: gettext-minimal: Fix build with new libunistring....* gnu/packages/gettext.scm (gettext-minimal)[source]: Add patch. * gnu/packages/patches/gettext-libunicode-update.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. Efraim Flashner ges/lolcode.scm, gnu/packages/lxde.scm, gnu/packages/lxqt.scm, gnu/packages/mail.scm, gnu/packages/markup.scm, gnu/packages/mate.scm, gnu/packages/maths.scm, gnu/packages/mc.scm, gnu/packages/messaging.scm, gnu/packages/music.scm, gnu/packages/ncurses.scm, gnu/packages/networking.scm, gnu/packages/nickle.scm, gnu/packages/openbox.scm, gnu/packages/pdf.scm, gnu/packages/perl-check.scm, gnu/packages/perl.scm, gnu/packages/python-compression.scm, gnu/packages/python-crypto.scm, gnu/packages/python-web.scm, gnu/packages/python-xyz.scm, gnu/packages/python.scm, gnu/packages/qt.scm, gnu/packages/ruby.scm, gnu/packages/rust.scm, gnu/packages/scheme.scm, gnu/packages/serialization.scm, gnu/packages/shells.scm, gnu/packages/ssh.scm, gnu/packages/suckless.scm, gnu/packages/tbb.scm, gnu/packages/telephony.scm, gnu/packages/text-editors.scm, gnu/packages/textutils.scm, gnu/packages/time.scm, gnu/packages/tls.scm, gnu/packages/tor.scm, gnu/packages/version-control.scm, gnu/packages/video.scm, gnu/packages/vim.scm, gnu/packages/web.scm, gnu/packages/wm.scm, gnu/packages/xdisorg.scm, gnu/packages/xfce.scm, gnu/packages/xml.scm, gnu/packages/xorg.scm, gnu/services/certbot.scm, gnu/services/desktop.scm, gnu/services/version-control.scm, gnu/services/web.scm, guix/import/hackage.scm, guix/licenses.scm: Likewise. Signed-off-by: Efraim Flashner <efraim@flashner.co.il> nikita 2020-04-11Merge branch 'master' into core-updatesMarius Bakke 2020-04-10gnu: xorriso: Build gui frontend....* gnu/packages/cdrom.scm (xorriso)[outputs]: Add gui. [arguments]: Add custom phase to install gui files to separate output and wrap the binary. [inputs]: Add tk. Efraim Flashner 2020-04-08Merge branch 'master' into core-updates... Conflicts: etc/news.scm gnu/local.mk gnu/packages/check.scm gnu/packages/cross-base.scm gnu/packages/gimp.scm gnu/packages/java.scm gnu/packages/mail.scm gnu/packages/sdl.scm gnu/packages/texinfo.scm gnu/packages/tls.scm gnu/packages/version-control.scm Marius Bakke 2020-04-04gnu: Replace uses of 'gettext' with 'gettext-minimal'....* gnu/packages/cdrom.scm (dvdstyler)[native-inputs]: Change from GNU-GETTEXT to GETTEXT-MINIMAL. * gnu/packages/emulators.scm (dolphin-emu)[native-inputs]: Likewise. * gnu/packages/engineering.scm (lepton-eda, kicad, kicad-i18l)[native-inputs]: Likewise. * gnu/packages/games.scm (quadrapassel, edgar)[native-inputs]: Likewise. * gnu/packages/gnome.scm (eog-plugins, workrave, geary)[native-inputs]: Likewise. * gnu/packages/guile-xyz.scm (guile-gi, emacsy)[native-inputs]: Likewise. * gnu/packages/image.scm (gpick)[native-inputs]: Likewise. * gnu/packages/messaging.scm (telegram-purple)[native-inputs]: Likewise. * gnu/packages/music.scm (fmit)[native-inputs]: Likewise. * gnu/packages/package-management.scm (flatpak)[native-inputs]: Likewise. * gnu/packages/patchutils.scm (quilt)[native-inputs]: Likewise. * gnu/packages/photo.scm (hugin)[native-inputs]: Likewise. * gnu/packages/security-token.scm (eid-mw)[native-inputs]: Likewise. * gnu/packages/telephony.scm (jami)[native-inputs]: Likewise. * gnu/packages/texinfo.scm (pinfo)[native-inputs]: Likewise. * gnu/packages/vulkan.scm (vkd3d)[native-inputs]: Likewise. * gnu/packages/web.scm (cadaver)[native-inputs]: Likewise. Marius Bakke 2020-03-14Merge branch 'master' into core-updatesMarius Bakke 2020-03-14gnu: cdparanoia: Use HTTPS home page....* gnu/packages/cdrom.scm (cdparanoia)[home-page]: Use HTTPS. Tobias Geerinckx-Rice 2020-01-22gnu: Replace uses of 'libjpeg' with 'libjpeg-turbo'....* gnu/packages/abiword.scm (abiword)[inputs]: Change from LIBJPEG to LIBJPEG-TURBO. * gnu/packages/admin.scm (testdisk)[inputs]: Likewise. * gnu/packages/algebra.scm (giac)[inputs]: Likewise. * gnu/packages/animation.scm (synfig)[inputs]: Likewise. * gnu/packages/astronomy.scm (gnuastro, celestia)[inputs]: Likewise. * gnu/packages/cdrom.scm (dvdstyler)[inputs]: Likewise. * gnu/packages/cran.scm (r-jpeg, r-tiff, r-readbitmap)[inputs]: Likewise. * gnu/packages/cups.scm (cups-filters, hplip)[inputs]: Likewise. * gnu/packages/display-managers.scm (slim)[inputs]: Likewise. * gnu/packages/ebook.scm (fbreader)[inputs]: Likewise. * gnu/packages/emacs.scm (emacs)[inputs]: Likewise. * gnu/packages/enlightenment.scm (efl)[propagated-inputs]: Likewise. * gnu/packages/fltk.scm (fltk, ntk)[inputs]: Likewise. * gnu/packages/fontutils.scm (fontforge)[inputs]: Likewise. * gnu/packages/freedesktop.scm (weston)[inputs]: Likewise. * gnu/packages/game-development.scm (sfml, allegro, aseprite, python-pygame, eureka, ioquake3)[inputs]: Likewise. * gnu/packages/games.scm (adanaxisgpl, freedroidrpg, irrlicht, minetest, fizmo, supertuxkart, gzdoom, xmoto, xonotic)[inputs]: Likewise. * gnu/packages/gd.scm (gd, perl-gd)[inputs]: Likewise. * gnu/packages/ghostscript.scm (lcms)[inputs]: Likewise. (ghostscript)[inputs, native-inputs]: Likewise. * gnu/packages/gimp.scm (gegl, gimp)[inputs]: Likewise. * gnu/packages/gnome.scm (libgnomeui, eog, tracker-miners, gthumb)[inputs]: Likewise. * gnu/packages/gnunet.scm (libextractor)[inputs]: Likewise. * gnu/packages/gnustep.scm (windowmaker)[inputs]: Likewise. * gnu/packages/graphics.scm (blender, blender-2.79, openimageio, openscenegraph, openscenegraph-3.4, povray, fgallery)[inputs]: Likewise. * gnu/packages/graphviz.scm (graphviz)[inputs]: Likewise. * gnu/packages/gstreamer.scm (gst-plugins-good)[inputs]: Likewise. * gnu/packages/gtk.scm (gdk-pixbuf)[inputs]: Likewise. * gnu/packages/image-processing.scm (dcmtk, mia, vtk, opencv, vips, nip2, vxl, insight-toolkit)[inputs]: Likewise. * gnu/packages/image-viewers.scm (gpicview, luminance-hdr)[inputs]: Likewise. * gnu/packages/image.scm (jpegoptim, libtiff, leptonica, imlib2, freeimage, vigra, libwebp, libmng, jasper, steghide, jp2a)[inputs]: Likewise. * gnu/packages/imagemagick.scm (imagemagick, graphicsmagick)[inputs]: Likewise. * gnu/packages/java.scm (icedtea-6, icedtea-7, openjdk9, openjdk11, openjdk12)[inputs]: Likewise. * gnu/packages/kde-frameworks.scm (khtml)[inputs]: Likewise. * gnu/packages/kodi.scm (kodi)[inputs]: Likewise. * gnu/packages/machine-learning.scm (dlib, tensorflow)[inputs]: Likewise. * gnu/packages/mate.scm (atril, eom)[inputs]: Likewise. * gnu/packages/maths.scm (hdf4, hdf-java, hdf-eos2, netcdf)[inputs]: Likewise. * gnu/packages/netpbm.scm (netpbm)[inputs]: Likewise. * gnu/packages/pdf.scm (zathura-pdf-mupdf, podofo, mupdf, fbida)[inputs]: Likewise. * gnu/packages/photo.scm (libraw, libpano13, enblend-enfuse, darktable, hugin, rawtherapee)[inputs]: Likewise. * gnu/packages/prolog.scm (swi-prolog)[native-inputs]: Likewise. * gnu/packages/python-xyz.scm (python-hdf4, python-pillow)[inputs]: Likewise. * gnu/packages/qt.scm (qtbase, qtwebkit)[inputs]: Likewise. * gnu/packages/rdesktop.scm (freerdp)[inputs]: Likewise. * gnu/packages/scanner.scm (sane-backends, xsane)[inputs]: Likewise. * gnu/packages/scheme.scm (racket)[inputs]: Likewise. * gnu/packages/scribus.scm (scribus)[inputs]: Likewise. * gnu/packages/sdl.scm (sdl-image)[propagated-inputs]: Likewise. (guile-sdl)[native-inputs]: Likewise. * gnu/packages/spice.scm (spice-gtk)[inputs]: Likewise. * gnu/packages/statistics.scm (r-with-tests)[inputs]: Likewise. * gnu/packages/tcl.scm (perl-tk)[inputs]: Likewise. * gnu/packages/upnp.scm (readymedia)[inputs]: Likewise. * gnu/packages/video.scm (mplayer, mpv, v4l-utils, motion)[inputs]: Likewise. * gnu/packages/web-browsers.scm (dillo, links)[inputs]: Likewise. * gnu/packages/web.scm (netsurf)[inputs]: Likewise. * gnu/packages/webkit.scm (webkitgtk)[inputs]: Likewise. * gnu/packages/wine.scm (wine)[inputs]: Likewise. * gnu/packages/wv.scm (wv)[inputs]: Likewise. * gnu/packages/wxwidgets.scm (wxwidgets, wxwidgets-2)[inputs]: Likewise. * gnu/packages/xdisorg.scm (xscreensaver)[inputs]: Likewise. * gnu/packages/xfce.scm (tumbler)[inputs]: Likewise. * gnu/packages/xfig.scm (xfig, transfig)[inputs]: Likewise. * gnu/packages/xorg.scm (xpra)[inputs]: Likewise. Marius Bakke 2020-01-11gnu: cdemu-daemon: Split excessively long line....* gnu/packages/cdrom.scm (cdemu-daemon)[source]: Wrap at 80 characters. Tobias Geerinckx-Rice 2020-01-11gnu: cdemu-client: Update to 3.2.4....* gnu/packages/cdrom.scm (cdemu-client): Update to 3.2.4. Tobias Geerinckx-Rice 2020-01-11gnu: cdemu-daemon: Update to 3.2.4....* gnu/packages/cdrom.scm (cdemu-daemon): Update to 3.2.4. Tobias Geerinckx-Rice 2020-01-11gnu: libmirage: Update to 3.2.4....* gnu/packages/cdrom.scm (libmirage): Update to 3.2.4. Tobias Geerinckx-Rice 2019-12-12gnu: libcdio-paranoia: Update to 10.2+2.0.1....* gnu/packages/cdrom.scm (libcdio-paranoia): Update to 10.2+2.0.1. Tobias Geerinckx-Rice 2019-12-03gnu: libcdio: Update to 2.1.0....* gnu/packages/cdrom.scm (libcdio): Update to 2.1.0. Tobias Geerinckx-Rice 2019-12-03gnu: libcdio-paranoia: Update to 10.2+2.0.0....* gnu/packages/cdrom.scm (libcdio-paranoia): Update to 10.2+2.0.0. Tobias Geerinckx-Rice 2019-12-03gnu: libburn: Update to 1.5.2....* gnu/packages/cdrom.scm (libburn): Update to 1.5.2. Tobias Geerinckx-Rice