From a0af371c25ac1f215cf0db64e54cbb9a1b51f78c Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Fri, 20 Feb 2015 15:23:28 +1030 Subject: [PATCH] Fix localplt test breakage with new readelf Since 2014-11-24 binutils git commit bb4d2ac2, readelf has appended the symbol version to symbols shown in reloc dumps. [BZ #16512] * scripts/localplt.awk: Strip off symbol version. * NEWS: Mention bug fix. --- ChangeLog | 6 ++++++ NEWS | 10 +++++----- scripts/localplt.awk | 4 ++-- 3 files changed, 13 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index d59e1db..d43c190 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2015-03-03 Alan Modra + + [BZ #16512] + * scripts/localplt.awk: Strip off symbol version. + * NEWS: Mention bug fix. + 2015-03-02 Roland McGrath * sysdeps/pthread/timer_routines.c diff --git a/NEWS b/NEWS index c1193fd..a32e421 100644 --- a/NEWS +++ b/NEWS @@ -9,11 +9,11 @@ Version 2.22 * The following bugs are resolved with this release: - 4719, 14841, 13064, 14094, 15319, 15467, 15790, 15969, 16351, 16560, - 16783, 17269, 17523, 17569, 17588, 17711, 17779, 17792, 17836, 17912, - 17916, 17932, 17944, 17949, 17964, 17965, 17967, 17969, 17978, 17987, - 17991, 17996, 17998, 17999, 18019, 18020, 18029, 18030, 18032, 18036, - 18038, 18039, 18046, 18047. + 4719, 13064, 14094, 14841, 15319, 15467, 15790, 15969, 16351, 16512, + 16560, 16783, 17269, 17523, 17569, 17588, 17711, 17779, 17792, 17836, + 17912, 17916, 17932, 17944, 17949, 17964, 17965, 17967, 17969, 17978, + 17987, 17991, 17996, 17998, 17999, 18019, 18020, 18029, 18030, 18032, + 18036, 18038, 18039, 18046, 18047. * Character encoding and ctype tables were updated to Unicode 7.0.0, using new generator scripts contributed by Pravin Satpute and Mike FABIAN (Red diff --git a/scripts/localplt.awk b/scripts/localplt.awk index f55c41a..84c94d1 100644 --- a/scripts/localplt.awk +++ b/scripts/localplt.awk @@ -35,11 +35,11 @@ in_relocs && relocs_offset == jmprel_offset && NF >= 5 { # Relocations against GNU_IFUNC symbols are not shown as an hexadecimal # value, but rather as the resolver symbol followed by (). if ($4 ~ /\(\)/) { - print whatfile, $5 + print whatfile, gensub(/@.*/, "", "g", $5) } else { symval = strtonum("0x" $4); if (symval != 0) - print whatfile, $5 + print whatfile, gensub(/@.*/, "", "g", $5) } } -- 2.7.4