-
Notifications
You must be signed in to change notification settings - Fork 14
/
Copy path.travis.yml
100 lines (90 loc) · 2.54 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
sudo: false
dist: precise
language:
- cpp
cache:
- apt
addons:
apt:
sources:
- boost-latest
- ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.6
packages:
- clang-3.6
- doxygen
- gcc-5
- g++-5
- graphviz
- libfftw3-3
- libfftw3-dev
- libeigen3-dev
- libboost1.55-dev
- libboost-math1.55-dev
- libboost-program-options1.55-dev
- libopenmpi-dev
- openmpi-bin
- openmpi-common
compiler:
- gcc
- clang
env:
global:
- BUILD_TASK=cmake
- WITH_MPI=OFF
matrix:
- CMAKE_BUILD_TYPE=Release
- CMAKE_BUILD_TYPE=Debug
matrix:
include:
- compiler: gcc
env: WITH_MPI=ON CMAKE_BUILD_TYPE=Debug
- env: BUILD_TASK=docu
install:
- if [ "${CXX}" == "g++" ]; then
echo "Using GCC 5" &&
export CXX="g++-5" CC="gcc-5";
else
echo "Using Clang 3.6" &&
export CXX="clang-3.6" CC="clang-3.6";
fi
- if [ "${WITH_MPI}" == "ON" ]; then
echo "Using OpenMPI" &&
mkdir -p $HOME/bin &&
ln -s /usr/bin/g++-5 $HOME/bin/g++ &&
ln -s /usr/bin/gcc-5 $HOME/bin/gcc &&
ln -s $HOME/bin/g++ $HOME/bin/c++ &&
ln -s $HOME/bin/gcc $HOME/bin/cc &&
export CXX="mpicxx" CC="mpicc";
fi
before_script:
- printenv | sort -u
- which ${CXX}
- which ${CC}
script:
- case "${BUILD_TASK}" in
"docu" )
doxygen --version && doxygen
;;
"cmake" )
mkdir build && cd build &&
cmake -DCMAKE_INSTALL_PREFIX=${HOME} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -Dpfasst_WITH_MPI=${WITH_MPI} -Dpfasst_BUILD_TESTS=ON -Dpfasst_BUILD_EXAMPLES=ON -DCMAKE_VERBOSE_MAKEFILE=ON .. &&
make -j2 &&
make test
;;
esac
after_success:
- if [ "${BUILD_TASK}" == "docu" && "${TRAVIS_BRANCH}" == "master" && "${TRAVIS_PULL_REQUEST}" == "false"]; then
openssl aes-256-cbc -K $encrypted_5c8922bb07ee_key -iv $encrypted_5c8922bb07ee_iv -in travis_deploy_rsa.enc -out travis_deploy_rsa -d;
chmod 0600 travis_deploy_rsa;
eval "$(ssh-agent -s)";
ssh-add travis_deploy_rsa;
git config --global user.email "travis+pfasst@parallel-in-time.github.io";
git config --global user.name "Travis CI Deployment";
git checkout gh-pages;
git rm -r d[0-9a-f] search *.html *.png *.js *.css *.map *.md5 *.svg;
mv doc/build/html/* .;
git add -A;
git commit -m"docu generated $(date)" -m"commit ${TRAVIS_COMMIT}\njob ${TRAVIS_JOB_NUMBER}" --allow-empty;
git push origin gh-pages;
fi