gnu: ungoogled-chromium: Update to 81.0.4044.129-0.c2a89fb [security fixes].
[jackhill/guix/guix.git] / gnu / packages / swig.scm
index 096cfd5..b1b17fc 100644 (file)
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013, 2015 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -22,6 +23,7 @@
   #:use-module (guix download)
   #:use-module (guix licenses)
   #:use-module (guix build-system gnu)
+  #:use-module (gnu packages)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages guile)
   #:use-module (gnu packages boost)
 (define-public swig
   (package
     (name "swig")
-    (version "3.0.5")
+    (version "3.0.12")
     (source (origin
              (method url-fetch)
              (uri (string-append "mirror://sourceforge/" name "/" name "/"
                                  name "-" version "/"
                                  name "-" version ".tar.gz"))
+             (patches (search-patches "swig-guile-gc.patch"))
              (sha256
               (base32
-               "0g1a69vrqxgsnr1wkx851ljn73a2x3jqzxa66s2l3w0kyblbjk4z"))))
+               "0kf99ygrjs5616gsqhz1l7bib3a12izmxi7g48bwblbymr3z9ybw"))))
     (build-system gnu-build-system)
-    (native-inputs `(("boost" ,boost)))
-    (inputs `(("pcre" ,pcre)
-
-              ;; Provide these to run the corresponding tests.
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'set-env
+           ;; Required since Perl 5.26.0's removal of the current
+           ;; working directory from @INC.
+           ;; TODO Try removing this for later versions of SWIG.
+           (lambda _ (setenv "PERL_USE_UNSAFE_INC" "1") #t))
+         (add-before 'configure 'workaround-gcc-bug
+           (lambda _
+             ;; XXX: Don't add the -isystem flag, or GCCs #include_next
+             ;; won't be able to find <stdlib.h>.
+             (substitute* "configure"
+               (("-isystem ") "-I"))
+             #t)))))
+    (native-inputs `(("boost" ,boost)
+                     ("pcre" ,pcre "bin")))       ;for 'pcre-config'
+    (inputs `(;; Provide these to run the corresponding tests.
               ("guile" ,guile-2.0)
               ("perl" ,perl)))
               ;; FIXME: reactivate input python as soon as the test failures