Skip to content

Commit

Permalink
docs: updated developer notes for --with-sanitizers to -DSANITIZERS a…
Browse files Browse the repository at this point in the history
…nd removed resource for -fsanitze flags
  • Loading branch information
kevkevinpal committed Sep 11, 2024
1 parent 0725a37 commit 4b1ce3c
Showing 1 changed file with 4 additions and 5 deletions.
9 changes: 4 additions & 5 deletions doc/developer-notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -555,7 +555,7 @@ See the functional test documentation for how to invoke perf within tests.
Bitcoin Core can be compiled with various "sanitizers" enabled, which add
instrumentation for issues regarding things like memory safety, thread race
conditions, or undefined behavior. This is controlled with the
`--with-sanitizers` configure flag, which should be a comma separated list of
`-DSANITIZERS` cmake build flag, which should be a comma separated list of
sanitizers to enable. The sanitizer list should correspond to supported
`-fsanitize=` options in your compiler. These sanitizers have runtime overhead,
so they are most useful when testing changes or producing debugging builds.
Expand All @@ -564,10 +564,10 @@ Some examples:

```bash
# Enable both the address sanitizer and the undefined behavior sanitizer
./configure --with-sanitizers=address,undefined
cmake -B build -DSANITIZERS=address,undefined

# Enable the thread sanitizer
./configure --with-sanitizers=thread
cmake -B build -DSANITIZERS=thread
```

If you are compiling with GCC you will typically need to install corresponding
Expand All @@ -589,7 +589,7 @@ See the CI config for more examples, and upstream documentation for more informa
about any additional options.

Not all sanitizer options can be enabled at the same time, e.g. trying to build
with `--with-sanitizers=address,thread` will fail in the configure script as
with `-DSANITIZERS=address,thread` will fail in the configure script as
these sanitizers are mutually incompatible. Refer to your compiler manual to
learn more about these options and which sanitizers are supported by your
compiler.
Expand All @@ -603,7 +603,6 @@ Additional resources:
* [UndefinedBehaviorSanitizer](https://clang.llvm.org/docs/UndefinedBehaviorSanitizer.html)
* [GCC Instrumentation Options](https://gcc.gnu.org/onlinedocs/gcc/Instrumentation-Options.html)
* [Google Sanitizers Wiki](https://github.com/google/sanitizers/wiki)
* [Issue #12691: Enable -fsanitize flags in Travis](https://github.com/bitcoin/bitcoin/issues/12691)

Locking/mutex usage notes
-------------------------
Expand Down

0 comments on commit 4b1ce3c

Please sign in to comment.