NEWS -> CHANGELOG.rst -> NEWS.rst
[a2jmidid.git] / INSTALL.rst
blob98f4a0c2b409331d86c4d0eea974f279a315b01e
1 ============
2 Installation
3 ============
5 (LADI) *a2jmidid* primary build system is the |waf| build system.
6 *a2jmidid* can use the |meson| build system.
9 Configure, build & install using |waf| with a2jmidid
10 -------------------
12 Configure it::
14   ./waf configure
16 This will configure for installation to /usr/local prefix.
17 If you want to use other prefix, use --prefix option::
19   ./waf configure --prefix=/usr
21 For full list of options, run::
23   ./waf configure --help
25 There are two custom options:
27  * "--disable-dbus will" force disable dbus support, even if dependencies are present
28  * "--enable-pkg-config-dbus-service-dir" will force D-Bus service install
29    dir to be one returned by pkg-config. This is usually needed when
30    prefix is /usr/local because dbus daemon scans /usr for service
31    files but does not in /usr/local
33 Build it::
35   ./waf
37 You can use -j option to enable building on more than one CPU::
39   ./waf -j 4
41 Install it::
43   ./waf install
45 You probably want to run later as superuser to install system-wide
47 Configure and build using |meson|
48 -------------------
50 To configure the project, |meson|'s |meson_universal_options| (e.g. *prefix*)
51 can be used to prepare a build directory::
53   meson --prefix=/usr build
55 One additional - project specific - option enables for building without |dbus|
56 support::
58   meson --prefix=/usr -Ddisable-dbus=true build
60 To build the application |ninja| is required::
62   ninja -C build
64 Install using |meson|
65 -------
67 |meson| is able to install the project components to the system directories
68 (when run as root), while honoring the *DESTDIR* environment variable::
70   DESTDIR="/some/other/location" meson install -C build
72 .. |waf| raw:: html
74   <a href="https://waf.io/" target="_blank">WAF</a>
76 .. |meson| raw:: html
78   <a href="https://mesonbuild.com/" target="_blank">Meson</a>
80 .. |meson_universal_options| raw:: html
82   <a href="https://mesonbuild.com/Builtin-options.html#universal-options" target="_blank">universal options</a>
84 .. |dbus| raw:: html
86   <a href="https://www.freedesktop.org/wiki/Software/dbus/" target="_blank">D-Bus</a>
88 .. |ninja| raw:: html
90   <a href="https://ninja-build.org/" target="_blank">Ninja</a>