Package: src:dbus-c++
Version: 0.9.0-7
Severity: serious
Tags: sid stretch
User: debian-...@lists.debian.org
Usertags: libstdc++-cxx11

dbus-c++ seems to have been omitted from doko's mass-bug-filing
for some reason, but it appears to have an ABI change, so here is
the necessary bug report.

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.

In the case of dbus-c++, it seems that std::string is part of the ABI.
<https://buildd.debian.org/status/package.php?p=libffado> says libffado
failed to build from source with:

support/dbus/controlclient.o: In function 
`DBusControl::ContinuousClient::ContinuousClient(DBus::Connection&, char 
const*, char const*)':
controlclient.cpp:(.text+0x88): undefined reference to 
`DBus::InterfaceProxy::InterfaceProxy(std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&)'
support/dbus/controlclient.o: In function 
`DBusControl::ContinuousClient::ContinuousClient(DBus::Connection&, char 
const*, char const*)':
controlclient.cpp:(.text+0x350): undefined reference to 
`DBus::InterfaceProxy::InterfaceProxy(std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&)'

I believe this means libdbus-c++-1-0 needs renaming to libdbus-c++-1-0v5,
because building with g++-5 gives it a new ABI.

In the upload that renames to libdbus-c++-1-0v5, do not close this bug.
Instead, reassign it to the release team as a transition tracker,
by sending an email to cont...@bugs.debian.org:

     user release.debian....@packages.debian.org
     usertag <this issue> + transition
     severity <this issue> normal
     block <this issue> by 790756
     reassign <this issue> release.debian.org

This one is a small transition: libffado and sflphone seem to be the
only things depending on libdbus-c++ binaries.

[1] https://wiki.debian.org/GCC5#libstdc.2B-.2B-_ABI_transition


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to