-LTTng-tools
-===========
-
-LTTng-tools is a set of tools to control [LTTng](https://lttng.org/)
-tracing. The project includes the LTTng session daemon, consumer damon
-and relay daemon, as well as `liblttng-ctl`, a C library used to
-communicate with the session daemon, and `lttng`, a command line
-interface to `liblttng-ctl`.
-
-
-Requirements and optional dependencies
---------------------------------------
-
-The following items are _required_ to build and run LTTng-tools
-components:
-
- - **Linux kernel >= 2.6.27**: for `epoll()` support, at least this
- version is needed. However, `poll()` is also supported by
- configuring LTTng-tools with the `--disable-epoll` option. Using
- that, the kernel version may probably be older, but we can't provide
- any guarantee. Please let us know if you are able to go lower
- without any problems.
- - **[`liburcu`](http://urcu.so/) >= 0.8.0**: userspace RCU library,
- by Mathieu Desnoyers and Paul E. McKenney.
- - **`libpopt` >= 1.13**: command line arguments parsing library.
- - Debian/Ubuntu package: `libpopt-dev`
- - **`libuuid`**: universally unique ID library
- - Debian/Ubuntu package: `uuid-dev`
-
-The following items are _optional_ dependencies:
-
- - **[Babeltrace](https://lttng.org/babeltrace)**: trace viewer.
- Enables the use of `lttng view` command.
- - Debian/Ubuntu package: `babeltrace`
- - **`libxml2` >= 2.7.6**: XML document parsing library. Needed for
- tracing session configuration saving/loading and machine interface
- output support.
- - Debian/Ubuntu package: `libxml2-dev`
- - **Perl**: needed for `make check` and tests.
- - **Python >= 3.0**: needed for `make check` and tests.
- - Debian/Ubuntu package: `python3`
- - **SWIG >= 2.0** and **Python 3 development headers**: needed for
- Python bindings
- (enabled at configure time with the `--enable-python-bindings` option).
- - Debian/Ubuntu packages: `swig2.0` and `python3-dev`
- - **modprobe**: needed for automatic LTTng kernel modules loading
- (kernel tracing).
- - **bash**: needed for running `make check`.
-
-
-Building
---------
-
-This source tree is based on the Autotools suite from GNU to simplify
-portability. Here are some things you should have on your system in
-order to compile the Git repository tree:
-
- - GNU Autotools (Automake >= 1.10, Autoconf >= 2.50,
- Autoheader >= 2.50; make sure your system-wide `automake` points to
- a recent version!)
- - [GNU Libtool](http://www.gnu.org/software/autoconf/) >= 2.2
- - Flex >= 2.5.35
- - Bison >= 2.4
-
-If you use GNU gold, which is _not_ mandatory, make sure you have this
-version:
-
- - GNU gold >= 2.22
-
-Before this version of GNU gold, we hit a
-[known bug](http://sourceware.org/bugzilla/show_bug.cgi?id=11317).
-Be advised that with GNU gold, you might have to specify
-`-L/usr/local/lib` in `LDFLAGS`.
-
-If you get the tree from the Git repository, you will need to run
-
- ./bootstrap
-
-in its root. It calls all the GNU tools needed to prepare the tree
-configuration.
-
-To build LTTng-tools, do:
-
- ./configure
- make
- sudo make install
- sudo ldconfig
-
-If you want Python bindings, add the `--enable-python-bindings` option
-to `configure`. Please note that some distributions will need the
-following environment variables set before running configure:
-
- export PYTHON="python3"
- export PYTHON_CONFIG="/usr/bin/python3-config"
-
-
-Using
------
+LTTng‑tools
+=================
+
+[![Jenkins](https://img.shields.io/jenkins/s/https/ci.lttng.org/lttng-tools_master_build.svg)](https://ci.lttng.org/job/lttng-tools_master_build/)
+[![Coverity](https://img.shields.io/coverity/scan/lttng-tools.svg)](https://scan.coverity.com/projects/lttng-tools)
+
+_**LTTng‑tools**_ is a set of components to control
+[LTTng](https://lttng.org/) tracing.
+
+The project includes:
+
+* The LTTng [session daemon](https://lttng.org/man/8/lttng-sessiond/).
+* The LTTng consumer daemon.
+* The LTTng [relay daemon](https://lttng.org/man/8/lttng-relayd/).
+* liblttng‑ctl, a library with a C API used to communicate
+ with the session daemon.
+* Python 3 bindings of liblttng‑ctl.
+* [`lttng`](https://lttng.org/man/1/lttng/),
+ a command-line tool over liblttng‑ctl.
+* [`lttng-crash`](https://lttng.org/man/1/lttng-crash/), a command-line
+ tool to recover and view LTTng 2 trace buffers in the event of
+ a crash.
+
+Required and optional dependencies
+----------------------------------
+You need the following dependencies to build and run the
+LTTng‑tools components:
+
+* **Linux kernel ≥ 2.6.27**
+
+ Use `--disable-epoll` at [build configuration](#configure) time to
+ build LTTng‑tools for an older kernel. However, note that we
+ can't provide any guarantee below 2.6.27.
+
+* **[Userspace RCU](http://www.liburcu.org/) ≥ 0.9.0**.
+
+ Debian/Ubuntu package: `liburcu-dev`.
+
+* **popt ≥ 1.13**
+
+ Debian/Ubuntu package: `libpopt-dev`.
+
+* **[Libxml2](http://xmlsoft.org/) ≥ 2.7.6**
+
+ Debian/Ubuntu package: `libxml2-dev`
+
+The following dependencies are optional:
+
+* **[Babeltrace 2](https://babeltrace.org/)**: default viewer
+ of the [`lttng view`](https://lttng.org/man/1/lttng-view/)
+ command.
+
+ Debian/Ubuntu package: `babeltrace2`
+
+* **[LTTng‑UST](https://lttng.org/)** (same minor version as
+ LTTng‑tools):
+ LTTng user space tracing (applications and libraries).
+
+ Debian/Ubuntu package: `liblttng-ust-dev`
+
+* **Perl**: `make check` and tests.
+
+* **[Python](https://www.python.org/) ≥ 3.0**:
+ `make check` and tests.
+
+ Debian/Ubuntu package: `python3`
+
+* **[SWIG](http://www.swig.org/) ≥ 2.0** and
+ **Python 3 development headers**: Python bindings
+ (enabled at [build configuration](#configure) time with the
+ `--enable-python-bindings` option).
+
+ Debian/Ubuntu packages: `swig2.0` and `python3-dev`
+
+* **modprobe** and/or
+ **[kmod](https://git.kernel.org/pub/scm/utils/kernel/kmod/kmod.git/) ≥ 22**:
+ automatic LTTng kernel modules loading (kernel tracing).
+
+* **Bash**: `make check`.
+
+* **[`man`](http://man7.org/linux/man-pages/man1/man.1.html)**
+ (manual pager): view `lttng` command manual
+ pages with the `--help` option or with the
+ [`lttng help`](https://lttng.org/man/1/lttng-help/) command.
+
+ Note that you can use the [build configuration](#configure) option
+ `--enable-embedded-help` to embed the manual pages into the
+ `lttng`, `lttng-sessiond`, `lttng-relayd`, and `lttng-crash` programs
+ so that you don't need `man` to view them.
+
+* **[libpfm](http://perfmon2.sourceforge.net/) ≥ 4.0**:
+ perf regression test suite.
+
+ Debian/Ubuntu package: `libpfm4-dev`
+
+LTTng‑tools supports both the LTTng Linux kernel tracer and LTTng
+user space tracer sharing the same _minor_ version. While some minor
+releases do not change the tracer ABIs and _could_ work, no testing is
+performed to ensure that cross-version compatibility is maintained.