Cleanup cryptest.sh a bit
parent
5dcf3e8554
commit
9df87dc7d4
|
|
@ -88,9 +88,10 @@ elif [[ (-d /usr/bin/posix) ]]; then
|
|||
fi
|
||||
|
||||
# Fixup, Solaris and BSDs
|
||||
GMAKE=$(which gmake 2>/dev/null | "$GREP" -v "no gmake" | head -1)
|
||||
if [[ ! -z "$GMAKE" ]]; then
|
||||
MAKE=$GMAKE
|
||||
if [[ $(command -v gmake 2>/dev/null) ]]; then
|
||||
MAKE="gmake"
|
||||
else
|
||||
MAKE="make"
|
||||
fi
|
||||
|
||||
THIS_SYSTEM=$(uname -s 2>&1)
|
||||
|
|
@ -172,33 +173,33 @@ done
|
|||
# mis-detections occur on a number of platforms.
|
||||
if [[ ((-z "$CXX") || ("$CXX" == "gcc")) ]]; then
|
||||
if [[ ("$CXX" == "gcc") ]]; then
|
||||
CXX=g++
|
||||
CXX="g++"
|
||||
elif [[ "$IS_DARWIN" -ne "0" ]]; then
|
||||
CXX=c++
|
||||
CXX="c++"
|
||||
elif [[ "$IS_SOLARIS" -ne "0" ]]; then
|
||||
if [[ (-e "/opt/developerstudio12.5/bin/CC") ]]; then
|
||||
CXX=/opt/developerstudio12.5/bin/CC
|
||||
CXX="/opt/developerstudio12.5/bin/CC"
|
||||
elif [[ (-e "/opt/solarisstudio12.4/bin/CC") ]]; then
|
||||
CXX=/opt/solarisstudio12.4/bin/CC
|
||||
CXX="/opt/solarisstudio12.4/bin/CC"
|
||||
elif [[ (-e "/opt/solarisstudio12.3/bin/CC") ]]; then
|
||||
CXX=/opt/solarisstudio12.3/bin/CC
|
||||
CXX="/opt/solarisstudio12.3/bin/CC"
|
||||
elif [[ (-e "/opt/solstudio12.2/bin/CC") ]]; then
|
||||
CXX=/opt/solstudio12.2/bin/CC
|
||||
CXX="/opt/solstudio12.2/bin/CC"
|
||||
elif [[ (-e "/opt/solstudio12.1/bin/CC") ]]; then
|
||||
CXX=/opt/solstudio12.1/bin/CC
|
||||
CXX="/opt/solstudio12.1/bin/CC"
|
||||
elif [[ (-e "/opt/solstudio12.0/bin/CC") ]]; then
|
||||
CXX=/opt/solstudio12.0/bin/CC
|
||||
elif [[ (! -z $(which CC 2>/dev/null | "$GREP" -v "no CC" | head -1)) ]]; then
|
||||
CXX=$(which CC | head -1)
|
||||
elif [[ (! -z $(which g++ 2>/dev/null | "$GREP" -v "no g++" | head -1)) ]]; then
|
||||
CXX=$(which g++ | head -1)
|
||||
CXX="/opt/solstudio12.0/bin/CC"
|
||||
elif [[ $(command -v CC 2>/dev/null) ]]; then
|
||||
CXX="CC"
|
||||
elif [[ $(command -v g++ 2>/dev/null) ]]; then
|
||||
CXX="g++"
|
||||
else
|
||||
CXX=CC
|
||||
fi
|
||||
elif [[ ($(which g++ 2>&1 | "$GREP" -v "no g++" | "$GREP" -i -c g++) -ne "0") ]]; then
|
||||
CXX=g++
|
||||
elif [[ $(command -v g++ 2>/dev/null) ]]; then
|
||||
CXX="g++"
|
||||
else
|
||||
CXX=c++
|
||||
CXX="c++"
|
||||
fi
|
||||
fi
|
||||
|
||||
|
|
@ -239,7 +240,7 @@ fi
|
|||
|
||||
# GCC compile farm is mounted RO
|
||||
if [[ (-z "$TMPDIR") ]]; then
|
||||
if [[ (-d "/tmp") ]] && [[ `touch "/tmp/ok-to-delete" &>/dev/null` ]]; then
|
||||
if [[ (-d "/tmp") ]] && [[ $(touch "/tmp/ok-to-delete" &>/dev/null) ]]; then
|
||||
TMPDIR=/tmp
|
||||
elif [[ (-d "/temp") ]]; then
|
||||
TMPDIR=/temp
|
||||
|
|
@ -247,7 +248,7 @@ if [[ (-z "$TMPDIR") ]]; then
|
|||
TMPDIR="$HOME/tmp"
|
||||
else
|
||||
echo "Please set TMPDIR to a valid directory"
|
||||
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
|
||||
[[ "$0" = "${BASH_SOURCE[0]}" ]] && exit 1 || return 1
|
||||
fi
|
||||
fi
|
||||
|
||||
|
|
@ -588,8 +589,8 @@ fi
|
|||
# ld-gold linker testing
|
||||
if [[ (-z "$HAVE_LDGOLD") ]]; then
|
||||
HAVE_LDGOLD=0
|
||||
LD_GOLD=$(which ld.gold 2>&1 | "$GREP" -v "no ld.gold" | head -1)
|
||||
ELF_FILE=$(which file 2>&1 | "$GREP" -v "no file" | head -1)
|
||||
LD_GOLD=$(command -v ld.gold 2>/dev/null)
|
||||
ELF_FILE=$(command -v file 2>/dev/null)
|
||||
if [[ (! -z "$LD_GOLD") && (! -z "$ELF_FILE") ]]; then
|
||||
LD_GOLD=$(file "$LD_GOLD" | cut -d":" -f 2 | "$GREP" -i -c "elf")
|
||||
if [[ ("$LD_GOLD" -ne "0") ]]; then
|
||||
|
|
@ -656,22 +657,28 @@ fi
|
|||
|
||||
# Valgrind testing of C++03, C++11, C++14 and C++17 binaries. Valgrind tests take a long time...
|
||||
if [[ (-z "$HAVE_VALGRIND") ]]; then
|
||||
HAVE_VALGRIND=$(which valgrind 2>&1 | "$GREP" -v "no valgrind" | "$GREP" -i -c valgrind)
|
||||
if [[ $(command -v CC 2>/dev/null) ]]; then
|
||||
HAVE_VALGRIND=1
|
||||
fi
|
||||
fi
|
||||
|
||||
# Try to find a symbolizer for Asan
|
||||
if [[ (-z "$HAVE_SYMBOLIZE") && (! -z "$ASAN_SYMBOLIZER_PATH") ]]; then
|
||||
# Sets default value
|
||||
HAVE_SYMBOLIZE=$(which asan_symbolize 2>&1 | "$GREP" -v "no asan_symbolize" | "$GREP" -i -c "asan_symbolize")
|
||||
if [[ $(command -v asan_symbolize 2>/dev/null) ]]; then
|
||||
HAVE_SYMBOLIZE=1
|
||||
fi
|
||||
if [[ (("$HAVE_SYMBOLIZE" -ne "0") && (-z "$ASAN_SYMBOLIZE")) ]]; then
|
||||
ASAN_SYMBOLIZE=asan_symbolize
|
||||
fi
|
||||
|
||||
# Clang implicitly uses ASAN_SYMBOLIZER_PATH; set it if its not set.
|
||||
if [[ (-z "$ASAN_SYMBOLIZER_PATH") ]]; then
|
||||
LLVM_SYMBOLIZER_FOUND=$(which llvm-symbolizer 2>&1 | "$GREP" -v "no llvm-symbolizer" | "$GREP" -i -c llvm-symbolizer)
|
||||
if [[ $(command -v llvm-symbolizer 2>/dev/null) ]]; then
|
||||
LLVM_SYMBOLIZER_FOUND=1;
|
||||
fi
|
||||
if [[ ("$LLVM_SYMBOLIZER_FOUND" -ne "0") ]]; then
|
||||
export ASAN_SYMBOLIZER_PATH=$(which llvm-symbolizer)
|
||||
export ASAN_SYMBOLIZER_PATH=$(command -v llvm-symbolizer)
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
|
@ -917,7 +924,7 @@ else
|
|||
echo "Compiler:" $("$CXX" --version | head -1) | tee -a "$TEST_RESULTS"
|
||||
fi
|
||||
|
||||
CXX_PATH=$(which "$CXX")
|
||||
CXX_PATH=$(command -v "$CXX" 2>/dev/null)
|
||||
CXX_SYMLINK=$(ls -l "$CXX_PATH" 2>/dev/null | "$GREP" -c '\->' | "$AWK" '{print $1}')
|
||||
if [[ ("$CXX_SYMLINK" -ne "0") ]]; then CXX_PATH="$CXX_PATH (symlinked)"; fi
|
||||
echo "Pathname: $CXX_PATH" | tee -a "$TEST_RESULTS"
|
||||
|
|
@ -5155,7 +5162,7 @@ fi
|
|||
# This check was added after testing on Ubuntu 14.04 with Clang 3.4.
|
||||
if [[ ("$CLANG_COMPILER" -eq "0") ]]; then
|
||||
|
||||
CLANG_CXX=$(which clang++ 2>&1 | "$GREP" -v "no clang++" | head -1)
|
||||
CLANG_CXX=$(command -v clang++ 2>/dev/null)
|
||||
"$CLANG_CXX" -x c++ -DCRYPTOPP_ADHOC_MAIN adhoc.cpp.proto -o "$TMPDIR/adhoc.exe" > /dev/null 2>&1
|
||||
if [[ "$?" -eq "0" ]]; then
|
||||
|
||||
|
|
@ -5190,7 +5197,7 @@ fi
|
|||
# Perform a quick check with GCC, if available.
|
||||
if [[ ("$GCC_COMPILER" -eq "0") ]]; then
|
||||
|
||||
GCC_CXX=$(which g++ 2>&1 | "$GREP" -v "no g++" | head -1)
|
||||
GCC_CXX=$(command -v g++ 2>/dev/null)
|
||||
"$GCC_CXX" -x c++ -DCRYPTOPP_ADHOC_MAIN adhoc.cpp.proto -o "$TMPDIR/adhoc.exe" > /dev/null 2>&1
|
||||
if [[ "$?" -eq "0" ]]; then
|
||||
|
||||
|
|
@ -5225,7 +5232,7 @@ fi
|
|||
# Perform a quick check with Intel ICPC, if available.
|
||||
if [[ ("$INTEL_COMPILER" -eq "0") ]]; then
|
||||
|
||||
INTEL_CXX=$(which icpc 2>&1 | "$GREP" -v "no icpc" | head -1)
|
||||
ICPC_CXX=$(command -v icpc++ 2>/dev/null)
|
||||
if [[ (-z "$INTEL_CXX") ]]; then
|
||||
INTEL_CXX=$(find /opt/intel -name icpc 2>/dev/null | "$GREP" -iv composer | head -1)
|
||||
fi
|
||||
|
|
@ -5751,7 +5758,7 @@ echo
|
|||
############################################
|
||||
# http://tldp.org/LDP/abs/html/exitcodes.html#EXITCODESREF
|
||||
if (( "$ECOUNT" == "0" )); then
|
||||
[[ "$0" = "$BASH_SOURCE" ]] && exit 0 || return 0
|
||||
[[ "$0" = "${BASH_SOURCE[0]}" ]] && exit 0 || return 0
|
||||
else
|
||||
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
|
||||
[[ "$0" = "${BASH_SOURCE[0]}" ]] && exit 1 || return 1
|
||||
fi
|
||||
|
|
|
|||
71
cryptest.sh
71
cryptest.sh
|
|
@ -88,9 +88,10 @@ elif [[ (-d /usr/bin/posix) ]]; then
|
|||
fi
|
||||
|
||||
# Fixup, Solaris and BSDs
|
||||
GMAKE=$(which gmake 2>/dev/null | "$GREP" -v "no gmake" | head -1)
|
||||
if [[ ! -z "$GMAKE" ]]; then
|
||||
MAKE=$GMAKE
|
||||
if [[ $(command -v gmake 2>/dev/null) ]]; then
|
||||
MAKE="gmake"
|
||||
else
|
||||
MAKE="make"
|
||||
fi
|
||||
|
||||
THIS_SYSTEM=$(uname -s 2>&1)
|
||||
|
|
@ -172,33 +173,33 @@ done
|
|||
# mis-detections occur on a number of platforms.
|
||||
if [[ ((-z "$CXX") || ("$CXX" == "gcc")) ]]; then
|
||||
if [[ ("$CXX" == "gcc") ]]; then
|
||||
CXX=g++
|
||||
CXX="g++"
|
||||
elif [[ "$IS_DARWIN" -ne "0" ]]; then
|
||||
CXX=c++
|
||||
CXX="c++"
|
||||
elif [[ "$IS_SOLARIS" -ne "0" ]]; then
|
||||
if [[ (-e "/opt/developerstudio12.5/bin/CC") ]]; then
|
||||
CXX=/opt/developerstudio12.5/bin/CC
|
||||
CXX="/opt/developerstudio12.5/bin/CC"
|
||||
elif [[ (-e "/opt/solarisstudio12.4/bin/CC") ]]; then
|
||||
CXX=/opt/solarisstudio12.4/bin/CC
|
||||
CXX="/opt/solarisstudio12.4/bin/CC"
|
||||
elif [[ (-e "/opt/solarisstudio12.3/bin/CC") ]]; then
|
||||
CXX=/opt/solarisstudio12.3/bin/CC
|
||||
CXX="/opt/solarisstudio12.3/bin/CC"
|
||||
elif [[ (-e "/opt/solstudio12.2/bin/CC") ]]; then
|
||||
CXX=/opt/solstudio12.2/bin/CC
|
||||
CXX="/opt/solstudio12.2/bin/CC"
|
||||
elif [[ (-e "/opt/solstudio12.1/bin/CC") ]]; then
|
||||
CXX=/opt/solstudio12.1/bin/CC
|
||||
CXX="/opt/solstudio12.1/bin/CC"
|
||||
elif [[ (-e "/opt/solstudio12.0/bin/CC") ]]; then
|
||||
CXX=/opt/solstudio12.0/bin/CC
|
||||
elif [[ (! -z $(which CC 2>/dev/null | "$GREP" -v "no CC" | head -1)) ]]; then
|
||||
CXX=$(which CC | head -1)
|
||||
elif [[ (! -z $(which g++ 2>/dev/null | "$GREP" -v "no g++" | head -1)) ]]; then
|
||||
CXX=$(which g++ | head -1)
|
||||
CXX="/opt/solstudio12.0/bin/CC"
|
||||
elif [[ $(command -v CC 2>/dev/null) ]]; then
|
||||
CXX="CC"
|
||||
elif [[ $(command -v g++ 2>/dev/null) ]]; then
|
||||
CXX="g++"
|
||||
else
|
||||
CXX=CC
|
||||
fi
|
||||
elif [[ ($(which g++ 2>&1 | "$GREP" -v "no g++" | "$GREP" -i -c g++) -ne "0") ]]; then
|
||||
CXX=g++
|
||||
elif [[ $(command -v g++ 2>/dev/null) ]]; then
|
||||
CXX="g++"
|
||||
else
|
||||
CXX=c++
|
||||
CXX="c++"
|
||||
fi
|
||||
fi
|
||||
|
||||
|
|
@ -239,7 +240,7 @@ fi
|
|||
|
||||
# GCC compile farm is mounted RO
|
||||
if [[ (-z "$TMPDIR") ]]; then
|
||||
if [[ (-d "/tmp") ]] && [[ `touch "/tmp/ok-to-delete" &>/dev/null` ]]; then
|
||||
if [[ (-d "/tmp") ]] && [[ $(touch "/tmp/ok-to-delete" &>/dev/null) ]]; then
|
||||
TMPDIR=/tmp
|
||||
elif [[ (-d "/temp") ]]; then
|
||||
TMPDIR=/temp
|
||||
|
|
@ -247,7 +248,7 @@ if [[ (-z "$TMPDIR") ]]; then
|
|||
TMPDIR="$HOME/tmp"
|
||||
else
|
||||
echo "Please set TMPDIR to a valid directory"
|
||||
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
|
||||
[[ "$0" = "${BASH_SOURCE[0]}" ]] && exit 1 || return 1
|
||||
fi
|
||||
fi
|
||||
|
||||
|
|
@ -588,8 +589,8 @@ fi
|
|||
# ld-gold linker testing
|
||||
if [[ (-z "$HAVE_LDGOLD") ]]; then
|
||||
HAVE_LDGOLD=0
|
||||
LD_GOLD=$(which ld.gold 2>&1 | "$GREP" -v "no ld.gold" | head -1)
|
||||
ELF_FILE=$(which file 2>&1 | "$GREP" -v "no file" | head -1)
|
||||
LD_GOLD=$(command -v ld.gold 2>/dev/null)
|
||||
ELF_FILE=$(command -v file 2>/dev/null)
|
||||
if [[ (! -z "$LD_GOLD") && (! -z "$ELF_FILE") ]]; then
|
||||
LD_GOLD=$(file "$LD_GOLD" | cut -d":" -f 2 | "$GREP" -i -c "elf")
|
||||
if [[ ("$LD_GOLD" -ne "0") ]]; then
|
||||
|
|
@ -656,22 +657,28 @@ fi
|
|||
|
||||
# Valgrind testing of C++03, C++11, C++14 and C++17 binaries. Valgrind tests take a long time...
|
||||
if [[ (-z "$HAVE_VALGRIND") ]]; then
|
||||
HAVE_VALGRIND=$(which valgrind 2>&1 | "$GREP" -v "no valgrind" | "$GREP" -i -c valgrind)
|
||||
if [[ $(command -v CC 2>/dev/null) ]]; then
|
||||
HAVE_VALGRIND=1
|
||||
fi
|
||||
fi
|
||||
|
||||
# Try to find a symbolizer for Asan
|
||||
if [[ (-z "$HAVE_SYMBOLIZE") && (! -z "$ASAN_SYMBOLIZER_PATH") ]]; then
|
||||
# Sets default value
|
||||
HAVE_SYMBOLIZE=$(which asan_symbolize 2>&1 | "$GREP" -v "no asan_symbolize" | "$GREP" -i -c "asan_symbolize")
|
||||
if [[ $(command -v asan_symbolize 2>/dev/null) ]]; then
|
||||
HAVE_SYMBOLIZE=1
|
||||
fi
|
||||
if [[ (("$HAVE_SYMBOLIZE" -ne "0") && (-z "$ASAN_SYMBOLIZE")) ]]; then
|
||||
ASAN_SYMBOLIZE=asan_symbolize
|
||||
fi
|
||||
|
||||
# Clang implicitly uses ASAN_SYMBOLIZER_PATH; set it if its not set.
|
||||
if [[ (-z "$ASAN_SYMBOLIZER_PATH") ]]; then
|
||||
LLVM_SYMBOLIZER_FOUND=$(which llvm-symbolizer 2>&1 | "$GREP" -v "no llvm-symbolizer" | "$GREP" -i -c llvm-symbolizer)
|
||||
if [[ $(command -v llvm-symbolizer 2>/dev/null) ]]; then
|
||||
LLVM_SYMBOLIZER_FOUND=1;
|
||||
fi
|
||||
if [[ ("$LLVM_SYMBOLIZER_FOUND" -ne "0") ]]; then
|
||||
export ASAN_SYMBOLIZER_PATH=$(which llvm-symbolizer)
|
||||
export ASAN_SYMBOLIZER_PATH=$(command -v llvm-symbolizer)
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
|
@ -917,7 +924,7 @@ else
|
|||
echo "Compiler:" $("$CXX" --version | head -1) | tee -a "$TEST_RESULTS"
|
||||
fi
|
||||
|
||||
CXX_PATH=$(which "$CXX")
|
||||
CXX_PATH=$(command -v "$CXX" 2>/dev/null)
|
||||
CXX_SYMLINK=$(ls -l "$CXX_PATH" 2>/dev/null | "$GREP" -c '\->' | "$AWK" '{print $1}')
|
||||
if [[ ("$CXX_SYMLINK" -ne "0") ]]; then CXX_PATH="$CXX_PATH (symlinked)"; fi
|
||||
echo "Pathname: $CXX_PATH" | tee -a "$TEST_RESULTS"
|
||||
|
|
@ -5155,7 +5162,7 @@ fi
|
|||
# This check was added after testing on Ubuntu 14.04 with Clang 3.4.
|
||||
if [[ ("$CLANG_COMPILER" -eq "0") ]]; then
|
||||
|
||||
CLANG_CXX=$(which clang++ 2>&1 | "$GREP" -v "no clang++" | head -1)
|
||||
CLANG_CXX=$(command -v clang++ 2>/dev/null)
|
||||
"$CLANG_CXX" -x c++ -DCRYPTOPP_ADHOC_MAIN adhoc.cpp.proto -o "$TMPDIR/adhoc.exe" > /dev/null 2>&1
|
||||
if [[ "$?" -eq "0" ]]; then
|
||||
|
||||
|
|
@ -5190,7 +5197,7 @@ fi
|
|||
# Perform a quick check with GCC, if available.
|
||||
if [[ ("$GCC_COMPILER" -eq "0") ]]; then
|
||||
|
||||
GCC_CXX=$(which g++ 2>&1 | "$GREP" -v "no g++" | head -1)
|
||||
GCC_CXX=$(command -v g++ 2>/dev/null)
|
||||
"$GCC_CXX" -x c++ -DCRYPTOPP_ADHOC_MAIN adhoc.cpp.proto -o "$TMPDIR/adhoc.exe" > /dev/null 2>&1
|
||||
if [[ "$?" -eq "0" ]]; then
|
||||
|
||||
|
|
@ -5225,7 +5232,7 @@ fi
|
|||
# Perform a quick check with Intel ICPC, if available.
|
||||
if [[ ("$INTEL_COMPILER" -eq "0") ]]; then
|
||||
|
||||
INTEL_CXX=$(which icpc 2>&1 | "$GREP" -v "no icpc" | head -1)
|
||||
ICPC_CXX=$(command -v icpc++ 2>/dev/null)
|
||||
if [[ (-z "$INTEL_CXX") ]]; then
|
||||
INTEL_CXX=$(find /opt/intel -name icpc 2>/dev/null | "$GREP" -iv composer | head -1)
|
||||
fi
|
||||
|
|
@ -5751,7 +5758,7 @@ echo
|
|||
############################################
|
||||
# http://tldp.org/LDP/abs/html/exitcodes.html#EXITCODESREF
|
||||
if (( "$ECOUNT" == "0" )); then
|
||||
[[ "$0" = "$BASH_SOURCE" ]] && exit 0 || return 0
|
||||
[[ "$0" = "${BASH_SOURCE[0]}" ]] && exit 0 || return 0
|
||||
else
|
||||
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
|
||||
[[ "$0" = "${BASH_SOURCE[0]}" ]] && exit 1 || return 1
|
||||
fi
|
||||
|
|
|
|||
Loading…
Reference in New Issue