summaryrefslogtreecommitdiff
path: root/docs/yaml
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2023-10-19 15:06:11 +0100
committerEli Schwartz <eschwartz93@gmail.com>2023-10-19 14:47:19 -0400
commit7b7d2e060b447de9c2642848847370a58711ac1c (patch)
tree0750a6fcace3479e6d5d72cee45786b0798c6537 /docs/yaml
parente2a87afa52612c9ec6fd825e115838323ba13936 (diff)
downloadmeson-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.yaml4
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