guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/01: gnu: grep: Fix egrep/fgrep to work regardless of PATH.


From: Mark H. Weaver
Subject: 01/01: gnu: grep: Fix egrep/fgrep to work regardless of PATH.
Date: Sun, 21 Aug 2016 01:44:47 +0000 (UTC)

mhw pushed a commit to branch core-updates
in repository guix.

commit 1063d325ea76aa2b00dfcd3d436b16e412103df1
Author: Mark H Weaver <address@hidden>
Date:   Sat Aug 20 21:40:59 2016 -0400

    gnu: grep: Fix egrep/fgrep to work regardless of PATH.
    
    * gnu/packages/base.scm (grep)[arguments]: New field.  Add
    'fix-egrep-and-fgrep' phase.
---
 gnu/packages/base.scm |   14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index 8c470c3..58a8e52 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -88,6 +88,20 @@ command-line arguments, multiple languages, and so on.")
             (patches (search-patches "grep-timing-sensitive-test.patch"))))
    (build-system gnu-build-system)
    (native-inputs `(("perl" ,perl)))             ;some of the tests require it
+   (arguments
+    `(#:phases
+      (modify-phases %standard-phases
+        (add-after 'install 'fix-egrep-and-fgrep
+          ;; Patch 'egrep' and 'fgrep' to execute 'grep' via its
+          ;; absolute file name instead of searching for it in $PATH.
+          (lambda* (#:key outputs #:allow-other-keys)
+            (let* ((out (assoc-ref outputs "out"))
+                   (bin (string-append out "/bin")))
+              (substitute* (list (string-append bin "/egrep")
+                                 (string-append bin "/fgrep"))
+                (("^exec grep")
+                 (string-append "exec " bin "/grep")))
+              #t))))))
    (synopsis "Print lines matching a pattern")
    (description
      "grep is a tool for finding text inside files.  Text is found by



reply via email to

[Prev in Thread] Current Thread [Next in Thread]