Mailing List Archive

Unmasking of libxcb 1.4 and related libs in !2008.0 profiles
Hi all,

Just a quick heads up that I have just unmasked x11-libs/libxcb-1.4 and
its companion libraries in all profiles _except_ 2008.0.

As some of you have already found out, since 1.2, libxcb stopped
shipping a very specific library: libxcb-xlib.so. This library was only
ever meant to be used internally by libX11, but due to libtool's
infamous .la files, the removal of this library may cause some headaches
during the upgrade.

Here are a few steps to fix the breakage :

1) make sure that /usr/lib/libxcb-xlib.* are gone. Portage 2.2_rc* users
_should_ remove it as well.

2) run /usr/portage/x11-libs/libxcb/files/xcb-rebuilder.sh to fix .la
files. If the tool reports broken packages, please read on. If not,
lucky you, your system is ready to go :)

3) run the following one liner to rebuild a simple, yet effective,
subset of potentially broken packages. Do not worry, packages you don't
have installed will not be installed.

emerge --oneshot --nodeps \
$(for i in x11-proto/ x11-libs/libxcb x11-libs/libX11 x11-libs/libXext \
x11-libs/libX x11-libs/xcb-util x11-libs/cairo \
x11-libs/pango x11-libs/gtk+ gnome-base/libgnomeui \
x11-libs/qt-gui; do \
qlist -IC $i; \
done) -pv

4) use revdep-rebuild (from app-portage/gentoolkit) to finish fixing the
rest of your system.

I hope those instructions are clear enough. If not, please don't
hesitate to let me know.

Oh and if someone with sufficient guidexml skills could xmlify these
instructions, I would be very thankful :)

Thanks for reading this.

Rémi
Re: Unmasking of libxcb 1.4 and related libs in !2008.0 profiles [ In reply to ]
On Tue, Aug 18, 2009 at 9:52 AM, Rémi Cardona<remi@gentoo.org> wrote:
> Hi all,
>
> Just a quick heads up that I have just unmasked x11-libs/libxcb-1.4 and its
> companion libraries in all profiles _except_ 2008.0.

Hey Rémi,
Next time, mind running echangelog in the appropriate directory? It
help us look at a glance for what files are changed and rsync users
can't see commit messages.

Thanks,
Jeremy
Re: Unmasking of libxcb 1.4 and related libs in !2008.0 profiles [ In reply to ]
On Tue, Aug 18, 2009 at 10:37 AM, Jeremy Olexa<darkside@gentoo.org> wrote:
> On Tue, Aug 18, 2009 at 9:52 AM, Rémi Cardona<remi@gentoo.org> wrote:
>> Hi all,
>>
>> Just a quick heads up that I have just unmasked x11-libs/libxcb-1.4 and its
>> companion libraries in all profiles _except_ 2008.0.
>
> Hey Rémi,
> Next time, mind running echangelog in the appropriate directory? It
> help us look at a glance for what files are changed and rsync users
> can't see commit messages.
>
> Thanks,
> Jeremy
>

Oops, I need to recall this message. Sorry folks! =/
-Jeremy
Re: Unmasking of libxcb 1.4 and related libs in !2008.0 profiles [ In reply to ]
On Tue, Aug 18, 2009 at 5:38 PM, Jeremy Olexa<darkside@gentoo.org> wrote:
> On Tue, Aug 18, 2009 at 10:37 AM, Jeremy Olexa<darkside@gentoo.org> wrote:
>> On Tue, Aug 18, 2009 at 9:52 AM, Rémi Cardona<remi@gentoo.org> wrote:
>>> Hi all,
>>>
>>> Just a quick heads up that I have just unmasked x11-libs/libxcb-1.4 and its
>>> companion libraries in all profiles _except_ 2008.0.
>>
>> Hey Rémi,
>> Next time, mind running echangelog in the appropriate directory? It
>> help us look at a glance for what files are changed and rsync users
>> can't see commit messages.
>>
>> Thanks,
>> Jeremy
>>
>
> Oops, I need to recall this message. Sorry folks! =/
> -Jeremy
>

As a service to users, you might want to create an empty library:

touch foo.c
gcc -shared foo.c -o libxcb-x11.so.0.0.0

That's all

--
Paul de Vrieze
Researcher
Mail: paul.devrieze@gmail.com
Homepage: http://www.devrieze.net
Re: Unmasking of libxcb 1.4 and related libs in !2008.0 profiles [ In reply to ]
>> On Tue, Aug 18, 2009 at 9:52 AM, Rémi Cardona<remi@gentoo.org> wrote:
>> Hi all,
>>
>> Just a quick heads up that I have just unmasked x11-libs/libxcb-1.4 and its
>> companion libraries in all profiles _except_ 2008.0.
> As a service to users, you might want to create an empty library:
>
> touch foo.c
> gcc -shared foo.c -o libxcb-x11.so.0.0.0

One word: Hack.

Please don't. :-)
Re: Unmasking of libxcb 1.4 and related libs in !2008.0 profiles [ In reply to ]
Paul de Vrieze a écrit :
> As a service to users, you might want to create an empty library:
>
> touch foo.c
> gcc -shared foo.c -o libxcb-x11.so.0.0.0
>
> That's all

Like Samuli said, it's a hack and doing that would be wrong. I will not
trade short-term peace of mind for a long term hell for whoever will be
maintaining X after me.

Just like the expat soname change, we have to remove the band-aids at
some point, even if it hurts.

Rémi