Rename RSEQ_ARCH_HAS_OFFSET_DEREF_ADDV to rseq_arch_has_load_add_load_load_add_store
[librseq.git] / README.md
CommitLineData
f2d7b530
MJ
1<!--
2SPDX-FileCopyrightText: 2022 EfficiOS Inc.
3
4SPDX-License-Identifier: MIT
5-->
6
58023ce0 7Library for Restartable Sequences
34c2f003 8=================================
7817439f 9
34c2f003
MD
10by Mathieu Desnoyers
11
12
13Building
14--------
15
2cbca301
MJ
16### Prerequisites
17
18This source tree is based on the Autotools suite from GNU to simplify
19portability. Here are some things you should have on your system in order to
20compile the Git repository tree:
21
22 - [GNU Autotools](http://www.gnu.org/software/autoconf/)
31f05ad7
MJ
23 (**Automake >= 1.12**, **Autoconf >= 2.69**,
24 **Autoheader >= 2.69**;
2cbca301
MJ
25 make sure your system-wide `automake` points to a recent version!)
26 - **[GNU Libtool](https://www.gnu.org/software/libtool/) >= 2.2**
27 - **Linux kernel headers** from kernel **>= 4.18** to build on x86, arm,
28 ppc, and mips and from kernel **>= 4.19** to build on s390.
29
30
31### Building steps
32
33If you get the tree from the Git repository, you will need to run
34
35 ./bootstrap
36
37in its root. It calls all the GNU tools needed to prepare the tree
38configuration.
39
40To build and install, do:
41
42 ./configure
34c2f003 43 make
2cbca301
MJ
44 sudo make install
45 sudo ldconfig
34c2f003 46
2cbca301
MJ
47**Note:** the `configure` script sets `/usr/local` as the default prefix for
48files it installs. However, this path is not part of most distributions'
49default library path, which will cause builds depending on `librseq`
50to fail unless `-L/usr/local/lib` is added to `LDFLAGS`. You may provide a
51custom prefix to `configure` by using the `--prefix` switch
52(e.g., `--prefix=/usr`).
7817439f 53
6905dcac 54
2cbca301 55### Building against a local version of the kernel headers
6905dcac 56
f70e31d3
MD
57 cd /path/to/kernel/sources
58 make headers_install
59 cd /path/to/librseq
2cbca301
MJ
60 CPPFLAGS=-I/path/to/kernel/sources/usr/include ./configure
61 make
62 sudo make install
63 sudo ldconfig
This page took 0.026612 seconds and 4 git commands to generate.