summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2014-12-31 03:38:26 -0500
committerMark H Weaver <mhw@netris.org>2015-01-07 12:33:27 -0500
commit2959dbe935f17bdcc19405067aa7353d8cc98c48 (patch)
treebadab33742282508715ff789fe2c337165bb66e0 /gnu
parentc9a465555388867725cf455066ab909c9610c2f5 (diff)
gnu: bootstrap: Add support for snippets to 'package-from-tarball'.
* gnu/packages/bootstrap.scm (package-from-tarball): Add new keyword argument #:snippet.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/bootstrap.scm9
1 files changed, 7 insertions, 2 deletions
diff --git a/gnu/packages/bootstrap.scm b/gnu/packages/bootstrap.scm
index 5a19783bb6..05444dd017 100644
--- a/gnu/packages/bootstrap.scm
+++ b/gnu/packages/bootstrap.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -87,10 +88,13 @@
(patch patch))
(origin-patches source))))))
-(define (package-from-tarball name source program-to-test description)
+(define* (package-from-tarball name source program-to-test description
+ #:key snippet)
"Return a package that correspond to the extraction of SOURCE.
PROGRAM-TO-TEST is a program to run after extraction of SOURCE, to
-check whether everything is alright."
+check whether everything is alright. If SNIPPET is provided, it is
+evaluated after extracting SOURCE. SNIPPET should return true if
+successful, or false to signal an error."
(package
(name name)
(version "0")
@@ -112,6 +116,7 @@ check whether everything is alright."
(with-directory-excursion out
(and (zero? (system* tar "xvf"
(string-append builddir "/binaries.tar")))
+ ,@(if snippet (list snippet) '())
(zero? (system* (string-append "bin/" ,program-to-test)
"--version"))))))))
(inputs