Bug#864968: transition: libunistring
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.
Cheers,
Julien
Reply to: