summaryrefslogtreecommitdiff
path: root/build_tools
diff options
context:
space:
mode:
authorIvan Poddubny <ivan.poddubny@gmail.com>2015-10-10 23:20:55 +0300
committerIvan Poddubny <ivan.poddubny@gmail.com>2015-10-12 13:31:32 -0500
commit486b172b50ae5b525d03ea7467bdb4ffa7ad90fd (patch)
tree2c53eb70d40f715f7874d98cfe9a8676d6c85915 /build_tools
parent1c799b1f1ecc37b7fb39dd205a35720e16fe37d7 (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.xml28
1 files changed, 28 insertions, 0 deletions
diff --git a/build_tools/cflags.xml b/build_tools/cflags.xml
index 1a2e78ff8..d11fb22e5 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>