2015-09-10 21:01:57 +08:00
|
|
|
#!/bin/bash
|
|
|
|
|
2015-09-12 03:44:22 +08:00
|
|
|
# Make the script fails on any command error
|
|
|
|
set -e
|
2015-09-10 21:01:57 +08:00
|
|
|
|
|
|
|
# Install cpp-coveralls only if OS==linux and CC==gcc
|
|
|
|
if [ "${TRAVIS_COVERALLS}" = "ON" ] \
|
|
|
|
&& [ "${TRAVIS_OS_NAME}" = "linux" ] \
|
|
|
|
&& [ "${CC}" = "gcc" ];
|
|
|
|
then
|
|
|
|
export PYTHONUSERBASE=`pwd`/pip;
|
|
|
|
pip install --user cpp-coveralls;
|
|
|
|
else
|
|
|
|
export TRAVIS_COVERALLS=OFF;
|
|
|
|
fi
|
|
|
|
echo TRAVIS_COVERALLS=$TRAVIS_COVERALLS
|
|
|
|
|
2016-01-14 16:36:36 +08:00
|
|
|
# CMake options as environment variables
|
2016-01-14 00:21:15 +08:00
|
|
|
if [ -n "${TRAVIS_GCC_VERSION}" ]; then
|
2016-01-14 16:36:36 +08:00
|
|
|
export CC=gcc-$TRAVIS_GCC_VERSION;
|
|
|
|
export CXX=g++-$TRAVIS_GCC_VERSION;
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ -z "${TRAVIS_SHARED_LIBS}" ]; then
|
|
|
|
export TRAVIS_SHARED_LIBS=OFF;
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ -z "${TRAVIS_STRICT_C90}" ]; then
|
|
|
|
export TRAVIS_STRICT_C90=OFF;
|
2016-01-14 00:21:15 +08:00
|
|
|
fi
|
|
|
|
|
2016-06-14 23:25:14 +08:00
|
|
|
if [ -z "${TRAVIS_FLOAT2STR_LIB}" ]; then
|
|
|
|
export TRAVIS_FLOAT2STR_LIB=std;
|
|
|
|
fi
|
|
|
|
|
2016-01-14 16:36:36 +08:00
|
|
|
# Run CMake
|
|
|
|
mkdir build && cd build
|
|
|
|
cmake --version
|
|
|
|
|
2015-09-10 21:01:57 +08:00
|
|
|
cmake .. -G "Unix Makefiles" \
|
|
|
|
-DCMAKE_DEBUG_POSTFIX=_d \
|
|
|
|
-DCMAKE_BUILD_TYPE=$TRAVIS_BUILD_TYPE \
|
|
|
|
-DCMAKE_INSTALL_PREFIX=../install \
|
|
|
|
-DGMIO_BUILD_SHARED_LIBS=$TRAVIS_SHARED_LIBS \
|
|
|
|
-DGMIO_BUILD_STRICT_C90=$TRAVIS_STRICT_C90 \
|
2016-03-08 17:14:40 +08:00
|
|
|
-DGMIO_BUILD_EXAMPLES=ON \
|
|
|
|
-DGMIO_BUILD_BENCHMARKS=ON \
|
|
|
|
-DGMIO_BUILD_BENCHMARK_ASSIMP=OFF \
|
|
|
|
-DGMIO_BUILD_BENCHMARK_OPENCASCADE=OFF \
|
2015-09-10 21:01:57 +08:00
|
|
|
-DGMIO_BUILD_TESTS_FAKE_SUPPORT=ON \
|
2016-06-14 23:25:14 +08:00
|
|
|
-DGMIO_BUILD_TESTS_COVERAGE=$TRAVIS_COVERALLS \
|
|
|
|
-DGMIO_FLOAT2STR_LIB=$TRAVIS_FLOAT2STR_LIB
|
2015-09-10 21:01:57 +08:00
|
|
|
|
|
|
|
# Make
|
|
|
|
make -j4
|
|
|
|
make install
|
2016-01-14 16:36:36 +08:00
|
|
|
make check # Unit tests
|
2015-09-10 21:01:57 +08:00
|
|
|
|
|
|
|
# Coveralls
|
|
|
|
if [ "${TRAVIS_COVERALLS}" = "ON" ]; then
|
|
|
|
$PYTHONUSERBASE/bin/coveralls \
|
|
|
|
--exclude benchmarks \
|
|
|
|
--exclude build/CMakeFiles \
|
2016-03-08 17:14:40 +08:00
|
|
|
--exclude examples \
|
2015-09-10 21:01:57 +08:00
|
|
|
--exclude install \
|
|
|
|
--exclude tests \
|
|
|
|
--gcov-options '\-lp' \
|
|
|
|
--root .. --build-root . ;
|
|
|
|
fi
|