57 lines
1.2 KiB
Bash
57 lines
1.2 KiB
Bash
#!/bin/sh
|
|
# This script is used for testing the build, primarily for use
|
|
# with travis, but may be used by hand as well.
|
|
|
|
set -e
|
|
set -x
|
|
|
|
# Test autoconf build
|
|
autoconf_build()
|
|
{
|
|
autoreconf -ivf
|
|
|
|
mkdir autoconf-build
|
|
cd autoconf-build
|
|
echo "Running ../configure --prefix=$(pwd)/../autoconf-install) ${opts}"
|
|
../configure --prefix=$(pwd)/../autoconf-install ${opts}
|
|
make
|
|
make install
|
|
make check
|
|
}
|
|
|
|
# Test autoconf build
|
|
cmake_build()
|
|
{
|
|
PATH="$(pwd)/tools/bin:$PATH"
|
|
if [ "$(uname -s)" = "Darwin" ]; then
|
|
PATH="$(pwd)/tools/CMake.app/Contents/bin:$PATH"
|
|
fi
|
|
mkdir cmake-build
|
|
cd cmake-build
|
|
echo "Running cmake -G "$1" -DCMAKE_BUILD_TYPE="$2" -DCMAKE_INSTALL_PREFIX=../autoconf-install ${opts} .."
|
|
cmake -G "$1" -DCMAKE_BUILD_TYPE="$2" -DCMAKE_INSTALL_PREFIX=../autoconf-install ${opts} ..
|
|
cmake --build .
|
|
cmake --build . --target install
|
|
ctest -V
|
|
}
|
|
|
|
build=$1
|
|
shift
|
|
|
|
case $build in
|
|
autoconf)
|
|
echo "Testing Autoconf build"
|
|
autoconf_build "$@"
|
|
;;
|
|
cmake)
|
|
echo "Testing CMake build"
|
|
cmake_build "$@"
|
|
;;
|
|
*)
|
|
echo "Invalid argument: \"$arg\"" >&2
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
exit 0
|