summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2013-03-21 00:32:26 +0100
committerLudovic Courtès <ludo@gnu.org>2013-03-21 00:32:26 +0100
commit9776ebb2a50234c293d4c4a699b81a2ee3543367 (patch)
tree33d762af612f944eec65beb3645c8e4cd74438f3
parent712e6e684cdab33edafa293cf1484b3866b23098 (diff)
downloadguix-9776ebb2a50234c293d4c4a699b81a2ee3543367.tar.gz
gnu: Disable file name canonicalization in `search-*'.
* gnu/packages.scm (search-patch, search-bootstrap-binary): Make sure no
  canonicalization occurs.  This reduces the number of 'stat' system
  calls.
-rw-r--r--gnu/packages.scm8
1 files changed, 5 insertions, 3 deletions
diff --git a/gnu/packages.scm b/gnu/packages.scm
index b639541788..821246bc38 100644
--- a/gnu/packages.scm
+++ b/gnu/packages.scm
@@ -61,12 +61,14 @@
 
 (define (search-patch file-name)
   "Search the patch FILE-NAME."
-  (search-path (%patch-path) file-name))
+  (with-fluids ((%file-port-name-canonicalization #f))
+    (search-path (%patch-path) file-name)))
 
 (define (search-bootstrap-binary file-name system)
   "Search the bootstrap binary FILE-NAME for SYSTEM."
-  (search-path (%bootstrap-binaries-path)
-               (string-append system "/" file-name)))
+  (with-fluids ((%file-port-name-canonicalization #f))
+    (search-path (%bootstrap-binaries-path)
+                 (string-append system "/" file-name))))
 
 (define %distro-module-directory
   ;; Absolute path of the (gnu packages ...) module root.