Use ptrdiff_t for rseq_offset

glibc changes the type of __rseq_offset from int to ptrdiff_t before
the official 2.35 release. Adapt to this change.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Change-Id: Iaaef60957cf33f5536817fa92136239fe9e9ab74
3 files changed
tree: 028b0d0717ecb3f1984114972df6f3168bb01efb
  1. doc/
  2. include/
  3. LICENSES/
  4. m4/
  5. src/
  6. tests/
  7. .gitignore
  8. .gitreview
  9. bootstrap
  10. configure.ac
  11. LICENSE
  12. Makefile.am
  13. README.md
README.md

Library for Restartable Sequences

by Mathieu Desnoyers

Building

Prerequisites

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 >= 2.2
  • Linux kernel headers from kernel >= 4.18 to build on x86, arm, ppc, and mips and from kernel >= 4.19 to build on s390.

Building steps

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 and install, do:

./configure
make
sudo make install
sudo ldconfig

Note: the configure script sets /usr/local as the default prefix for files it installs. However, this path is not part of most distributions' default library path, which will cause builds depending on librseq to fail unless -L/usr/local/lib is added to LDFLAGS. You may provide a custom prefix to configure by using the --prefix switch (e.g., --prefix=/usr).

Building against a local version of the kernel headers

cd /path/to/kernel/sources
make headers_install
cd /path/to/librseq
CPPFLAGS=-I/path/to/kernel/sources/usr/include ./configure
make
sudo make install
sudo ldconfig