config: Add -z pack-relative-relocs to LDFLAGS
-
config: Use one
-Wl
inLDFLAGS
per logical flag
This will separate logical flags with whitespace and make it easier to split the flags across multiple lines. -
config: Add
-z pack-relative-relocs
toLDFLAGS
This moves relative relocations from the.rela.dyn
section into a new.relr.dyn
section with a significantly more compact encoding, supported since glibc 2.36, GNU Binutils 2.38 and LLVM 15.This can reduce the size of libraries a lot, e.g. the installed size of
libphonenumber
dropped from about 17 MB to 7 MB.For more info, see rfcs!23 (merged).
Merge request reports
Activity
Interesting...looks promising! MaskRay also has a nice blog post
With my cautious hat on, other distros don't appear to have globally enabled this yet (most notably Fedora). Instincts tell me this could have some potential for breakage if enabled across the board. Some solid testing would be good e.g. rebuild a portion of the distro with this enabled, say [core] + GNOME + Plasma and see if anything breaks. But that's a lot of work and I'm not volunteering
Edit: MaskRay filed FS#72433 back in Oct '21.
Edited by ToolybirdThis should be amended in the RFC for our buildflags.
https://gitlab.archlinux.org/archlinux/rfcs/-/blob/master/rfcs/0003-buildflags.rst?ref_type=heads
added 4 commits
-
69e0e919...54796168 - 2 commits from branch
archlinux:master
- 99dc0997 - config: Use one -Wl in LDFLAGS per logical flag
- 56698ed0 - config: Add -z pack-relative-relocs to LDFLAGS
-
69e0e919...54796168 - 2 commits from branch
changed milestone to %v1.1.0
added scopeenhancement label
assigned to @anthraxx
added 20 commits
-
6a064844...9a356eae - 18 commits from branch
archlinux:master
- 1535a69a - chore(config): Use one -Wl in LDFLAGS per logical flag
- c356995d - feat(config): Add -z pack-relative-relocs to LDFLAGS
-
6a064844...9a356eae - 18 commits from branch
mentioned in merge request archlinux/packaging/packages/pacman!6 (merged)
mentioned in issue archlinux/packaging/packages/pacman#21