Add PACKAGING file
[platform/upstream/libxkbcommon.git] / PACKAGING
1 libxkbcommon consists of two shared libraries, libxkbcommon (the main
2 library) and libxkbcommon-x11 (an addon library for XCB clients).
3
4 The files for libxkbcommon-x11 are:
5     libxkbcommon-x11.a libxkbcommon.so* xkbcommon/xkbcommon-x11.h
6     xkbcommon-x11.map xkbcommon-x11.pc
7
8 libxkbcommon-x11 can be disabled with --disable-x11 (see
9 `./configure --help` for other options/variables).
10
11 Dependencies for libxkbcommon:
12 - C compiler, autoconf, automake, pkg-config, libc, etc.
13
14 - (build optional) xorg-util-macros.
15   Output included in tarball.
16
17 - (build optional) bison (preferred) or byacc>=20141006.
18   Output included in tarball.
19   byacc must be configured with --enable-btyacc.
20
21 - (build optional, runtime) xkeyboard-config.
22   During build, for automatically detecting the value of
23   --with-xkb-config-root instead of guessing (/usr/share/X11/xkb).
24   During runtime, not strictly needed, but most users of the library
25   would need it.
26
27 - (runtime) libX11.
28   Contains the dataset for Compose support (/usr/share/X11/locale).
29   Please don't depend on it explicitly.
30
31 - (build optional) doxygen.
32   For generating the HTML documentation.
33
34 - (build optional) gperf.
35   Output included in git and tarball. To regenerate, use
36   `make update-keywords`.
37
38 Dependencies for libxkbcommon-x11:
39 - libxkbcommon.
40
41 - libxcb>=1.10 with libxcb-xkb.
42
43 Dependencies for libxkbcommon-x11 tests:
44 - xkbcomp, Xvfb.
45   If they are not available, the relevant tests are skipped.
46
47 Unless libxcb is always available as part of the system, it is preferred
48 that libxkbcommon and libxkbcommon-x11 be split into separate packages,
49 such that the main library does not depend on libxcb. This avoids a
50 transitive dependency of Wayland clients on X libraries.