summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2024-02-10 16:56:29 +0000
committerEli Schwartz <eschwartz93@gmail.com>2024-02-23 15:59:22 -0500
commit8ba0ea68017b489b0a461abbd375f319dc7a48f3 (patch)
treec95c54fbdf9b86c3722efcf095407fe3674199c4 /docs
parent715dc27b2b8432d9749df985f262de8a8347c59b (diff)
downloadmeson-8ba0ea68017b489b0a461abbd375f319dc7a48f3.tar.gz
mtest: set MSAN_OPTIONS to abort by default
Followup to 7b7d2e060b447de9c2642848847370a58711ac1c which handles ASAN and UBSAN. It turns out that MSAN needs the same treatment. I've checked other sanitizers like HWASAN and TSAN - it looks like they may both need it too, but Meson doesn't currently suppose those anyway (see https://github.com/mesonbuild/meson/pull/12648). Signed-off-by: Sam James <sam@gentoo.org> Signed-off-by: Eli Schwartz <eschwartz93@gmail.com>
Diffstat (limited to 'docs')
-rw-r--r--docs/markdown/Unit-tests.md8
-rw-r--r--docs/markdown/snippets/sanitizers_test.md6
-rw-r--r--docs/yaml/functions/test.yaml7
3 files changed, 14 insertions, 7 deletions
diff --git a/docs/markdown/Unit-tests.md b/docs/markdown/Unit-tests.md
index 7ad95d264..dc509a818 100644
--- a/docs/markdown/Unit-tests.md
+++ b/docs/markdown/Unit-tests.md
@@ -38,11 +38,11 @@ set to a random value between 1..255. This can help find memory leaks on
configurations using glibc, including with non-GCC compilers. This feature
can be disabled as discussed in [[test]].
-### ASAN_OPTIONS and UBSAN_OPTIONS
+### ASAN_OPTIONS, UBSAN_OPTIONS, and MSAN_OPTIONS
-By default, the environment variables `ASAN_OPTIONS` and `UBSAN_OPTIONS` are
-set to enable aborting on detected violations and to give a backtrace. This
-feature can be disabled as discussed in [[test]].
+By default, the environment variables `ASAN_OPTIONS`, `UBSAN_OPTIONS`, and
+`MSAN_OPTIONS` are set to enable aborting on detected violations and to give a
+backtrace. This feature can be disabled as discussed in [[test]].
## Coverage
diff --git a/docs/markdown/snippets/sanitizers_test.md b/docs/markdown/snippets/sanitizers_test.md
new file mode 100644
index 000000000..de9385253
--- /dev/null
+++ b/docs/markdown/snippets/sanitizers_test.md
@@ -0,0 +1,6 @@
+## Tests now abort on errors by default under more sanitizers
+
+Sanitizers like MemorySanitizer do not abort
+by default on detected violations. Meson now exports `MSAN_OPTIONS` (in addition to
+`ASAN_OPTIONS` and `UBSAN_OPTIONS` from a previous release) when unset in the
+environment to provide sensible abort-by-default behavior.
diff --git a/docs/yaml/functions/test.yaml b/docs/yaml/functions/test.yaml
index 622b7c3b0..d56822e58 100644
--- a/docs/yaml/functions/test.yaml
+++ b/docs/yaml/functions/test.yaml
@@ -33,9 +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.
+ By default, the environment variables `ASAN_OPTIONS`, `UBSAN_OPTIONS`,
+ and `MSAN_OPTIONS` are set to enable aborting on detected violations and to
+ give a backtrace. To suppress this, `ASAN_OPTIONS`, `UBSAN_OPTIONS`, or
+ `MSAN_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,