Package: src:uhd
Version: 3.8.5-1
Severity: serious
Tags: sid stretch confirmed patch
User: [email protected]
Usertags: libstdc++-cxx11
confirmed,
$ objdump -T /usr/lib/x86_64-linux-gnu/libuhd.so.003|grep cxx11|wc -l
225
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.
- If there are no symbols matching __cxx11 or B5cxx11 in the symbols
forming the library API, you should close this issue with a short
explanation.
- If there are no reverse dependencies, it should be the package
maintainers decision if a transition is needed. However this might
break software which is not in the Debian archive, and built
against these packages.
- If a library transition is needed, please prepare for the change.
Rename the library package, append "v5" to the name of the package
(e.g. libfoo2 -> libfoo2v5). Such a change can be avoided, if you
have a soversion bump and you upload this version instead of the
renamed package. Prepare a patch and attach it to this issue (mark
this issue with patch), so that it is possible to NMU such a
package. We'll probably have more than hundred transitions
triggered. Then reassign the issue to release.debian.org and
properly tag it as a transition issue, by sending an email to
[email protected]:
user [email protected]
usertag <this issue> + transition
block <this issue> by 790756
reassign <this issue> release.debian.org
- If unsure if a transition is needed, please tag the issue with help
to ask for feedback from other Debian developers.
The libstdc++6 transition will be a large one, and it will come with a
lot of pain. Please help it by preparing the follow-up transitions.
[1] https://wiki.debian.org/GCC5#libstdc.2B-.2B-_ABI_transition
diff -Nru uhd-3.8.5/debian/changelog uhd-3.8.5/debian/changelog
--- uhd-3.8.5/debian/changelog 2015-08-05 22:09:15.000000000 +0200
+++ uhd-3.8.5/debian/changelog 2015-08-07 16:15:26.000000000 +0200
@@ -1,3 +1,10 @@
+uhd (3.8.5-1ubuntu1) wily; urgency=medium
+
+ * Merge with Debian; remaining changes:
+ - Rename library packages for g++5 ABI transition.
+
+ -- Matthias Klose <[email protected]> Fri, 07 Aug 2015 16:14:34 +0200
+
uhd (3.8.5-1) unstable; urgency=medium
* New upstream release
@@ -20,6 +27,12 @@
-- A. Maitland Bottoms <[email protected]> Wed, 05 Aug 2015 00:41:49 -0400
+uhd (3.7.3-1ubuntu1) wily; urgency=medium
+
+ * Rename library packages for g++5 ABI transition.
+
+ -- Steve Langasek <[email protected]> Wed, 05 Aug 2015 20:07:26 +0000
+
uhd (3.7.3-1) unstable; urgency=low
* New upstream release
diff -Nru uhd-3.8.5/debian/control uhd-3.8.5/debian/control
--- uhd-3.8.5/debian/control 2015-08-05 21:54:04.000000000 +0200
+++ uhd-3.8.5/debian/control 2015-08-07 16:16:57.000000000 +0200
@@ -1,7 +1,8 @@
Source: uhd
Section: science
Priority: optional
-Maintainer: A. Maitland Bottoms <[email protected]>
+Maintainer: Ubuntu Developers <[email protected]>
+XSBC-Original-Maintainer: A. Maitland Bottoms <[email protected]>
Build-Depends: debhelper (>= 9), cmake (>= 2.8.4+dfsg.1-3),
python-dev, python-cheetah, python-docutils, doxygen, dh-acc,
libusb-1.0-0-dev [linux-any], libusb2-dev [kfreebsd-any], liborc-0.4-dev,
@@ -22,7 +23,7 @@
Package: uhd-host
Architecture: any
-Depends: libuhd003, python, adduser, ${shlibs:Depends}, ${misc:Depends}
+Depends: libuhd003v5, python, adduser, ${shlibs:Depends}, ${misc:Depends}
Recommends: python-tk, curl, procps
Suggests: gnuradio
Description: universal hardware driver for Ettus Research products
@@ -37,12 +38,13 @@
display hardware configuration information and Doxygen generated
documentation.
-Package: libuhd003
+Package: libuhd003v5
Architecture: any
Section: libs
Pre-Depends: multiarch-support, ${misc:Pre-Depends}
Depends: ${shlibs:Depends}, ${misc:Depends}
-Conflicts: gnuradio (<<3.7.6.1)
+Conflicts: gnuradio (<<3.7.6.1), libuhd003
+Replaces: libuhd003
Suggests: gnuradio
Multi-Arch: same
Description: universal hardware driver for Ettus Research products
@@ -55,7 +57,7 @@
Package: libuhd-dev
Architecture: any
Section: libdevel
-Depends: libuhd003 (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends}
+Depends: libuhd003v5 (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends}
Recommends: gnuradio
Description: universal hardware driver for Ettus Research products
Host library for the Universal Hardware Driver for Ettus Research products.
diff -Nru uhd-3.8.5/debian/libuhd003.install uhd-3.8.5/debian/libuhd003.install
--- uhd-3.8.5/debian/libuhd003.install 2012-01-11 19:13:22.000000000 +0100
+++ uhd-3.8.5/debian/libuhd003.install 1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-usr/lib/*/*.so.*
diff -Nru uhd-3.8.5/debian/libuhd003.shlibs uhd-3.8.5/debian/libuhd003.shlibs
--- uhd-3.8.5/debian/libuhd003.shlibs 2012-01-10 22:08:20.000000000 +0100
+++ uhd-3.8.5/debian/libuhd003.shlibs 1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-libuhd 003 libuhd003
diff -Nru uhd-3.8.5/debian/libuhd003v5.install
uhd-3.8.5/debian/libuhd003v5.install
--- uhd-3.8.5/debian/libuhd003v5.install 1970-01-01 01:00:00.000000000
+0100
+++ uhd-3.8.5/debian/libuhd003v5.install 2015-08-07 16:17:21.000000000
+0200
@@ -0,0 +1 @@
+usr/lib/*/*.so.*
diff -Nru uhd-3.8.5/debian/libuhd003v5.lintian-overrides
uhd-3.8.5/debian/libuhd003v5.lintian-overrides
--- uhd-3.8.5/debian/libuhd003v5.lintian-overrides 1970-01-01
01:00:00.000000000 +0100
+++ uhd-3.8.5/debian/libuhd003v5.lintian-overrides 2015-08-07
16:17:21.000000000 +0200
@@ -0,0 +1,2 @@
+# G++5 ABI transition
+libuhd003v5: package-name-doesnt-match-sonames libuhd003
diff -Nru uhd-3.8.5/debian/libuhd003v5.shlibs
uhd-3.8.5/debian/libuhd003v5.shlibs
--- uhd-3.8.5/debian/libuhd003v5.shlibs 1970-01-01 01:00:00.000000000 +0100
+++ uhd-3.8.5/debian/libuhd003v5.shlibs 2015-08-07 16:17:21.000000000 +0200
@@ -0,0 +1 @@
+libuhd 003 libuhd003v5