[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#791052: gmetadom: library transition may be needed when GCC 5 is the default



Control: tag -1 confirmed
Control: severity -1 serious

On Fri, Jul  3, 2015 at 13:10:11 +0000, Matthias Klose wrote:

> Package: src:gmetadom
> Version: 0.2.6-6.1
> Severity: important
> Tags: sid stretch
> User: debian-gcc@lists.debian.org
> Usertags: libstdc++-cxx11
> 
> Background [1]: libstdc++6 introduces a new ABI to conform to the
> C++11 standard, but keeps the old ABI to not break existing binaries.
> Packages which are built with g++-5 from experimental (not the one
> from testing/unstable) are using the new ABI.  Libraries built from
> this source package export some of the new __cxx11 or B5cxx11 symbols,
> and dropping other symbols.  If these symbols are part of the API of
> the library, then this rebuild with g++-5 will trigger a transition
> for the library.
> 
> What is needed:
> 
>  - Rebuild the library using g++/g++-5 from experimental. Note that
>    most likely all C++ libraries within the build dependencies need
>    a rebuild too. You can find the log for a rebuild in
>      https://people.debian.org/~doko/logs/gcc5-20150701/
>    Search for "BEGIN GCC CXX11" in the log.
> 
>  - Decide if the symbols matching __cxx11 or B5cxx11 are part of the
>    library API, and are used by the reverse dependencies of the
>    library.
> 
--- old-syms    2015-08-06 21:23:48.902677034 +0200
+++ new-syms    2015-08-06 21:28:09.072456029 +0200
@@ -23,17 +23,17 @@
 _ZN13GdomeSmartDOM11GdomeStringaSERKS0_
 _ZN13GdomeSmartDOM11GdomeStringC1EP15_GdomeDOMString
 _ZN13GdomeSmartDOM11GdomeStringC1EPKc
+_ZN13GdomeSmartDOM11GdomeStringC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
+_ZN13GdomeSmartDOM11GdomeStringC1ERKNSt7__cxx1112basic_stringItSt11char_traitsItESaItEEE
+_ZN13GdomeSmartDOM11GdomeStringC1ERKNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEE
 _ZN13GdomeSmartDOM11GdomeStringC1ERKS0_
-_ZN13GdomeSmartDOM11GdomeStringC1ERKSbItSt11char_traitsItESaItEE
-_ZN13GdomeSmartDOM11GdomeStringC1ERKSbIwSt11char_traitsIwESaIwEE
-_ZN13GdomeSmartDOM11GdomeStringC1ERKSs
 _ZN13GdomeSmartDOM11GdomeStringC1Ev
 _ZN13GdomeSmartDOM11GdomeStringC2EP15_GdomeDOMString
 _ZN13GdomeSmartDOM11GdomeStringC2EPKc
+_ZN13GdomeSmartDOM11GdomeStringC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
+_ZN13GdomeSmartDOM11GdomeStringC2ERKNSt7__cxx1112basic_stringItSt11char_traitsItESaItEEE
+_ZN13GdomeSmartDOM11GdomeStringC2ERKNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEE
 _ZN13GdomeSmartDOM11GdomeStringC2ERKS0_
-_ZN13GdomeSmartDOM11GdomeStringC2ERKSbItSt11char_traitsItESaItEE
-_ZN13GdomeSmartDOM11GdomeStringC2ERKSbIwSt11char_traitsIwESaIwEE
-_ZN13GdomeSmartDOM11GdomeStringC2ERKSs
 _ZN13GdomeSmartDOM11GdomeStringC2Ev
 _ZN13GdomeSmartDOM11GdomeStringD1Ev
 _ZN13GdomeSmartDOM11GdomeStringD2Ev
@@ -236,9 +236,9 @@
 _ZNK13GdomeSmartDOM11GdomeString5emptyEv
 _ZNK13GdomeSmartDOM11GdomeString6lengthEv
 _ZNK13GdomeSmartDOM11GdomeString9gdome_strEv
-_ZNK13GdomeSmartDOM11GdomeStringcvSbItSt11char_traitsItESaItEEEv
-_ZNK13GdomeSmartDOM11GdomeStringcvSbIwSt11char_traitsIwESaIwEEEv
-_ZNK13GdomeSmartDOM11GdomeStringcvSsEv
+_ZNK13GdomeSmartDOM11GdomeStringcvNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEB5cxx11Ev
+_ZNK13GdomeSmartDOM11GdomeStringcvNSt7__cxx1112basic_stringItSt11char_traitsItESaItEEEB5cxx11Ev
+_ZNK13GdomeSmartDOM11GdomeStringcvNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEEB5cxx11Ev
 _ZNK13GdomeSmartDOM11GdomeStringeqERKS0_
 _ZNK13GdomeSmartDOM11GdomeStringplERKS0_
 _ZNK13GdomeSmartDOM12DocumentType12get_entitiesEv
@@ -359,7 +359,7 @@
 _ZNK13GdomeSmartDOM8NodeList4itemEm
 _ZNK13GdomeSmartDOM8Notation12get_publicIdEv
 _ZNK13GdomeSmartDOM8Notation12get_systemIdEv
-_ZNSbItSt11char_traitsItESaItEE4_Rep20_S_empty_rep_storageE
+_ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE12_M_constructIPKwEEvT_S8_St20forward_iterator_tag
 _ZTIN13GdomeSmartDOM11GdomeString10NullStringE
 _ZTIN13GdomeSmartDOM12DOMExceptionE
 _ZTSN13GdomeSmartDOM11GdomeString10NullStringE

Some of those methods are part of the public API, so a package rename is
needed.

Cheers,
Julien

Attachment: signature.asc
Description: Digital signature


Reply to: