Skip to content

Commit eab2d31

Browse files
committed
Use --strip-unneeded when stripping static libraries with GNU strip.
We've long used "--strip-unneeded" for shared libraries but plain "-x" for static libraries when stripping symbols with GNU strip. There doesn't seem to be any really good reason for that though, since --strip-unneeded produces smaller output (as "-x" alone does not remove debug symbols). Moreover it seems that llvm-strip, although it identifies as GNU strip, misbehaves when given "-x" for this purpose. It's unclear whether that's intentional or a bug in llvm-strip, but in any case it seems like changing to use --strip-unneeded in all cases should be a win. Note that this doesn't change our behavior when dealing with non-GNU strip. Per gripes from Ed Maste and Palle Girgensohn. Back-patch, in case anyone wants to use llvm-strip with stable branches. Discussion: https://postgr.es/m/17898-5308d09543463266@postgresql.org Discussion: https://postgr.es/m/20230420153338.bbj2g5jiyy3afhjz@awork3.anarazel.de
1 parent a9781ae commit eab2d31

File tree

3 files changed

+3
-3
lines changed

3 files changed

+3
-3
lines changed

config/programs.m4

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -307,7 +307,7 @@ AC_DEFUN([PGAC_CHECK_STRIP],
307307
308308
AC_MSG_CHECKING([whether it is possible to strip libraries])
309309
if test x"$STRIP" != x"" && "$STRIP" -V 2>&1 | grep "GNU strip" >/dev/null; then
310-
STRIP_STATIC_LIB="$STRIP -x"
310+
STRIP_STATIC_LIB="$STRIP --strip-unneeded"
311311
STRIP_SHARED_LIB="$STRIP --strip-unneeded"
312312
AC_MSG_RESULT(yes)
313313
else

configure

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9712,7 +9712,7 @@ fi
97129712
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether it is possible to strip libraries" >&5
97139713
$as_echo_n "checking whether it is possible to strip libraries... " >&6; }
97149714
if test x"$STRIP" != x"" && "$STRIP" -V 2>&1 | grep "GNU strip" >/dev/null; then
9715-
STRIP_STATIC_LIB="$STRIP -x"
9715+
STRIP_STATIC_LIB="$STRIP --strip-unneeded"
97169716
STRIP_SHARED_LIB="$STRIP --strip-unneeded"
97179717
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
97189718
$as_echo "yes" >&6; }

src/makefiles/meson.build

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ if strip_bin.found()
1616
strip_version.stdout().contains('GNU strip') or
1717
strip_version.stderr().contains('GNU strip'))
1818
working_strip = true
19-
strip_static_cmd = strip_cmd + ['-x']
19+
strip_static_cmd = strip_cmd + ['--strip-unneeded']
2020
strip_shared_cmd = strip_cmd + ['--strip-unneeded']
2121
elif host_system == 'darwin'
2222
working_strip = true

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy