summary refs log tree commit diff
path: root/gnu/packages/regex.scm
diff options
context:
space:
mode:
authorMarius Bakke <marius@gnu.org>2022-02-11 00:55:55 +0100
committerMarius Bakke <marius@gnu.org>2022-02-11 23:54:31 +0100
commitc5aaf1d071da799f6b3b4e87521a2a33d7ae41c2 (patch)
tree11f67872cbdef0a08e6e3f8559706f068476a74a /gnu/packages/regex.scm
parente2c8868301eddea8d5a7089bb606665ace294c70 (diff)
downloadguix-c5aaf1d071da799f6b3b4e87521a2a33d7ae41c2.tar.gz
gnu: re2: Use G-expressions.
* gnu/packages/regex.scm (re2)[arguments]: Rewrite with gexps.  Simplify
cross-compilation fix by using CXX-FOR-TARGET.
Diffstat (limited to 'gnu/packages/regex.scm')
-rw-r--r--gnu/packages/regex.scm37
1 files changed, 13 insertions, 24 deletions
diff --git a/gnu/packages/regex.scm b/gnu/packages/regex.scm
index 662bf435db..616c56cc6e 100644
--- a/gnu/packages/regex.scm
+++ b/gnu/packages/regex.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2014 John Darrington
 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2016, 2020 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2016, 2020, 2022 Marius Bakke <marius@gnu.org>
 ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2020 Brett Gilio <brettg@gnu.org>
 ;;;
@@ -25,6 +25,7 @@
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix git-download)
+  #:use-module (guix gexp)
   #:use-module (guix build-system gnu)
   #:use-module (guix utils))
 
@@ -42,29 +43,17 @@
                  "1gzdqy5a0ln9rwd8kmwbgis6qin63hapicwb35xkbnj3y84jj6yx"))))
      (build-system gnu-build-system)
      (arguments
-      `(#:modules ((guix build gnu-build-system)
-                   (guix build utils)
-                   (srfi srfi-1))
-        #:test-target "test"
-        ;; There is no configure step, but the Makefile respects a prefix.
-        ;; As ./configure does not know anything about the target CXX
-        ;; we need to specify TARGET-g++ explicitly.
-        #:make-flags (list (string-append "prefix=" %output)
-                           (string-append
-                             "CXX=" ,(string-append
-                                       (if (%current-target-system)
-                                           (string-append
-                                             (%current-target-system) "-")
-                                           "")
-                                       "g++")))
-        #:phases
-        (modify-phases %standard-phases
-          (delete 'configure)
-          (add-after 'install 'delete-static-library
-            (lambda* (#:key outputs #:allow-other-keys)
-              ;; No make target for shared-only; delete the static version.
-              (delete-file (string-append (assoc-ref outputs "out")
-                                          "/lib/libre2.a")))))))
+      (list #:test-target "test"
+            ;; There is no configure step, but the Makefile respects a prefix.
+            #:make-flags #~(list (string-append "prefix=" #$output)
+                                 (string-append "CXX=" #$(cxx-for-target)))
+            #:phases
+            #~(modify-phases %standard-phases
+                (delete 'configure)
+                (add-after 'install 'delete-static-library
+                  (lambda _
+                    ;; No make target for shared-only; delete the static version.
+                    (delete-file (string-append #$output "/lib/libre2.a")))))))
      (synopsis "Fast, safe, thread-friendly regular expression engine")
      (description "RE2 is a fast, safe, thread-friendly alternative to
 backtracking regular expression engines like those used in PCRE, Perl and