Fix Address Sanitizer feature detection.Compile and link is not enough. Testing an empty main fails under X32
parent
d21248b995
commit
946448aba3
14
cryptest.sh
14
cryptest.sh
|
|
@ -232,20 +232,26 @@ fi
|
||||||
# Undefined Behavior sanitizer
|
# Undefined Behavior sanitizer
|
||||||
if [[ (-z "$HAVE_UBSAN") ]]; then
|
if [[ (-z "$HAVE_UBSAN") ]]; then
|
||||||
HAVE_UBSAN=0
|
HAVE_UBSAN=0
|
||||||
"$CXX" -DCRYPTOPP_ADHOC_MAIN -fsanitize=undefined adhoc.cpp -o "$TMP/adhoc.exe" > /dev/null 2>&1
|
"$CXX" -DCRYPTOPP_ADHOC_MAIN -fsanitize=undefined adhoc.cpp -o "$TMP/adhoc.exe" &>/dev/null
|
||||||
if [[ ("$?" -eq "0") && ("$IS_X86" -ne "0" || "$IS_X64" -ne "0") ]]; then
|
if [[ ("$?" -eq "0") ]]; then
|
||||||
|
"$TMP/adhoc.exe" &>/dev/null
|
||||||
|
if [[ ("$?" -eq "0") ]]; then
|
||||||
HAVE_UBSAN=1
|
HAVE_UBSAN=1
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
# Address sanitizer
|
# Address sanitizer
|
||||||
if [[ (-z "$HAVE_ASAN") ]]; then
|
if [[ (-z "$HAVE_ASAN") ]]; then
|
||||||
HAVE_ASAN=0
|
HAVE_ASAN=0
|
||||||
"$CXX" -DCRYPTOPP_ADHOC_MAIN -fsanitize=address adhoc.cpp -o "$TMP/adhoc.exe" > /dev/null 2>&1
|
"$CXX" -DCRYPTOPP_ADHOC_MAIN -fsanitize=address adhoc.cpp -o "$TMP/adhoc.exe" &>/dev/null
|
||||||
if [[ ("$?" -eq "0") && ("$IS_X86" -ne "0" || "$IS_X64" -ne "0") ]]; then
|
if [[ ("$?" -eq "0") ]]; then
|
||||||
|
"$TMP/adhoc.exe" &>/dev/null
|
||||||
|
if [[ ("$?" -eq "0") ]]; then
|
||||||
HAVE_ASAN=1
|
HAVE_ASAN=1
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
# Darwin and Intel multiarch
|
# Darwin and Intel multiarch
|
||||||
if [[ (-z "$HAVE_INTEL_MULTIARCH") ]]; then
|
if [[ (-z "$HAVE_INTEL_MULTIARCH") ]]; then
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue