summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2014-12-27 19:20:18 +0100
committerLudovic Courtès <ludo@gnu.org>2014-12-27 19:20:18 +0100
commit856ae5e6c71a1283a414d33e638051f95d3cce35 (patch)
treec60e443f50b50be2fb8bbb4e5768ace140c9d217
parent9a224ac2e37482cb69c2803648bf3c66fbc6eee9 (diff)
downloadguix-856ae5e6c71a1283a414d33e638051f95d3cce35.tar.gz
build-system/gnu: Strip with '--strip-all' instead of '--strip-debug'.
This saves 19% on the 'bin' directory of Coreutils, and certainly
helpful for things like Git's 'libexec' directory.

* guix/build-system/gnu.scm (gnu-build): Change default value for
  #:strip-flags to '("--strip-all").
* guix/build/gnu-build-system.scm (strip): Ditto.
* gnu/packages/linux.scm (linux-libre)[arguments]: Add #:strip-flags.
-rw-r--r--gnu/packages/linux.scm5
-rw-r--r--guix/build-system/gnu.scm2
-rw-r--r--guix/build/gnu-build-system.scm2
3 files changed, 7 insertions, 2 deletions
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 9dc5f5cd40..53368251b5 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -292,6 +292,11 @@ for SYSTEM, or #f if there is no configuration for SYSTEM."
                  (alist-replace
                   'install ,install-phase
                   (alist-delete 'configure %standard-phases)))
+
+       ;; Use '--strip-debug', not '--strip-all', because the latter leads to
+       ;; unloadable modules (due to the lack of a symbol table.)
+       #:strip-flags '("--strip-debug")
+
        #:tests? #f))
     (synopsis "100% free redistribution of a cleaned Linux kernel")
     (description
diff --git a/guix/build-system/gnu.scm b/guix/build-system/gnu.scm
index c675155a6a..f765a144c4 100644
--- a/guix/build-system/gnu.scm
+++ b/guix/build-system/gnu.scm
@@ -274,7 +274,7 @@ standard packages used as implicit inputs of the GNU build system."
                     (parallel-tests? #t)
                     (patch-shebangs? #t)
                     (strip-binaries? #t)
-                    (strip-flags ''("--strip-debug"))
+                    (strip-flags ''("--strip-all"))
                     (strip-directories ''("lib" "lib64" "libexec"
                                           "bin" "sbin"))
                     (phases '%standard-phases)
diff --git a/guix/build/gnu-build-system.scm b/guix/build/gnu-build-system.scm
index 4cc755f3a6..d661736831 100644
--- a/guix/build/gnu-build-system.scm
+++ b/guix/build/gnu-build-system.scm
@@ -295,7 +295,7 @@ makefiles."
                 (objcopy-command (if target
                                      (string-append target "-objcopy")
                                      "objcopy"))
-                (strip-flags '("--strip-debug"))
+                (strip-flags '("--strip-all"))
                 (strip-directories '("lib" "lib64" "libexec"
                                      "bin" "sbin"))
                 #:allow-other-keys)