summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2013-01-01 16:55:34 +0100
committerLudovic Courtès <ludo@gnu.org>2013-01-01 16:55:34 +0100
commit4d058c67929aa9d464fcb1ff0217122424078cb8 (patch)
treeddcaa67983811b94a6323631172e4faf827a9e7f
parent450fb5a6b44f05dbaa35daf2b696dfc4d502be96 (diff)
downloadguix-4d058c67929aa9d464fcb1ff0217122424078cb8.tar.gz
build-system/gnu: Add `static-package'.
* distro/packages/make-bootstrap.scm (static-package): Move to...
* guix/build-system/gnu.scm (static-package): ... here.  New procedure.
-rw-r--r--distro/packages/make-bootstrap.scm25
-rw-r--r--guix/build-system/gnu.scm26
2 files changed, 26 insertions, 25 deletions
diff --git a/distro/packages/make-bootstrap.scm b/distro/packages/make-bootstrap.scm
index 28be0b8c49..c0e5d8be5d 100644
--- a/distro/packages/make-bootstrap.scm
+++ b/distro/packages/make-bootstrap.scm
@@ -20,7 +20,7 @@
   #:use-module (guix utils)
   #:use-module (guix packages)
   #:use-module (guix build-system trivial)
-  #:use-module ((guix build-system gnu) #:select (package-with-explicit-inputs))
+  #:use-module (guix build-system gnu)
   #:use-module ((distro) #:select (search-patch))
   #:use-module (distro packages base)
   #:use-module (distro packages bash)
@@ -45,29 +45,6 @@
 ;;;
 ;;; Code:
 
-(define* (static-package p #:optional (loc (current-source-location)))
-  "Return a statically-linked version of package P."
-  ;; TODO: Move to (guix build-system gnu).
-  (let ((args (package-arguments p)))
-    (package (inherit p)
-      (location (source-properties->location loc))
-      (arguments
-       (let ((augment (lambda (args)
-                        (let ((a (default-keyword-arguments args
-                                   '(#:configure-flags '()
-                                     #:strip-flags #f))))
-                          (substitute-keyword-arguments a
-                            ((#:configure-flags flags)
-                             `(cons* "--disable-shared"
-                                     "LDFLAGS=-static"
-                                     ,flags))
-                            ((#:strip-flags _)
-                             ''("--strip-all")))))))
-         (if (procedure? args)
-             (lambda x
-               (augment (apply args x)))
-             (augment args)))))))
-
 (define %glibc-with-relocatable-system
   ;; A libc whose `system' and `popen' functions looks for `sh' in $PATH.
   (package (inherit glibc-final)
diff --git a/guix/build-system/gnu.scm b/guix/build-system/gnu.scm
index 53fc4749f0..4d7ecd54de 100644
--- a/guix/build-system/gnu.scm
+++ b/guix/build-system/gnu.scm
@@ -21,6 +21,7 @@
   #:use-module (guix utils)
   #:use-module (guix derivations)
   #:use-module (guix build-system)
+  #:use-module (guix build-system gnu)
   #:use-module (guix packages)
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-39)
@@ -29,7 +30,8 @@
             gnu-build-system
             package-with-explicit-inputs
             package-with-extra-configure-variable
-            static-libgcc-package))
+            static-libgcc-package
+            static-package))
 
 ;; Commentary:
 ;;
@@ -117,6 +119,28 @@ configure flags for VARIABLE, the associated value is augmented."
   "A version of P linked with `-static-gcc'."
   (package-with-extra-configure-variable p "LDFLAGS" "-static-libgcc"))
 
+(define* (static-package p #:optional (loc (current-source-location)))
+  "Return a statically-linked version of package P."
+  (let ((args (package-arguments p)))
+    (package (inherit p)
+      (location (source-properties->location loc))
+      (arguments
+       (let ((augment (lambda (args)
+                        (let ((a (default-keyword-arguments args
+                                   '(#:configure-flags '()
+                                     #:strip-flags #f))))
+                          (substitute-keyword-arguments a
+                            ((#:configure-flags flags)
+                             `(cons* "--disable-shared"
+                                     "LDFLAGS=-static"
+                                     ,flags))
+                            ((#:strip-flags _)
+                             ''("--strip-all")))))))
+         (if (procedure? args)
+             (lambda x
+               (augment (apply args x)))
+             (augment args)))))))
+
 
 (define %store
   ;; Store passed to STANDARD-INPUTS.