-
Notifications
You must be signed in to change notification settings - Fork 21
/
.travis.yml
59 lines (51 loc) · 1.55 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
language: cpp
sudo: false
addons:
apt:
sources:
- ubuntu-toolchain-r-test
- george-edison55-precise-backports
packages:
- ccache
- cmake
- cmake-data
- libopenmpi-dev
- openmpi-bin
- gcc-4.9
- g++-4.9
- gfortran-4.9
- gcc-5
- g++-5
- gfortran-5
- libboost-all-dev
before_install:
- git fetch --unshallow && git fetch --tags #for versioning
env: #maybe add mpich later
global:
- CCACHE_CPP2=yes
- GVER=4.9
matrix:
- MPI=ON TEST=laristra/cinch-example
- MPI=OFF TEST=laristra/cinch-example
- MPI=ON TEST=laristra/cinch-nested-example
- MPI=OFF TEST=laristra/cinch-nested-example
# - MPI=ON TEST=losalamos/vpic
# - MPI=OFF TEST=losalamos/vpic
# flecsi has no mimimal build currently
# - MPI=ON TEST=laristra/flecsi GVER=5
# - MPI=OFF TEST=laristra/flecsi GVER=5
script:
- git checkout -b cinch_current_commit
- cd $HOME && git clone --recursive https://github.com/${TEST} ${TEST} && cd ${TEST} &&
for i in $(find . -type d -name cinch); do [ -e ${i}/.git ] || continue; git -C ${i} fetch ${HOME}/build/${TRAVIS_REPO_SLUG} cinch_current_commit && git -C ${i} checkout -f FETCH_HEAD && git -C ${i} submodule update --init --recursive; done &&
mkdir build && cd build &&
FC=gfortran-${GVER} CC=gcc-${GVER} CXX=g++-${GVER} cmake -DENABLE_MPI=$MPI -DENABLE_UNIT_TESTS=ON .. &&
make -j4 && make test ARGS="-V" && make install DESTDIR="${HOME}"
branches:
only:
- master
- /^stable\/.*$/
cache:
- ccache
compiler:
- gcc