Package: mklibs Version: 0.1.40 Severity: important Tags: patch Dear Maintainer,
* What led up to the situation? GNU unique symbol bind type is introduced, and enabled by GCC 4.9 to address some certain binding problems. The Standard C++ library from GCC as a result, uses this binding type for some of the symbols. However, mklibs-readelf does not treat any symbol other than STB_WEAK or STB_GLOBAL as provided by library. The issue randers some symbols false 'unresolvable' when trying to generate minimal library set. * What exactly did you do (or not do) that was effective (or ineffective)? mklibs-readelf --print-symbols-provided /usr/lib/x86_64-linux-gnu/libstdc++.so.6 \ | grep empty_rep_storage * What was the outcome of this action? Nothing, so the symbol is `not provided'. * What outcome did you expect instead? _ZNSs4_Rep20_S_empty_rep_storageE False GLIBCXX_3.4 True _ZNSbIwSt11char_traitsIwESaIwEE4_Rep20_S_empty_rep_storageE False GLIBCXX_3.4 True -- System Information: Debian Release: 8.0 APT prefers unstable APT policy: (500, 'unstable'), (1, 'experimental') Architecture: amd64 (x86_64) Kernel: Linux 3.19.2-1-ARCH (SMP w/8 CPU cores; PREEMPT) Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968) Shell: /bin/sh linked to /bin/dash Init: unable to detect Versions of packages mklibs depends on: ii binutils 2.25-6 ii dpkg-dev 1.17.25 ii gcc 4:4.9.2-2 ii mklibs-copy 0.1.40 ii python 2.7.9-1 Versions of packages mklibs recommends: ii libc6-pic 2.19-18 mklibs suggests no packages. -- no debconf information >From eddf04c7f8312e9c29cdb24e431b7e4fb2cc70ed Mon Sep 17 00:00:00 2001 From: Yuanjie Huang <yuanjie.hu...@windriver.com> Date: Wed, 15 Apr 2015 14:00:06 +0800 Subject: [PATCH] Show GNU unique symbols as provided symbols GNU Unique symbol is a GNU extension employed by new version of GCC by default. Even Standard C++ library in GCC 4.9 provides some symbols, such as _ZNSs4_Rep20_S_empty_rep_storageE in this binding type instead of ELF standard weak binding. This patch adds support of this new binding type to mklibs-readelf. Signed-off-by: Yuanjie Huang <yuanjie.hu...@windriver.com> --- src/mklibs-readelf/main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mklibs-readelf/main.cpp b/src/mklibs-readelf/main.cpp index 56d93f8..0134530 100644 --- a/src/mklibs-readelf/main.cpp +++ b/src/mklibs-readelf/main.cpp @@ -88,7 +88,7 @@ static void process_symbols_provided (const Elf::section_type<Elf::section_type_ uint8_t type = symbol->get_type (); const std::string &name = symbol->get_name_string (); - if (bind != STB_GLOBAL && bind != STB_WEAK) + if (bind != STB_GLOBAL && bind != STB_WEAK && bind != STB_GNU_UNIQUE) continue; if (shndx == SHN_UNDEF || shndx == SHN_ABS) continue; -- 1.8.5.2.233.g932f7e4 -- To UNSUBSCRIBE, email to debian-boot-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/20150421091307.2089.39369.reportbug@9465ff6b3d0d