diff options
author | Ivan Poddubny <ivan.poddubny@gmail.com> | 2015-10-10 23:20:55 +0300 |
---|---|---|
committer | Ivan Poddubny <ivan.poddubny@gmail.com> | 2015-10-10 23:21:34 +0300 |
commit | a12eb89ea4506830037df3eaf270a1208d64fbeb (patch) | |
tree | 8a57cf618af114cbac2ab37062bf2ff0e26aac8a /build_tools | |
parent | 7b2afcc92f320b45bf069cff7a0a2d6b25c8036a (diff) |
Build: Add menuselect options for using compiler sanitizers
This patch adds menuselect options for building Asterisk with
various sanitizers provided by gcc and clang.
When one of *SANITIZER flags is set in menuselect, the appropriate
option is added to CFLAGS ad LDFLAGS for the build.
Information on sanitizers in the project wiki:
https://github.com/google/sanitizers/wiki
GCC Manual:
https://gcc.gnu.org/onlinedocs/gcc/Debugging-Options.html
Clang Compiler User's Manual:
http://clang.llvm.org/docs/UsersManual.html#controlling-code-generation
ASTERISK-24718 #close
Reported by: Badalian Vyacheslav
Change-Id: Iafa51b792b7bcb20e848b99d16cf362d08590fa0
Diffstat (limited to 'build_tools')
-rw-r--r-- | build_tools/cflags.xml | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/build_tools/cflags.xml b/build_tools/cflags.xml index b91cf5af5..43f7d5612 100644 --- a/build_tools/cflags.xml +++ b/build_tools/cflags.xml @@ -84,6 +84,34 @@ <conflict>MALLOC_DEBUG</conflict> <support_level>core</support_level> </member> + <member name="ADDRESS_SANITIZER" displayname="Address Sanitizer"> + <support_level>extended</support_level> + <conflict>THREAD_SANITIZER</conflict> + <conflict>LEAK_SANITIZER</conflict> + <conflict>UNDEFINED_SANITIZER</conflict> + <conflict>MALLOC_DEBUG</conflict> + <conflict>DEBUG_CHAOS</conflict> + </member> + <member name="THREAD_SANITIZER" displayname="Thread Sanitizer"> + <support_level>extended</support_level> + <conflict>ADDRESS_SANITIZER</conflict> + <conflict>LEAK_SANITIZER</conflict> + <conflict>UNDEFINED_SANITIZER</conflict> + </member> + <member name="LEAK_SANITIZER" displayname="Leak Sanitizer"> + <support_level>extended</support_level> + <conflict>ADDRESS_SANITIZER</conflict> + <conflict>THREAD_SANITIZER</conflict> + <conflict>UNDEFINED_SANITIZER</conflict> + <conflict>MALLOC_DEBUG</conflict> + <conflict>DEBUG_CHAOS</conflict> + </member> + <member name="UNDEFINED_SANITIZER" displayname="Undefined Behavior Sanitizer"> + <support_level>extended</support_level> + <conflict>ADDRESS_SANITIZER</conflict> + <conflict>THREAD_SANITIZER</conflict> + <conflict>LEAK_SANITIZER</conflict> + </member> <member name="BUSYDETECT_TONEONLY" displayname="Enable additional comparision of only the tone duration not the silence part"> <conflict>BUSYDETECT_COMPARE_TONE_AND_SILENCE</conflict> <defaultenabled>no</defaultenabled> |