You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
97 lines
2.2 KiB
97 lines
2.2 KiB
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
# Helper for travis folding
|
|
travis_fold() {
|
|
local action=$1
|
|
local name=$2
|
|
echo -en "travis_fold:${action}:${name}\r"
|
|
}
|
|
|
|
# Helper for building and testing
|
|
run() {
|
|
# We start in /opt/stormpy
|
|
cd ..
|
|
|
|
# Build carl-parser
|
|
travis_fold start build_carl_parser
|
|
git clone --single-branch -b master14 https://github.com/ths-rwth/carl-parser
|
|
cd carl-parser
|
|
mkdir build
|
|
cd build
|
|
cmake .. "${CMAKE_ARGS[@]}"
|
|
make carl-parser -j 1
|
|
cd ../..
|
|
travis_fold end build_carl_parser
|
|
|
|
# Create virtual environment
|
|
travis_fold start virtualenv
|
|
virtualenv --python=$PYTHON venv
|
|
source venv/bin/activate
|
|
# Print version
|
|
python --version
|
|
travis_fold end virtualenv
|
|
|
|
# Build pycarl
|
|
travis_fold start build_pycarl
|
|
git clone https://github.com/moves-rwth/pycarl.git
|
|
cd pycarl
|
|
case "$CONFIG" in
|
|
Debug*)
|
|
python setup.py build_ext --debug -j 1 develop
|
|
;;
|
|
*)
|
|
python setup.py build_ext -j 1 develop
|
|
;;
|
|
esac
|
|
cd ..
|
|
travis_fold end build_pycarl
|
|
|
|
# Build stormpy
|
|
travis_fold start build_stormpy
|
|
cd stormpy
|
|
case "$CONFIG" in
|
|
Debug*)
|
|
python setup.py build_ext --storm-dir /opt/storm/build/ --debug -j 1 develop
|
|
;;
|
|
*)
|
|
python setup.py build_ext --storm-dir /opt/storm/build/ -j 1 develop
|
|
;;
|
|
esac
|
|
travis_fold end build_stormpy
|
|
|
|
# Perform tasks
|
|
if [[ "$TASK" == *Test* ]]
|
|
then
|
|
# Install dependencies for tests
|
|
pip install numpy # Used in sphinx tests
|
|
# Run tests
|
|
python setup.py test
|
|
fi
|
|
|
|
if [[ "$TASK" == *Documentation* ]]
|
|
then
|
|
# Install dependencies for documentation
|
|
apt-get install -qq -y pandoc
|
|
pip install -e ".[doc,numpy]"
|
|
# Generate documentation
|
|
cd doc
|
|
make html
|
|
touch build/html/.nojekyll
|
|
rm -r build/html/_sources
|
|
fi
|
|
}
|
|
|
|
|
|
# This only exists in OS X, but it doesn't cause issues in Linux (the dir doesn't exist, so it's
|
|
# ignored).
|
|
export PATH="/usr/local/opt/coreutils/libexec/gnubin:$PATH"
|
|
|
|
case "$CONFIG" in
|
|
Debug*) CMAKE_ARGS=(-DCMAKE_BUILD_TYPE=Debug -DCMAKE_CXX_FLAGS="$STLARG") ;;
|
|
Release*) CMAKE_ARGS=(-DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS="$STLARG") ;;
|
|
*) echo "Unrecognized value of CONFIG: $CONFIG"; exit 1 ;;
|
|
esac
|
|
|
|
run
|