gnu: r-gviz: Update to 1.24.0.
[jackhill/guix/guix.git] / gnu / packages / pcre.scm
index 9ca950b..ee853d5 100644 (file)
@@ -3,6 +3,9 @@
 ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
+;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -31,7 +34,7 @@
 (define-public pcre
   (package
    (name "pcre")
-   (version "8.40")
+   (version "8.41")
    (source (origin
             (method url-fetch)
             (uri (list
@@ -42,7 +45,7 @@
                                  version "/pcre-" version ".tar.bz2")))
             (sha256
              (base32
-              "1x7lpjn7jhk0n3sdvggxrlrhab8kkfjwl7qix0ypw9nlx8lpmqh0"))))
+              "0c5m469p5pd7jip621ipq6hbgh7128lzh7xndllfgh77ban7wb76"))))
    (build-system gnu-build-system)
    (outputs '("out"           ;library & headers
               "bin"           ;depends on Readline (adds 20MiB to the closure)
@@ -67,34 +70,41 @@ pattern matching using the same syntax and semantics as Perl 5.  PCRE has its
 own native API, as well as a set of wrapper functions that correspond to the
 POSIX regular expression API.")
    (license license:bsd-3)
-   (home-page "http://www.pcre.org/")))
+   (home-page "https://www.pcre.org/")))
 
 (define-public pcre2
   (package
     (name "pcre2")
-    (version "10.21")
+    (version "10.23")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://sourceforge/pcre/pcre2/"
                                   version "/pcre2-" version ".tar.bz2"))
 
-              (patches (search-patches "pcre2-CVE-2016-3191.patch"))
               (sha256
                (base32
-                "1q6lrj9b08l1q39vxipb0fi88x6ybvkr6439h8bjb9r8jd81fsn6"))))
+                "0vn5g0mkkp99mmzpissa06hpyj6pk9s4mlwbjqrjvw3ihy8rpiyz"))
+              (patches (search-patches "pcre2-CVE-2017-7186.patch"
+                                       "pcre2-CVE-2017-8786.patch"))))
    (build-system gnu-build-system)
    (inputs `(("bzip2" ,bzip2)
              ("readline" ,readline)
              ("zlib" ,zlib)))
    (arguments
     `(#:configure-flags '("--enable-unicode"
-                          "--enable-pcregrep-libz"
-                          "--enable-pcregrep-libbz2"
-                          "--enable-pcretest-libreadline"
-                          "--enable-unicode-properties"
+                          "--enable-pcre2grep-libz"
+                          "--enable-pcre2grep-libbz2"
+                          "--enable-pcre2test-libreadline"
                           "--enable-pcre2-16"
                           "--enable-pcre2-32"
-                          "--enable-jit")))
+                          "--enable-jit")
+      #:phases
+      (modify-phases %standard-phases
+        (add-after 'unpack 'patch-paths
+          (lambda _
+            (substitute* "RunGrepTest"
+              (("/bin/echo") (which "echo")))
+            #t)))))
    (synopsis "Perl Compatible Regular Expressions")
    (description
     "The PCRE library is a set of functions that implement regular expression
@@ -102,4 +112,4 @@ pattern matching using the same syntax and semantics as Perl 5.  PCRE has its
 own native API, as well as a set of wrapper functions that correspond to the
 POSIX regular expression API.")
    (license license:bsd-3)
-   (home-page "http://www.pcre.org/")))
+   (home-page "https://www.pcre.org/")))