Your message dated Mon, 3 Aug 2015 17:18:22 -0300
with message-id
<caafdzj_luaezfovyjhe86fs_axztsqprw+z0iuspaavlakp...@mail.gmail.com>
and subject line Re: Bug#791080: jackd2: library transition may be needed when
GCC 5 is the default
has caused the Debian Bug report #791080,
regarding jackd2: library transition is needed when GCC 5 is the default
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
791080: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=791080
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: src:jackd2
Version: 1.9.10+20140719git3eb0ae6a~dfsg-2
Severity: important
Tags: sid stretch
User: [email protected]
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.
- 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
--- End Message ---
--- Begin Message ---
On 3 August 2015 at 15:04, Adrian Knoth <[email protected]> wrote:
> On 08/03/15 18:58, Felipe Sateler wrote:
>
>>>>> Control: tags -1 + confirmed patch
>>>>> Control: retitle -1 jackd2: library transition is needed when GCC 5 is
>>>>> the default
>>>>>
>>>>> needs build dependencies to transition first. patch at
>>>>>
>>>>> http://launchpadlibrarian.net/213139914/jackd2_1.9.10%2B20140719git3eb0ae6a~dfsg-2ubuntu1_1.9.10%2B20140719git3eb0ae6a~dfsg-2ubuntu2.diff.gz
>>>>
>>>>
>>>> This doesn't look correct to me. Jack1 and Jack2 are supposed to be
>>>> drop-in alternatives, and jack1 is a C API. So either the shlibs file
>>>> is wrong, or jack2 doesn't need transition.
>>>
>>>
>>> I didn't rename the package for the C API.
>>>
>>>> Matthias, how did you verify a transition was needed?
>>>
>>>
>>> see the new symbols at
>>>
>>> https://people.debian.org/~doko/logs/gcc5-20150701/jackd2_1.9.10+20140719git3eb0ae6a~dfsg-2_unstable_gcc5.log
>>>
>>> note, this was already mentioned in the original report.
>>
>>
>> I'm sorry if I was unclear. The *only* public API is supposed to be
>> the C one. Everything else is not in the published headers, and no
>> client should use that.
>>
>> Either my statement is wrong or the shlibs file is wrong.
>>
>> If I'm correct, then there is no need to do a transition, all users of
>> the C++ parts come from the same source and have strict dependencies.
>
>
> Felipe is right. Only the C API matters, and you can freely swap
> libjack0 (C) for libjack-jackd2-0 (C++) without recompiling anything.
>
> We even compile every package in Debian against the C lib. From my
> perspective, there's no need to transition jackd2.
>
Thanks Adrian for clarifying. I'm therefore closing this bug.
--
Saludos,
Felipe Sateler
--- End Message ---
_______________________________________________
pkg-multimedia-maintainers mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-multimedia-maintainers