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

Bug#864968: transition: libunistring



On 22/06/17 18:23, Julien Cristau wrote:
> On 06/18/2017 11:11 AM, Andreas Metzler wrote:
>> On 2017-06-18 Jörg Frings-Fürst <debian@jff-webhosting.net> wrote:
>>> Package: release.debian.org
>>> Severity: normal
>>> User: release.debian.org@packages.debian.org
>>> Usertags: transition
>>
>>> Hello,
>>
>>> I'd want to upload libunistring 0.9.7 to unstable. The ABI is bumped.
>> [...]
>>
>> Hello,
>>
>> Point of information: Afaict from the changelog the only
>> reason for the soname bump in 0.9.4 is this one:
>> -----------------------------------------
>> diff -NurbBp xxx-libunistring-dev_0.9.6+really0.9.3-0.1/usr/include/unistr.h xxx-libunistring-dev_0.9.7-1/usr/include/unistr.h
>> --- xxx-libunistring-dev_0.9.6+really0.9.3-0.1/usr/include/unistr.h	2016-05-27 12:54:58.000000000 +0200
>> +++ xxx-libunistring-dev_0.9.7-1/usr/include/unistr.h	2017-06-10 12:18:01.000000000 +0200
>> @@ -562,12 +595,23 @@ extern uint32_t *
>>  
>>  /* Compare S1 and S2.  */
>>  /* Similar to strcmp(), wcscmp().  */
>> +#ifdef __sun
>> +/* Avoid a collision with the u8_strcmp() function in Solaris 11 libc.  */
>> +extern int
>> +       u8_strcmp_gnu (const uint8_t *s1, const uint8_t *s2)
>> +       _UC_ATTRIBUTE_PURE;
>> +# define u8_strcmp u8_strcmp_gnu
>> +#else
>>  extern int
>> -       u8_strcmp (const uint8_t *s1, const uint8_t *s2);
>> +       u8_strcmp (const uint8_t *s1, const uint8_t *s2)
>> +       _UC_ATTRIBUTE_PURE;
>> +#endif
>> -----------------------------------------
>> i.e. it is specific to __sun. So afaict this transition should go
>> smoothly without breakage of programs linking against both version of
>> libunistring although libunistring does not use versioned symbols.
>>
> In that case, please do *not* change the package name.  Just ship
> libunistring.so.2 in the libunistring0 package, with a libunistring.so.0
> symlink, and a shlibs/symbols bump.  And then you don't need any
> transition or rebuild of reverse dependencies.

The package name is already changed in experimental. I'm not sure the work and
confusion of keeping the old package name is worth it given the low number of
rdeps and the fact that they should rebuild just fine.

Cheers,
Emilio


Reply to: