First Commit
This commit is contained in:
147
externals/cryptopp/TestScripts/cryptest-autotools.sh
vendored
Normal file
147
externals/cryptopp/TestScripts/cryptest-autotools.sh
vendored
Normal file
@@ -0,0 +1,147 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#############################################################################
|
||||
#
|
||||
# This script tests the Autotools gear.
|
||||
#
|
||||
# Written and placed in public domain by Jeffrey Walton.
|
||||
#
|
||||
# Crypto++ Library is copyrighted as a compilation and (as of version 5.6.2)
|
||||
# licensed under the Boost Software License 1.0, while the individual files
|
||||
# in the compilation are all public domain.
|
||||
#
|
||||
# See https://www.cryptopp.com/wiki/Autotools for more details
|
||||
#
|
||||
#############################################################################
|
||||
|
||||
if ! command -v wget >/dev/null 2>&1; then
|
||||
if ! command -v curl >/dev/null 2>&1; then
|
||||
echo "wget and curl not found. Things will fail"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
#############################################################################
|
||||
|
||||
# Default tools
|
||||
GREP=grep
|
||||
SED=sed
|
||||
AWK=awk
|
||||
MAKE=make
|
||||
|
||||
# Fixup, Solaris and friends
|
||||
if [ -d /usr/xpg4/bin ]; then
|
||||
SED=/usr/xpg4/bin/sed
|
||||
AWK=/usr/xpg4/bin/awk
|
||||
GREP=/usr/xpg4/bin/grep
|
||||
elif [ -d /usr/bin/posix ]; then
|
||||
SED=/usr/bin/posix/sed
|
||||
AWK=/usr/bin/posix/awk
|
||||
GREP=/usr/bin/posix/grep
|
||||
fi
|
||||
|
||||
if command -v wget >/dev/null 2>&1; then
|
||||
FETCH_CMD="wget -q -O"
|
||||
elif command -v curl >/dev/null 2>&1; then
|
||||
FETCH_CMD="curl -L -s -o"
|
||||
else
|
||||
FETCH_CMD="curl-and-wget-not-found"
|
||||
fi
|
||||
|
||||
# Fixup for sed and "illegal byte sequence"
|
||||
IS_DARWIN=`uname -s 2>&1 | "$GREP" -i -c darwin`
|
||||
if [ "$IS_DARWIN" -ne 0 ]; then
|
||||
LC_ALL=C; export LC_ALL
|
||||
fi
|
||||
|
||||
# Fixup for Solaris and BSDs
|
||||
if [ command -v gmake >/dev/null 2>&1 ]; then
|
||||
MAKE=gmake
|
||||
fi
|
||||
|
||||
#############################################################################
|
||||
|
||||
files=(bootstrap.sh configure.ac Makefile.am libcryptopp.pc.in)
|
||||
|
||||
for file in "${files[@]}"; do
|
||||
echo "Downloading $file"
|
||||
if ! ${FETCH_CMD} "$file" "https://raw.githubusercontent.com/noloader/cryptopp-autotools/master/$file"; then
|
||||
echo "$file download failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if file "$file" | $GREP -q 'executable'; then
|
||||
chmod +x "$file"
|
||||
fi
|
||||
|
||||
# Throttle
|
||||
sleep 1
|
||||
done
|
||||
|
||||
if [ "$IS_DARWIN" -ne 0 ] && [ command -v xattr >/dev/null 2>&1 ]; then
|
||||
echo "Removing bootstrap.sh quarantine"
|
||||
xattr -d "com.apple.quarantine" bootstrap.sh >/dev/null 2>&1
|
||||
fi
|
||||
|
||||
#############################################################################
|
||||
|
||||
echo "Running bootstrap"
|
||||
echo ""
|
||||
|
||||
if ! ./bootstrap.sh; then
|
||||
echo "bootstrap failed."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
#############################################################################
|
||||
|
||||
echo "Running configure"
|
||||
echo ""
|
||||
|
||||
if ! ./configure; then
|
||||
echo "configure failed."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
#############################################################################
|
||||
|
||||
echo ""
|
||||
echo "Building test artifacts"
|
||||
echo ""
|
||||
|
||||
${MAKE} clean >/dev/null 2>&1
|
||||
|
||||
if ! ${MAKE} -j2 -f Makefile; then
|
||||
echo "make failed."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
#############################################################################
|
||||
|
||||
echo ""
|
||||
echo "Testing library"
|
||||
echo ""
|
||||
|
||||
if ! ./cryptest v; then
|
||||
echo "cryptest v failed."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if ! ./cryptest tv all; then
|
||||
echo "cryptest tv all failed."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
#############################################################################
|
||||
|
||||
echo ""
|
||||
echo "Building tarball"
|
||||
echo ""
|
||||
|
||||
if ! make dist; then
|
||||
echo "make dist failed."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Return success
|
||||
exit 0
|
||||
Reference in New Issue
Block a user