[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
01/05: packages: Add 'search-auxiliary-file'.
From: |
Alex Kost |
Subject: |
01/05: packages: Add 'search-auxiliary-file'. |
Date: |
Mon, 27 Feb 2017 08:45:10 -0500 (EST) |
alezost pushed a commit to branch master
in repository guix.
commit 96eaa55ffb9877c319df09d158fca31034d8f0a2
Author: Alex Kost <address@hidden>
Date: Fri Feb 17 13:17:03 2017 +0300
packages: Add 'search-auxiliary-file'.
Suggested-by: Ludovic Courtès <address@hidden> at
<http://lists.gnu.org/archive/html/guix-devel/2016-12/msg01174.html>.
* gnu/packages.scm (%auxiliary-files-path): New variable.
(search-auxiliary-file): New procedure.
---
gnu/packages.scm | 24 ++++++++++++++++++------
1 file changed, 18 insertions(+), 6 deletions(-)
diff --git a/gnu/packages.scm b/gnu/packages.scm
index 0aa289d..10ca3bb 100644
--- a/gnu/packages.scm
+++ b/gnu/packages.scm
@@ -2,7 +2,7 @@
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès
<address@hidden>
;;; Copyright © 2013 Mark H Weaver <address@hidden>
;;; Copyright © 2014 Eric Bavier <address@hidden>
-;;; Copyright © 2016 Alex Kost <address@hidden>
+;;; Copyright © 2016, 2017 Alex Kost <address@hidden>
;;; Copyright © 2016 Mathieu Lirzin <address@hidden>
;;;
;;; This file is part of GNU Guix.
@@ -40,8 +40,10 @@
#:use-module (srfi srfi-39)
#:export (search-patch
search-patches
+ search-auxiliary-file
search-bootstrap-binary
%patch-path
+ %auxiliary-files-path
%bootstrap-binaries-path
%package-module-path
@@ -62,17 +64,27 @@
;;;
;;; Code:
-;; By default, we store patches and bootstrap binaries alongside Guile
-;; modules. This is so that these extra files can be found without
-;; requiring a special setup, such as a specific installation directory
-;; and an extra environment variable. One advantage of this setup is
-;; that everything just works in an auto-compilation setting.
+;; By default, we store patches, auxiliary files and bootstrap binaries
+;; alongside Guile modules. This is so that these extra files can be
+;; found without requiring a special setup, such as a specific
+;; installation directory and an extra environment variable. One
+;; advantage of this setup is that everything just works in an
+;; auto-compilation setting.
(define %bootstrap-binaries-path
(make-parameter
(map (cut string-append <> "/gnu/packages/bootstrap")
%load-path)))
+(define %auxiliary-files-path
+ (make-parameter
+ (map (cut string-append <> "/gnu/packages/aux-files")
+ %load-path)))
+
+(define (search-auxiliary-file file-name)
+ "Search the auxiliary FILE-NAME. Return #f if not found."
+ (search-path (%auxiliary-files-path) file-name))
+
(define (search-patch file-name)
"Search the patch FILE-NAME. Raise an error if not found."
(or (search-path (%patch-path) file-name)