From 51bba7af4c8fb0333cc64c24941ad1dfb784d0dd Mon Sep 17 00:00:00 2001 From: Florian Weimer Date: Wed, 14 Sep 2022 13:58:30 +0200 Subject: [PATCH] Remove .annobin* symbols from ld.so (#2126477) --- glibc.spec | 5 ++++- wrap-find-debuginfo.sh | 4 ++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/glibc.spec b/glibc.spec index 843e4c4..7155eaf 100644 --- a/glibc.spec +++ b/glibc.spec @@ -159,7 +159,7 @@ Version: %{glibcversion} # - It allows using the Release number without the %%dist tag in the dependency # generator to make the generated requires interchangeable between Rawhide # and ELN (.elnYY < .fcXX). -%global baserelease 4 +%global baserelease 5 Release: %{baserelease}%{?dist} # In general, GPLv2+ is used by programs, LGPLv2+ is used for @@ -2185,6 +2185,9 @@ update_gconv_modules_cache () %files -f compat-libpthread-nonshared.filelist -n compat-libpthread-nonshared %changelog +* Fri Sep 23 2022 Florian Weimer - 2.36-5 +- Remove .annobin* symbols from ld.so (#2126477) + * Wed Sep 14 2022 Florian Weimer - 2.36-4 - Auto-sync with upstream branch release/2.36/master, commit df51334828f2af214105aad82042140ee3a6de0a: diff --git a/wrap-find-debuginfo.sh b/wrap-find-debuginfo.sh index 6b9a835..42b3609 100644 --- a/wrap-find-debuginfo.sh +++ b/wrap-find-debuginfo.sh @@ -135,6 +135,10 @@ while true ; do done debug_base_name=${last_arg:-$RPM_BUILD_ROOT} $debugedit -b "$debug_base_name" -d "$debug_dest_name" -n $ldso_path +# Remove the .annobin* symbols (and only them). +nm --format=just-symbols "$ldso_path" \ + | grep '^\.annobin' > "$ldso_tmp.annobin-symbols" +objcopy --strip-symbols="$ldso_tmp.annobin-symbols" "$ldso_path" # Apply single-file DWARF optimization. dwz $ldso_path