blob: bc56593e6a57a953b73d624985fe240db942043d [file] [log] [blame]
Patrick Williamsc124f4f2015-09-15 14:41:29 -05001From eddf04c7f8312e9c29cdb24e431b7e4fb2cc70ed Mon Sep 17 00:00:00 2001
2From: Yuanjie Huang <yuanjie.huang@windriver.com>
3Date: Wed, 15 Apr 2015 14:00:06 +0800
4Subject: [PATCH] Show GNU unique symbols as provided symbols
5
6Upstream-Status: Submitted
7
8GNU Unique symbol is a GNU extension employed by new version of GCC
9by default. Even Standard C++ library in GCC 4.9 provides some symbols,
10such as _ZNSs4_Rep20_S_empty_rep_storageE in this binding type instead
11of ELF standard weak binding.
12This patch adds support of this new binding type to mklibs-readelf.
13
14Signed-off-by: Yuanjie Huang <yuanjie.huang@windriver.com>
15---
16 src/mklibs-readelf/main.cpp | 2 +-
17 1 file changed, 1 insertion(+), 1 deletion(-)
18
19diff --git a/src/mklibs-readelf/main.cpp b/src/mklibs-readelf/main.cpp
20index 56d93f8..0134530 100644
21--- a/src/mklibs-readelf/main.cpp
22+++ b/src/mklibs-readelf/main.cpp
23@@ -88,7 +88,7 @@ static void process_symbols_provided (const Elf::section_type<Elf::section_type_
24 uint8_t type = symbol->get_type ();
25 const std::string &name = symbol->get_name_string ();
26
27- if (bind != STB_GLOBAL && bind != STB_WEAK)
28+ if (bind != STB_GLOBAL && bind != STB_WEAK && bind != STB_GNU_UNIQUE)
29 continue;
30 if (shndx == SHN_UNDEF || shndx == SHN_ABS)
31 continue;
32--
331.8.5.2.233.g932f7e4
34