1
0
Fork 0

Merging upstream version 1.7.1.

Signed-off-by: Daniel Baumann <daniel@debian.org>
This commit is contained in:
Daniel Baumann 2025-02-16 10:16:49 +01:00
parent 41144a7301
commit 476f38f2bb
Signed by: daniel
GPG key ID: FBB4F0E80A80222F
878 changed files with 2965 additions and 1746 deletions

View file

@ -79,7 +79,13 @@ there are two project which implement the Ninja and the Meson API in pure C99
- samurai: https://github.com/michaelforney/samurai.git
- muon: https://git.sr.ht/~lattis/muon
See the CI [build](.github/workflows/build.yml) for an example how to use it.
The CI build helper script `scripts/build.sh` is able to setup and build this
project in a minimal setup using samurai and muon and thus only depending on:
- gcc
- make
- git
`scripts/build.sh -m muon`
## To compile libnvme
@ -171,8 +177,12 @@ To enable address sanitizer (advanced debugging of memory issues):
meson setup .build -Db_sanitize=address
```
This option adds `-fsanitize=address` to the gcc options. Note that when using the sanitize feature, the library `libasan.so` must be available and must be the very first library loaded when running an executable. Ensuring that `libasan.so` gets loaded first can be achieved with the `LD_PRELOAD` environment variable as follows:
This option adds `-fsanitize=address` to the gcc options. The tests can then be run normally (`meson test -C .build`).
Note that when using the sanitize feature, the library `libasan.so` must be available and must be the very first library loaded when running an executable. If experiencing linking issues, you can ensure that `libasan.so` gets loaded first with the `LD_PRELOAD` environment variable as follows:
```
meson setup .build -Db_sanitize=address && LD_PRELOAD=/lib64/libasan.so.6 ninja -C .build test
```
It's also possible to enable the undefined behavior sanitizer with `-Db_sanitize=undefined`. To enable both, use `-Db_sanitize=address,undefined`.