[BUG] broken build: build.sh / libevdev

Peter Hutterer peter.hutterer at who-t.net
Mon Oct 7 22:02:10 PDT 2013


On Mon, Oct 07, 2013 at 09:52:50PM -0400, Gaetan Nadon wrote:
> On 13-10-07 08:38 PM, Peter Hutterer wrote:
> > On Mon, Oct 07, 2013 at 05:12:26PM -0400, Gaetan Nadon wrote:
> >> On 13-10-07 12:13 PM, Knut Petersen wrote:
> >>> On 07.10.2013 17:52, Alan Coopersmith wrote:
> >>>> On 10/ 7/13 05:44 AM, Knut Petersen wrote:
> >>>>> As libevdev is required now for building xorg,
> >>>>> it should also be supported via "build.sh -L".
> >>>> Perhaps - but build.sh doesn't build libc, a kernel with DRM support,
> >>>> and all the other requirements we expect to be there before building
> >>>> Xorg modules.
> >>>>
> >>> I erroneously assumed that libevdev is part of xorg.
> >> The wiki page http://www.x.org/wiki/ModularDevelopersGuide/#index2h2
> >> documents the dependencies (projects such as Mesa and libraries such as
> >> libcrypto) required to build all 200+ modules in the xorg project.
> >>
> >> Peter,
> >>
> >> Is the long term plan for libevdev to become an additional dependencies
> >> for the X.Org project? That is not a precedent, we already have mesa,
> >> pixman and xkeyboard-config as non-xorg dependencies we build. I can add
> >> it to build.sh. If in a few years it become ubiquitous, it can be
> >> removed. I can also update the above wiki page as well.
> >>
> > libevdev will be a dependency for synaptics, evdev, and possibly the server.
> > it's not an X.Org project though, just an external library. it's handled by
> > the release.sh script because I'm lazy and don't want to copy that script
> > but that's as close as it'll get.  like libunwind it's just a library we
> > depend on and we don't need to add this to the build scripts.
> >
> > having said that, if you want to add it like mesa/pixman/etc. to the build
> > script I'm not going to stop you :)
> Ok, I'll do that. we don't have much of a choice as it is very recent
> and not available through distros.
> 
> I can't get libevdev to build:
> 
>     In file included from libevdev.c:32:0:
>     libevdev-int.h:96:30: error: 'ABS_MT_TOOL_Y' undeclared here (not in
>     a function)
> 
>     libevdev.c: In function 'libevdev_set_clock_id':
>     libevdev.c:1435:24: error: 'EVIOCSCLOCKID' undeclared (first use in
>     this function)
> 
> Looks like that belong to multitouch porotocol in uapi input.h, probably
> at a later kernel than I have. Mine is 3.2.0-54. I don't recall having
> seen specific kernel requirement in any xorg modules.
> 
> I am guessing right here?
> 

Yeah, that needs fixing in libevdev and I just did so, patches are on
input-tools at lists.freedesktop.org. Note that because libevdev is a wrapper
around a kernel API there will be kernels that aren't supported. It's mostly
a question of how far back we want/need to go but at least for these two
a backport is straightforward.

Cheers,
   Peter

> 
> >
> >> There is a similar issue with libmtdev, so I might document this one as
> >> well. It seems to be more available on distros.
> > we've relied on mtdev for quite some time now. any distro that still doesn't
> > provide mtdev but still wants to ship the latest packages needs to sort that
> > out themselves.
> >
> > Cheers,
> >    Peter
> >
> >> All,
> >>
> >> README excerpt
> >>
> >>     |libevdev is a wrapper library for evdev devices. it moves the common
> >>     tasks when dealing with evdev devices into a library and provides a library
> >>     interface to the callers, thus avoiding erroneous ioctls, etc.
> >>
> >>     git://git.freedesktop.org/git/libevdev
> >>     http://cgit.freedesktop.org/libevdev/
> >>
> >>     **libevdev is currently in early stages of development. Use at your own risk**
> >>
> >>     The eventual goal is that libevdev wraps all ioctls available to evdev
> >>     devices, thus making direct access unnecessary.|
> >>
> >>
> 


More information about the xorg-devel mailing list