build-system/gnu: strip with --strip-unneeded
Apart from debug information, one can also strip some symbols. This can be a significant difference, qtbase:out consists of about 5 MB of those symbols. 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.master
parent
d7f776888b
commit
f32a6055a5
|
@ -425,7 +425,7 @@ makefiles."
|
|||
(objcopy-command (if target
|
||||
(string-append target "-objcopy")
|
||||
"objcopy"))
|
||||
(strip-flags '("--strip-debug"
|
||||
(strip-flags '("--strip-unneeded"
|
||||
"--enable-deterministic-archives"))
|
||||
(strip-directories '("lib" "lib64" "libexec"
|
||||
"bin" "sbin"))
|
||||
|
|
Reference in New Issue