-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy path.travis.yml
More file actions
121 lines (106 loc) · 3.13 KB
/
Copy path.travis.yml
File metadata and controls
121 lines (106 loc) · 3.13 KB
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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
sudo: true
language:
- cpp
cache:
ccache: true
directories:
- $HOME/downloads
matrix:
include:
#########
# Linux Machines
#########
- os: linux
env:
- BACKEND=Intel10_64lp_seq
- BUILD_STATIC=OFF
- os: linux
env:
- BACKEND=Intel10_64lp_seq
- BUILD_STATIC=ON
- os: linux
env:
- BACKEND=Intel10_64lp
- BUILD_STATIC=OFF
- os: linux
env:
- BACKEND=Intel10_64lp
- BUILD_STATIC=ON
#########
# OSx Machines
#########
- os: osx
osx_image: xcode9.2
env:
- BACKEND=Intel10_64lp_seq
- BUILD_STATIC=OFF
- os: osx
osx_image: xcode9.2
env:
- BACKEND=Intel10_64lp_seq
- BUILD_STATIC=ON
- os: osx
osx_image: xcode9.2
env:
- BACKEND=Intel10_64lp
- BUILD_STATIC=OFF
- os: osx
osx_image: xcode9.2
env:
- BACKEND=Intel10_64lp
- BUILD_STATIC=ON
before_install:
# Dependencies required by the CI are installed in ${TRAVIS_BUILD_DIR}/deps/
- DEPS_DIR="${TRAVIS_BUILD_DIR}/deps"
- mkdir -p "${DEPS_DIR}"
- |
if [[ "${TRAVIS_OS_NAME}" == "linux" ]]; then
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install -y libc6:i386 libncurses5:i386 libstdc++6:i386
fi
# Travis machines have 2 cores
- JOBS=2
- cd "${DEPS_DIR}"
############################################################################
# Handle caching of downloaded files
############################################################################
- export DL_DIR=$HOME/downloads
- curl -fsSkL https://raw.githubusercontent.com/openmeeg/ci-utils/master/travis/travis_tools.sh > x.sh && source ./x.sh
############################################################################
# Install a recent CMake
############################################################################
- CMAKE_VERSION=3.10.1
- curl -fsSkL https://raw.githubusercontent.com/openmeeg/ci-utils/master/travis/install_cmake.sh > x.sh && source ./x.sh
- which cmake
- cmake --version
############################################################################
# Install MKL
############################################################################
- |
if [[ "${BACKEND}" == *"Intel"* ]]; then
curl -fsSkL https://raw.githubusercontent.com/openmeeg/ci-utils/master/travis/install_mkl.sh > install_mkl.sh && source ./install_mkl.sh
fi
script:
- cd ${TRAVIS_BUILD_DIR}
- mkdir -p build && cd build
- export CMAKE_OPTIONS="-DCMAKE_CXX_STANDARD=11 -DBLA_VENDOR=$BACKEND"
- |
if [[ "${BUILD_STATIC}" == "ON" ]]; then
export CMAKE_OPTIONS="${CMAKE_OPTIONS} -DBLA_STATIC=ON"
fi
- if [[ "${TRAVIS_OS_NAME}" == "linux" ]]; then echo $LD_LIBRARY_PATH; fi
- if [[ "${TRAVIS_OS_NAME}" == "osx" ]]; then echo $DYLD_LIBRARY_PATH; fi
- echo "cmake .. ${CMAKE_OPTIONS}"
- cmake .. ${CMAKE_OPTIONS}
- make VERBOSE=1
- |
if [[ "${TRAVIS_OS_NAME}" == "linux" ]]; then
ldd ./hello
else # Mac
otool -L ./hello
fi
after_success:
- ./hello
notifications:
email: false