guix-play/guix/build-system
Jakub Kądziołka e0f31baacc
build-system/gnu: strip with --strip-unneeded [v2]
[Accidentally pushed patch v1, this commit contains the rest of the
changes. Revised commit message follows.]

Apart from debug information, one can also strip some symbols. This can
be a significant difference, the closure of gcc-toolchain@7 got reduced
by 15 MB in my tests.

As per [1], --strip-debug is included in --strip-unneeded, and
the debug files created also contain a copy of the information removed
by --strip-unneeded.

Linux From Scratch suggests that this option shouldn't be used on static
libraries [2], however other sources [3] indicate otherwise. Building a
toolchain with this patch succeeds, and the result works fine for
'gcc -static hello-world.c'.

[1]: https://stackoverflow.com/a/52555093
[2]: http://www.linuxfromscratch.org/lfs/view/9.1/chapter05/stripping.html
[3]: https://www.technovelty.org/linux/stripping-shared-libraries.html

* guix/build/gnu-build-system.scm (strip): Use --strip-unneeded.
* guix/build-system/gnu.scm (static-package, gnu-build, gnu-cross-build): Likewise.
2020-09-19 15:43:03 +02:00
..
android-ndk.scm gnu: android-make-stub: Update to 0.6.0. 2018-05-10 15:35:28 +02:00
ant.scm guix: java-utils: Add Maven-related phases. 2020-07-17 04:10:28 +02:00
asdf.scm build: asdf-build-system: Use SBCL source in CL packages. 2020-05-21 11:53:06 +02:00
cargo.scm cargo-build-system: Accept a #:features argument 2020-03-23 19:30:38 +01:00
clojure.scm build-system/clojure: Provide only the right modules in scope. 2020-01-08 23:21:14 +01:00
cmake.scm build-system: cmake: Add substitutable keyword. 2020-06-16 16:40:27 +03:00
copy.scm build-system: Fix copy-build-system default install plan. 2020-02-24 11:22:02 +01:00
dub.scm Adjust all users of (gnu packages ldc) to use (gnu packages dlang). 2018-09-10 15:44:32 -04:00
dune.scm guix: dune-build-system: Add a package parameter. 2019-03-23 22:58:52 +01:00
emacs.scm build-system/emacs: Allow usage of #:parallel-tests? key 2020-08-09 22:12:40 +02:00
font.scm gnu: Move contents of zip module into compression module. 2017-06-20 18:10:35 +05:30
glib-or-gtk.scm gnu: gcc: Switch back to using 'C_INCLUDE_PATH' instead of 'CPATH'. 2020-02-06 18:47:15 +01:00
gnu.scm build-system/gnu: strip with --strip-unneeded [v2] 2020-09-19 15:43:03 +02:00
go.scm build-system/go: Allow providing additional build flags 2020-04-08 12:24:42 +02:00
guile.scm build-system/guile: Expose #:scheme-file-regexp. 2020-05-18 15:37:23 +02:00
haskell.scm build-system/haskell: Add 'extra-directories' keyword. 2020-08-13 16:44:52 +02:00
julia.scm build-system/julia: Avoid module cycles. 2019-09-05 00:20:41 +02:00
linux-module.scm build-system: linux-module: Delete some huge items that we probably don't need. 2020-09-14 10:15:43 +02:00
maven.scm build-system/maven: Make default-maven-plugins a procedure. 2020-07-17 09:45:19 +01:00
meson.scm gnu: gcc: Switch back to using 'C_INCLUDE_PATH' instead of 'CPATH'. 2020-02-06 18:47:15 +01:00
minify.scm gnu: uglify-js: Move back next to sbcl-cl-uglify-js definition. 2020-01-03 15:03:36 +01:00
node.scm Revert "guix: node-build-system: Use guile-json instead of a custom parser." 2019-07-14 20:18:07 +02:00
ocaml.scm guix: ocaml: Also replace dune when relevant in package-with-explicit-ocaml. 2020-01-27 03:55:52 +01:00
perl.scm Move search path specifications to (guix search-paths). 2015-05-04 23:30:51 +02:00
python.scm import: pypi: Update the host URI. 2019-07-02 10:08:00 +09:00
qt.scm build-system: qt: Adjust indentation. 2019-12-23 15:48:21 +01:00
r.scm build-system/r: bioconductor-uri: Fix archive URL. 2020-06-30 00:18:27 +02:00
rakudo.scm build: Add rakudo-build-system. 2019-03-23 22:26:48 +02:00
ruby.scm build: ruby: Rewrite build system to use gem archives. 2015-08-18 17:58:13 -04:00
scons.scm gnu: Add nsis-x86_64 and nsis-i686. 2019-10-11 11:44:44 -04:00
texlive.scm build-system/texlive: Update to texlive-2019.3, revision 51265. 2020-01-14 00:18:09 +01:00
trivial.scm build-system/trivial: Add support for #:allowed-references. 2018-02-28 22:47:42 +01:00
waf.scm Move search path specifications to (guix search-paths). 2015-05-04 23:30:51 +02:00