scons: Enable building with the gcc/clang Address Sanitizer

Allow the user to easily build gem5 with the Address Sanitizer, part
of both gcc and clang these days.
This commit is contained in:
Andreas Hansson
2016-02-17 03:56:20 -05:00
parent 0d50979888
commit a34ff350da
2 changed files with 15 additions and 2 deletions

View File

@@ -194,6 +194,8 @@ AddLocalOption('--without-tcmalloc', dest='without_tcmalloc',
help='Disable linking against tcmalloc')
AddLocalOption('--with-ubsan', dest='with_ubsan', action='store_true',
help='Build with Undefined Behavior Sanitizer if available')
AddLocalOption('--with-asan', dest='with_asan', action='store_true',
help='Build with Address Sanitizer if available')
termcap = get_termcap(GetOption('use_colors'))
@@ -209,6 +211,7 @@ use_vars = set([ 'AS', 'AR', 'CC', 'CXX', 'HOME', 'LD_LIBRARY_PATH',
'PYTHONPATH', 'RANLIB', 'SWIG', 'TERM' ])
use_prefixes = [
"ASAN_", # address sanitizer symbolizer path and settings
"CCACHE_", # ccache (caching compiler wrapper) configuration
"CCC_", # clang static analyzer configuration
"DISTCC_", # distcc (distributed compiler wrapper) configuration