aboutsummaryrefslogtreecommitdiff
path: root/distro.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2012-08-22 17:24:38 +0200
committerLudovic Courtès <ludo@gnu.org>2012-08-22 17:25:43 +0200
commit800cdeef31ccc92c9f54b62ec5276985d7b157b1 (patch)
tree81381bff713789d149aad1ebc354b42849ecebad /distro.scm
parentaf5521ca019a81d1efc4428cec242bb4f9d77a05 (diff)
downloadpatches-800cdeef31ccc92c9f54b62ec5276985d7b157b1.tar
patches-800cdeef31ccc92c9f54b62ec5276985d7b157b1.tar.gz
distro: Move patches to their own directory.
* Makefile.am (nobase_dist_guilemodule_DATA): Keep only $(MODULES). (patchdir): New variable. (dist_patch_DATA): New variable. Patch files formerly in $(nobase_dist_guilemodule_DATA). (.scm.go): Define `DISTRO_PATCH_DIRECTORY' and `DISTRO_INSTALLED_PATCH_DIRECTORY'. (TESTS_ENVIRONMENT): Define `DISTRO_PATCH_DIRECTORY'. * distro.scm (%patch-directory): New variable. (search-patch): New procedure. * distro/base.scm: Use `search-patch' instead of `(search-path %load-path ...)'. * distro/findutils-absolute-paths.patch, distro/guile-1.8-cpp-4.5.patch, distro/m4-readlink-EINVAL.patch, distro/m4-s_isdir.patch, distro/make-impure-dirs.patch: Move to `distro/patches'.
Diffstat (limited to 'distro.scm')
-rw-r--r--distro.scm15
1 files changed, 14 insertions, 1 deletions
diff --git a/distro.scm b/distro.scm
index 784e537deb..b21b0e6184 100644
--- a/distro.scm
+++ b/distro.scm
@@ -18,10 +18,14 @@
(define-module (distro)
#:use-module (guix packages)
+ #:use-module (guix utils)
#:use-module (ice-9 ftw)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26)
- #:export (find-packages-by-name))
+ #:use-module (srfi srfi-39)
+ #:export (search-patch
+ %patch-directory
+ find-packages-by-name))
;;; Commentary:
;;;
@@ -32,6 +36,15 @@
(define _ (cut gettext <> "guix"))
+(define %patch-directory
+ (make-parameter
+ (or (getenv "DISTRO_PATCH_DIRECTORY")
+ (compile-time-value (getenv "DISTRO_INSTALLED_PATCH_DIRECTORY")))))
+
+(define (search-patch file-name)
+ "Search the patch FILE-NAME."
+ (search-path (list (%patch-directory)) file-name))
+
(define %distro-module-directory
;; Absolute path of the (distro ...) module root.
(string-append (dirname (search-path %load-path "distro.scm"))