fix: handle EINTR correctly in get_cpu_mask_from_sysfs
[librseq.git] / README.md
1 <!--
2 SPDX-FileCopyrightText: 2022 EfficiOS Inc.
3
4 SPDX-License-Identifier: MIT
5 -->
6
7 Library for Restartable Sequences
8 =================================
9
10 by Mathieu Desnoyers
11
12
13 Building
14 --------
15
16 ### Prerequisites
17
18 This source tree is based on the Autotools suite from GNU to simplify
19 portability. Here are some things you should have on your system in order to
20 compile the Git repository tree:
21
22 - [GNU Autotools](http://www.gnu.org/software/autoconf/)
23 (**Automake >= 1.12**, **Autoconf >= 2.69**,
24 **Autoheader >= 2.69**;
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
33 If you get the tree from the Git repository, you will need to run
34
35 ./bootstrap
36
37 in its root. It calls all the GNU tools needed to prepare the tree
38 configuration.
39
40 To build and install, do:
41
42 ./configure
43 make
44 sudo make install
45 sudo ldconfig
46
47 **Note:** the `configure` script sets `/usr/local` as the default prefix for
48 files it installs. However, this path is not part of most distributions'
49 default library path, which will cause builds depending on `librseq`
50 to fail unless `-L/usr/local/lib` is added to `LDFLAGS`. You may provide a
51 custom prefix to `configure` by using the `--prefix` switch
52 (e.g., `--prefix=/usr`).
53
54
55 ### Building against a local version of the kernel headers
56
57 cd /path/to/kernel/sources
58 make headers_install
59 cd /path/to/librseq
60 CPPFLAGS=-I/path/to/kernel/sources/usr/include ./configure
61 make
62 sudo make install
63 sudo ldconfig
This page took 0.03042 seconds and 4 git commands to generate.