Issue #21037: Add a build option to enable AddressSanitizer support.
This commit is contained in:
parent
ef8f7792f3
commit
d30b022b5e
|
@ -347,6 +347,8 @@ IDLE
|
||||||
Build
|
Build
|
||||||
-----
|
-----
|
||||||
|
|
||||||
|
- Issue #21037: Add a build option to enable AddressSanitizer support.
|
||||||
|
|
||||||
- The Windows build now includes OpenSSL 1.0.1g
|
- The Windows build now includes OpenSSL 1.0.1g
|
||||||
|
|
||||||
- Issue #19962: The Windows build process now creates "python.bat" in the
|
- Issue #19962: The Windows build process now creates "python.bat" in the
|
||||||
|
|
|
@ -796,6 +796,7 @@ enable_shared
|
||||||
enable_profiling
|
enable_profiling
|
||||||
with_pydebug
|
with_pydebug
|
||||||
with_hash_algorithm
|
with_hash_algorithm
|
||||||
|
with_address_sanitizer
|
||||||
with_libs
|
with_libs
|
||||||
with_system_expat
|
with_system_expat
|
||||||
with_system_ffi
|
with_system_ffi
|
||||||
|
@ -1472,6 +1473,8 @@ Optional Packages:
|
||||||
--with-pydebug build with Py_DEBUG defined
|
--with-pydebug build with Py_DEBUG defined
|
||||||
--with-hash-algorithm=[fnv|siphash24]
|
--with-hash-algorithm=[fnv|siphash24]
|
||||||
select hash algorithm
|
select hash algorithm
|
||||||
|
--with-address-sanitizer
|
||||||
|
enable AddressSanitizer
|
||||||
--with-libs='lib1 ...' link against additional libs
|
--with-libs='lib1 ...' link against additional libs
|
||||||
--with-system-expat build pyexpat module using an installed expat
|
--with-system-expat build pyexpat module using an installed expat
|
||||||
library
|
library
|
||||||
|
@ -9154,6 +9157,23 @@ $as_echo "default" >&6; }
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-address-sanitizer" >&5
|
||||||
|
$as_echo_n "checking for --with-address-sanitizer... " >&6; }
|
||||||
|
|
||||||
|
# Check whether --with-address_sanitizer was given.
|
||||||
|
if test "${with_address_sanitizer+set}" = set; then :
|
||||||
|
withval=$with_address_sanitizer;
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $withval" >&5
|
||||||
|
$as_echo "$withval" >&6; }
|
||||||
|
BASECFLAGS="-fsanitize=address -fno-omit-frame-pointer $BASECFLAGS"
|
||||||
|
LDFLAGS="-fsanitize=address $LDFLAGS"
|
||||||
|
|
||||||
|
else
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||||
|
$as_echo "no" >&6; }
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
# Most SVR4 platforms (e.g. Solaris) need -lsocket and -lnsl.
|
# Most SVR4 platforms (e.g. Solaris) need -lsocket and -lnsl.
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for t_open in -lnsl" >&5
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for t_open in -lnsl" >&5
|
||||||
$as_echo_n "checking for t_open in -lnsl... " >&6; }
|
$as_echo_n "checking for t_open in -lnsl... " >&6; }
|
||||||
|
|
11
configure.ac
11
configure.ac
|
@ -2314,6 +2314,17 @@ esac
|
||||||
],
|
],
|
||||||
[AC_MSG_RESULT(default)])
|
[AC_MSG_RESULT(default)])
|
||||||
|
|
||||||
|
AC_MSG_CHECKING(for --with-address-sanitizer)
|
||||||
|
AC_ARG_WITH(address_sanitizer,
|
||||||
|
AS_HELP_STRING([--with-address-sanitizer],
|
||||||
|
[enable AddressSanitizer]),
|
||||||
|
[
|
||||||
|
AC_MSG_RESULT($withval)
|
||||||
|
BASECFLAGS="-fsanitize=address -fno-omit-frame-pointer $BASECFLAGS"
|
||||||
|
LDFLAGS="-fsanitize=address $LDFLAGS"
|
||||||
|
],
|
||||||
|
[AC_MSG_RESULT(no)])
|
||||||
|
|
||||||
# Most SVR4 platforms (e.g. Solaris) need -lsocket and -lnsl.
|
# Most SVR4 platforms (e.g. Solaris) need -lsocket and -lnsl.
|
||||||
AC_CHECK_LIB(nsl, t_open, [LIBS="-lnsl $LIBS"]) # SVR4
|
AC_CHECK_LIB(nsl, t_open, [LIBS="-lnsl $LIBS"]) # SVR4
|
||||||
AC_CHECK_LIB(socket, socket, [LIBS="-lsocket $LIBS"], [], $LIBS) # SVR4 sockets
|
AC_CHECK_LIB(socket, socket, [LIBS="-lsocket $LIBS"], [], $LIBS) # SVR4 sockets
|
||||||
|
|
Loading…
Reference in New Issue