[b7a67e90] | 1 | <?xml version="1.0" encoding="ISO-8859-1"?>
|
---|
| 2 | <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
---|
| 3 | "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
---|
| 4 | <!ENTITY % general-entities SYSTEM "../../general.ent">
|
---|
| 5 | %general-entities;
|
---|
| 6 |
|
---|
[0e206b8] | 7 | <!ENTITY libevdev-version "1.13.0">
|
---|
[35e960fb] | 8 |
|
---|
[8dfc5c3] | 9 | <!ENTITY libevdev-download-http "https://www.freedesktop.org/software/libevdev/libevdev-&libevdev-version;.tar.xz">
|
---|
[35e960fb] | 10 | <!ENTITY libevdev-download-ftp " ">
|
---|
[0e206b8] | 11 | <!ENTITY libevdev-md5sum "5b15b4cf97c4f9f1393e499526a57665">
|
---|
| 12 | <!ENTITY libevdev-size "444 KB">
|
---|
| 13 | <!ENTITY libevdev-buildsize "6.3 MB (with tests)">
|
---|
[3b496ff] | 14 | <!ENTITY libevdev-time "0.2 SBU (with tests)">
|
---|
[b7a67e90] | 15 | ]>
|
---|
| 16 |
|
---|
[f97d5f6] | 17 | <!-- Begin Xorg libevdev Driver -->
|
---|
| 18 | <sect2 id="libevdev" xreflabel="libevdev-&libevdev-version;">
|
---|
[b7a67e90] | 19 |
|
---|
[6dc826d] | 20 | <sect2info>
|
---|
| 21 | <date>$Date$</date>
|
---|
| 22 | </sect2info>
|
---|
| 23 |
|
---|
[f97d5f6] | 24 | <title>libevdev &libevdev-version;</title>
|
---|
[b7a67e90] | 25 |
|
---|
[35e960fb] | 26 | <indexterm zone="libevdev">
|
---|
| 27 | <primary sortas="a-libevdev">libevdev</primary>
|
---|
[b7a67e90] | 28 | </indexterm>
|
---|
| 29 |
|
---|
| 30 | <sect3 role="package">
|
---|
[f97d5f6] | 31 | <title>Introduction to libevdev</title>
|
---|
[b7a67e90] | 32 |
|
---|
| 33 | <para>
|
---|
[f97d5f6] | 34 | The <application>libevdev</application> package contains common
|
---|
[e5e7a1d] | 35 | functions for Xorg input drivers.
|
---|
[b7a67e90] | 36 | </para>
|
---|
| 37 |
|
---|
[18aa9339] | 38 | &lfs113_checked;
|
---|
[b7a67e90] | 39 |
|
---|
| 40 | <bridgehead renderas="sect4">Package Information</bridgehead>
|
---|
| 41 | <itemizedlist spacing="compact">
|
---|
| 42 | <listitem>
|
---|
| 43 | <para>
|
---|
[35e960fb] | 44 | Download (HTTP): <ulink url="&libevdev-download-http;"/>
|
---|
[b7a67e90] | 45 | </para>
|
---|
| 46 | </listitem>
|
---|
| 47 | <listitem>
|
---|
| 48 | <para>
|
---|
[35e960fb] | 49 | Download (FTP): <ulink url="&libevdev-download-ftp;"/>
|
---|
[b7a67e90] | 50 | </para>
|
---|
| 51 | </listitem>
|
---|
| 52 | <listitem>
|
---|
| 53 | <para>
|
---|
[35e960fb] | 54 | Download MD5 sum: &libevdev-md5sum;
|
---|
[b7a67e90] | 55 | </para>
|
---|
| 56 | </listitem>
|
---|
| 57 | <listitem>
|
---|
| 58 | <para>
|
---|
[35e960fb] | 59 | Download size: &libevdev-size;
|
---|
[b7a67e90] | 60 | </para>
|
---|
| 61 | </listitem>
|
---|
| 62 | <listitem>
|
---|
| 63 | <para>
|
---|
[35e960fb] | 64 | Estimated disk space required: &libevdev-buildsize;
|
---|
[b7a67e90] | 65 | </para>
|
---|
| 66 | </listitem>
|
---|
| 67 | <listitem>
|
---|
| 68 | <para>
|
---|
[35e960fb] | 69 | Estimated build time: &libevdev-time;
|
---|
[b7a67e90] | 70 | </para>
|
---|
| 71 | </listitem>
|
---|
| 72 | </itemizedlist>
|
---|
| 73 |
|
---|
[f97d5f6] | 74 | <bridgehead renderas="sect4">libevdev Dependencies</bridgehead>
|
---|
[cac7f93] | 75 |
|
---|
[b7a67e90] | 76 | <bridgehead renderas="sect5">Optional</bridgehead>
|
---|
| 77 | <para role="optional">
|
---|
[17facb1d] | 78 | <xref linkend="doxygen"/> and
|
---|
[39dd48b] | 79 | <xref linkend="valgrind"/> (optional for tests)
|
---|
[b7a67e90] | 80 | </para>
|
---|
| 81 |
|
---|
| 82 | <para condition="html" role="usernotes">
|
---|
[35e960fb] | 83 | User Notes: <ulink url="&blfs-wiki;/libevdev"/>
|
---|
[b7a67e90] | 84 | </para>
|
---|
| 85 | </sect3>
|
---|
| 86 |
|
---|
[35e960fb] | 87 | <sect3 role="kernel" id="libevdev-kernel">
|
---|
[b7a67e90] | 88 | <title>Kernel Configuration</title>
|
---|
| 89 |
|
---|
[f72bfbe1] | 90 | <para>
|
---|
| 91 | Enable the following options in the kernel configuration and recompile
|
---|
| 92 | the kernel if necessary:
|
---|
| 93 | </para>
|
---|
[b7a67e90] | 94 |
|
---|
| 95 | <screen><literal>Device Drivers --->
|
---|
| 96 | Input device support --->
|
---|
[ee4e4dea] | 97 | <*> Generic input layer (needed for keyboard, mouse, ...) [CONFIG_INPUT]
|
---|
[ca40dca] | 98 | <*> Event interface [CONFIG_INPUT_EVDEV]
|
---|
| 99 | [*] Miscellaneous devices ---> [CONFIG_INPUT_MISC]
|
---|
[f72bfbe1] | 100 | <*/m> User level driver support [CONFIG_INPUT_UINPUT]</literal></screen>
|
---|
| 101 |
|
---|
| 102 | <para>
|
---|
| 103 | The last item is not strictly required for libevdev. If it is
|
---|
| 104 | compiled as a module, it is not loaded automatically.
|
---|
| 105 | It is needed for full test coverage.
|
---|
| 106 | </para>
|
---|
[b7a67e90] | 107 |
|
---|
[35e960fb] | 108 | <indexterm zone="libevdev libevdev-kernel">
|
---|
| 109 | <primary sortas="d-libevdev">libevdev</primary>
|
---|
[b7a67e90] | 110 | </indexterm>
|
---|
| 111 | </sect3>
|
---|
| 112 |
|
---|
| 113 | <sect3 role="installation">
|
---|
[f97d5f6] | 114 | <title>Installation of libevdev</title>
|
---|
[b7a67e90] | 115 |
|
---|
| 116 | <para>
|
---|
[f97d5f6] | 117 | Install <application>libevdev</application> by running the following
|
---|
[b7a67e90] | 118 | commands:
|
---|
| 119 | </para>
|
---|
| 120 |
|
---|
[0e206b8] | 121 | <screen><userinput>mkdir build &&
|
---|
| 122 | cd build &&
|
---|
| 123 |
|
---|
[91318eb] | 124 | meson setup .. \
|
---|
| 125 | --prefix=$XORG_PREFIX \
|
---|
[c8013f54] | 126 | --buildtype=release \
|
---|
| 127 | -Ddocumentation=disabled &&
|
---|
[0e206b8] | 128 | ninja</userinput></screen>
|
---|
[b7a67e90] | 129 |
|
---|
| 130 | <para>
|
---|
[24e5f9d] | 131 | The regression tests can be run as the <systemitem
|
---|
[0e206b8] | 132 | class="username">root</systemitem> user with <command>ninja
|
---|
| 133 | test</command>, in a graphical session. You need to have enabled
|
---|
[f72bfbe1] | 134 | the CONFIG_INPUT_UINPUT setting in the kernel for full test coverage.
|
---|
| 135 | If it is enabled as a module, the module is named
|
---|
| 136 | <command>uinput</command> and needs to be loaded before running the
|
---|
| 137 | tests. Note that on some systems, the
|
---|
[f4bb000d] | 138 | tests may cause a hard lockup and require a reboot. On laptops, the
|
---|
| 139 | system will go into Sleep and need to be woken up to finish the test
|
---|
| 140 | suites.
|
---|
[b7a67e90] | 141 | </para>
|
---|
| 142 |
|
---|
| 143 | <para>
|
---|
| 144 | Now, as the <systemitem class="username">root</systemitem> user:
|
---|
| 145 | </para>
|
---|
| 146 |
|
---|
[0e206b8] | 147 | <screen role="root"><userinput>ninja install</userinput></screen>
|
---|
[b7a67e90] | 148 | </sect3>
|
---|
| 149 |
|
---|
| 150 | <sect3 role="content">
|
---|
| 151 | <title>Contents</title>
|
---|
| 152 |
|
---|
| 153 | <segmentedlist>
|
---|
[ca4eb659] | 154 | <segtitle>Installed Xorg Programs</segtitle>
|
---|
[b7a67e90] | 155 | <segtitle>Installed Xorg Library</segtitle>
|
---|
[ca4eb659] | 156 | <segtitle>Installed Xorg Directory</segtitle>
|
---|
[b7a67e90] | 157 |
|
---|
| 158 | <seglistitem>
|
---|
| 159 | <seg>
|
---|
[39dd48b] | 160 | libevdev-tweak-device, mouse-dpi-tool, and touchpad-edge-detector
|
---|
[b7a67e90] | 161 | </seg>
|
---|
| 162 | <seg>
|
---|
| 163 | libevdev.so
|
---|
| 164 | </seg>
|
---|
[ca4eb659] | 165 | <seg>
|
---|
| 166 | $XORG_PREFIX/include/libevdev-1.0
|
---|
| 167 | </seg>
|
---|
[b7a67e90] | 168 | </seglistitem>
|
---|
| 169 | </segmentedlist>
|
---|
| 170 |
|
---|
| 171 | <variablelist>
|
---|
| 172 | <bridgehead renderas="sect4">Short Descriptions</bridgehead>
|
---|
| 173 | <?dbfo list-presentation="list"?>
|
---|
| 174 | <?dbhtml list-presentation="table"?>
|
---|
| 175 |
|
---|
[39dd48b] | 176 | <varlistentry id="libevdev-tweak-device">
|
---|
| 177 | <term><command>libevdev-tweak-device</command></term>
|
---|
| 178 | <listitem>
|
---|
| 179 | <para>
|
---|
[4c24eb0a] | 180 | is a tool to change some kernel device properties
|
---|
[39dd48b] | 181 | </para>
|
---|
| 182 | <indexterm zone="libevdev libevdev-tweak-device">
|
---|
| 183 | <primary sortas="b-libevdev-tweak-device">libevdev-tweak-device</primary>
|
---|
| 184 | </indexterm>
|
---|
| 185 | </listitem>
|
---|
| 186 | </varlistentry>
|
---|
| 187 |
|
---|
[ca4eb659] | 188 | <varlistentry id="mouse-dpi-tool">
|
---|
| 189 | <term><command>mouse-dpi-tool</command></term>
|
---|
| 190 | <listitem>
|
---|
| 191 | <para>
|
---|
[4c24eb0a] | 192 | is a tool to estimate the resolution of a mouse
|
---|
[ca4eb659] | 193 | </para>
|
---|
| 194 | <indexterm zone="libevdev mouse-dpi-tool">
|
---|
| 195 | <primary sortas="b-mouse-dpi-tool">mouse-dpi-tool</primary>
|
---|
| 196 | </indexterm>
|
---|
| 197 | </listitem>
|
---|
| 198 | </varlistentry>
|
---|
| 199 |
|
---|
[b8ad040] | 200 | <varlistentry id="touchpad-edge-detector">
|
---|
| 201 | <term><command>touchpad-edge-detector</command></term>
|
---|
| 202 | <listitem>
|
---|
| 203 | <para>
|
---|
| 204 | touchpad-edge-detector is a tool that reads the touchpad events
|
---|
| 205 | from the kernel and calculates the minimum and maximum for the x
|
---|
[4c24eb0a] | 206 | and y coordinates, respectively
|
---|
[b8ad040] | 207 | </para>
|
---|
| 208 | <indexterm zone="libevdev touchpad-edge-detector">
|
---|
| 209 | <primary sortas="b-touchpad-edge-detector">touchpad-edge-detector</primary>
|
---|
| 210 | </indexterm>
|
---|
| 211 | </listitem>
|
---|
| 212 | </varlistentry>
|
---|
| 213 |
|
---|
[35e960fb] | 214 | <varlistentry id="libevdev-lib">
|
---|
[b7a67e90] | 215 | <term><filename class="libraryfile">libevdev.so</filename></term>
|
---|
| 216 | <listitem>
|
---|
| 217 | <para>
|
---|
[4c24eb0a] | 218 | is a library of Xorg driver input functions
|
---|
[b7a67e90] | 219 | </para>
|
---|
[35e960fb] | 220 | <indexterm zone="libevdev libevdev-lib">
|
---|
| 221 | <primary sortas="c-libevdev-lib">ebvdev.so</primary>
|
---|
[b7a67e90] | 222 | </indexterm>
|
---|
| 223 | </listitem>
|
---|
| 224 | </varlistentry>
|
---|
| 225 |
|
---|
| 226 | </variablelist>
|
---|
| 227 |
|
---|
| 228 | </sect3>
|
---|
| 229 |
|
---|
| 230 | </sect2>
|
---|