On Thu, Dec 26, 2013 at 07:58:06PM -0800, Adam Williamson wrote:
On Thu, 2013-12-26 at 19:07 -0800, Adam Williamson wrote:
> On Thu, 2013-12-26 at 18:51 -0800, Adam Williamson wrote:
> > Time for another PSA...
> >
> > It appears libevdev 0.6 breaks the library's ABI without bumping the
> > soname (and without an announcement here or anywhere else I can find,
> > but an ABI change without an soname bump is just flat out wrong whether
> > announced or not). 0.6 was sent to Rawhide, F19 and F20 simultaneously.
> >
> > The ABI change breaks GNOME in F20 and Rawhide (because clutter was
> > using the calls that disappeared in the 0.6 build):
> >
> > undefined symbol: LIBEVDEV_READ_NORMAL (/lib/libclutter-1.0.so.0)
> > undefined symbol: LIBEVDEV_READ_SYNC (/lib/libclutter-1.0.so.0)
> >
> > Dec 26 02:02:34 pressanykey gnome-session[1320]: gnome-shell: symbol
> > lookup error: /lib64/libclutter-1.0.so.0: undefined symbol:
> > LIBEVDEV_READ_NORMAL
> >
> > Reported as
https://bugzilla.redhat.com/show_bug.cgi?id=1046426 .
> >
> > Rebuilding clutter is not trivial at present, and in fact builds of
> > clutter appear to fail on this same libevdev issue. So right now, GNOME
> > in Rawhide is broken if you install libevdev 0.6, and this monkey
> > doesn't feel comfortable trying to fix it (I don't want to start
> > randomly whacking things in clutter's code to try and make it build
> > against the new libevdev).
>
> Actually, Mamoru Tasaka handily identified the offending upstream commit
> in the bug report, so I'm sending a build of libevdev with the function
> removal reverted to Rawhide for now.
I've built (and *tested*...) a new libevdev that restores the
'deprecated' functions, along with a new clutter that stops using the
'deprecated' functions (hence fixing it from both ends). My Rawhide box
is running fine, so I've sent both builds out.
sorry for the delay, read that email sooner but didn't get to reply until
today.
first: thanks. reverting that commit is the right fix for libevdev's
package, and updating clutter obviously too. should've checked if anything
uses libevdev yet, I didn't realise that some packages already depended on
it.
fwiw, the ABI will change, it's been announced in 0.4 that this is going
away and deprecated accordingly. because we're pre 1.0, I didn't bother with
the soname bump yet. either way, I'll do it properly now.
Cheers,
Peter