summaryrefslogtreecommitdiff
path: root/guix/build-system
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2013-02-14 00:14:29 +0100
committerLudovic Courtès <ludo@gnu.org>2013-02-14 01:12:24 +0100
commit9011e97f8df093795bb746ad5d1d50fc1c3f61ca (patch)
tree992760ad82b9eee6dbad585f10d43bd53aa8b56a /guix/build-system
parente3b2cf4c7a28807a7225a80eda47dc5f5f7efa70 (diff)
build-system/gnu: Make the strip behavior of `static-package' configurable.
* guix/build-system/gnu.scm (static-package): Add #:strip-all? keyword parameter.
Diffstat (limited to 'guix/build-system')
-rw-r--r--guix/build-system/gnu.scm14
1 files changed, 9 insertions, 5 deletions
diff --git a/guix/build-system/gnu.scm b/guix/build-system/gnu.scm
index 82f5bb8490..5be4782c2f 100644
--- a/guix/build-system/gnu.scm
+++ b/guix/build-system/gnu.scm
@@ -111,20 +111,24 @@ 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."
+(define* (static-package p #:optional (loc (current-source-location))
+ #:key (strip-all? #t))
+ "Return a statically-linked version of package P. If STRIP-ALL? is true,
+use `--strip-all' as the arguments to `strip'."
(let ((args (package-arguments p)))
(package (inherit p)
(location (source-properties->location loc))
(arguments
(let ((a (default-keyword-arguments args
'(#:configure-flags '()
- #:strip-flags #f))))
+ #:strip-flags '("--strip-debug")))))
(substitute-keyword-arguments a
((#:configure-flags flags)
`(cons* "--disable-shared" "LDFLAGS=-static" ,flags))
- ((#:strip-flags _)
- ''("--strip-all"))))))))
+ ((#:strip-flags flags)
+ (if strip-all?
+ ''("--strip-all")
+ flags))))))))
(define %store