diff options
author | David Seifert <16636962+SoapGentoo@users.noreply.github.com> | 2019-09-09 01:48:57 +0200 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2019-09-08 19:48:57 -0400 |
commit | e19a49b8957cd06d6f121812b7b00ef60a57fc7c (patch) | |
tree | 22a6842d0f0c36ade922cc9d3574ef541c8eecf9 /mesonbuild/environment.py | |
parent | c9042fc3eeb0f4e76f5cc1716677aec39e1821b7 (diff) | |
download | meson-e19a49b8957cd06d6f121812b7b00ef60a57fc7c.zip meson-e19a49b8957cd06d6f121812b7b00ef60a57fc7c.tar.gz meson-e19a49b8957cd06d6f121812b7b00ef60a57fc7c.tar.bz2 |
Fix static archives stripping (#5905)
* Do not strip static archives
Stripping static archives without more fine-grained options (e.g. `-g`)
leads to failures such as
ld: libfoo.a: error adding symbols: archive has no index; run ranlib to add one
because GNU strip removes *every* symbol in a static archive by default.
Given that static archives are not final build artifacts (unlike
executables and shared libraries), stripping them gains little and only
causes more edge case failures.
* Gentoo's portage only strips debug information:
https://github.com/gentoo/portage/blob/86f211e3a552753eb945670a39c1a3b14c3c3bd1/bin/estrip#L322
* Fedora also only strips debug information:
https://github.com/rpm-software-management/rpm/blob/e9c13c6565cf4782d1f73255ee9144dd9bd2aca7/scripts/brp-strip-static-archive#L18
* Debian also only does some very light stripping:
https://github.com/Debian/debhelper/blob/72ed1d3261730d56da6afde0ec7f52f32976e04d/dh_strip#L374
Fixes #4138
* Add test case for static archive stripping
Diffstat (limited to 'mesonbuild/environment.py')
0 files changed, 0 insertions, 0 deletions