• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1libxkbcommon consists of three shared libraries, libxkbcommon (the main
2library), libxkbcommon-x11 (an addon library for XCB clients) and libxkbregistry
3(a library to list available RMLVO options).
4
5The files for libxkbcommon-x11 are:
6    libxkbcommon-x11.a libxkbcommon-x11.so* xkbcommon/xkbcommon-x11.h
7    xkbcommon-x11.map xkbcommon-x11.pc
8
9libxkbcommon-x11 can be disabled with -Denable-x11=false (see
10`meson configure build` for other options/variables).
11
12The files for libxkbregistry are:
13    libxkbregistry.a libxkbregistry.so* xkbcommon/xkbregistry.h
14    xkbregistry.map xkbregistry.pc
15
16libxkbregistry can be disabled with -Denable-xkbregistry=false (see
17`meson configure build` for other options/variables).
18
19Dependencies for libxkbcommon:
20- C compiler, meson, pkg-config, libc.
21
22- (build) bison (preferred), win_bison or byacc>=20141006.
23  byacc must be configured with --enable-btyacc.
24
25- (build optional, runtime required) xkeyboard-config.
26  During build, for automatically detecting the value of
27  -Dxkb-config-root instead of guessing (/usr/share/X11/xkb).
28  During runtime, not strictly needed, but most users of the library
29  would need it.
30
31- (runtime) libX11.
32  Contains the dataset for Compose support (/usr/share/X11/locale).
33  Please don't depend on it explicitly.
34
35- (build optional) doxygen.
36  For generating the HTML documentation.
37  To disable, use -Denable-docs=false.
38
39- (build optional) gperf.
40  Output included in git and tarball. To regenerate, use
41  `./scripts/update-keywords`.
42
43Dependencies for xkbcli:
44- libxkbcommon.
45
46Dependencies for libxkbcommon-x11:
47- libxkbcommon.
48
49- libxcb>=1.10 with libxcb-xkb.
50
51Dependencies for libxkbcommon-x11 tests:
52- xkbcomp, Xvfb.
53  If they are not available, the relevant tests are skipped.
54
55Dependencies for libxkbregistry:
56- libxkbregistry is a sublibrary of libxkbcommon and cannot be built without
57  building libxbkcommon. The files produced are otherwise independent.
58
59- libxml2
60
61- (build optional, runtime requirement) xkeyboard-config
62  During build, for automatically detecting the value of
63  -Dxkb-config-root instead of guessing (/usr/share/X11/xkb).
64
65Dependencies for Wayland tests:
66- wayland-client>=1.2.0, wayland-scanner, wayland-protocols>=1.0.
67  To disable, use -Denable-wayland=false.
68
69Unless libxcb is always available as part of the system, it is preferred
70that libxkbcommon and libxkbcommon-x11 be split into separate packages,
71such that the main library does not depend on libxcb. This avoids a
72transitive dependency of Wayland clients on X libraries.
73
74It is perferred that libxkbregistry be split into a separate packages as most
75clients that require libxkbcommon do not require libxkbregistry and clients
76requiring libxkbregistry may not need libxkbcommon.
77