diff options
| author | Sam James <sam@gentoo.org> | 2023-10-19 15:06:11 +0100 |
|---|---|---|
| committer | Eli Schwartz <eschwartz93@gmail.com> | 2023-10-19 14:47:19 -0400 |
| commit | 7b7d2e060b447de9c2642848847370a58711ac1c (patch) | |
| tree | 0750a6fcace3479e6d5d72cee45786b0798c6537 /docs/yaml | |
| parent | e2a87afa52612c9ec6fd825e115838323ba13936 (diff) | |
| download | meson-7b7d2e060b447de9c2642848847370a58711ac1c.tar.gz | |
mtest: set ASAN_OPTIONS and UBSAN_OPTIONS to abort by default
Do as we do for MALLOC_PERTURB and set a sensible value for both ASAN_OPTIONS
and UBSAN_OPTIONS to abort on failure and give more helpful output at the
same time. We do not set these options if the user has exported a value
themselves to allow override.
In the last week alone, I've observed two cases where people were expecting
sanitizers to abort on failure and were surprised when it didn't:
1) https://github.com/git/git/commit/252d693797912ddb2684733160170f0408b73274
2) https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/c47df433f7bc9936fc59b323ca5e53ea4a04f40e
Correct this - which is in-line with meson's DWIM/DTRT philosophy.
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'docs/yaml')
| -rw-r--r-- | docs/yaml/functions/test.yaml | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/docs/yaml/functions/test.yaml b/docs/yaml/functions/test.yaml index 4e791671c..622b7c3b0 100644 --- a/docs/yaml/functions/test.yaml +++ b/docs/yaml/functions/test.yaml @@ -33,6 +33,10 @@ description: | test(..., env: nomalloc, ...) ``` + By default, the environment variables `ASAN_OPTIONS` and `UBSAN_OPTIONS` are + set to enable aborting on detected violations and to give a backtrace. To suppress + this, `ASAN_OPTIONS` and `UBSAN_OPTIONS` can be set in the environment. + In addition to running individual executables as test cases, `test()` can also be used to invoke an external test harness. In this case, it is best to use `verbose: true` *(since 0.62.0)* and, if supported |
