forked from translunar/nmatrix
-
Notifications
You must be signed in to change notification settings - Fork 133
/
.travis.yml
125 lines (120 loc) · 3.45 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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
language: ruby
sudo: required
cache: bundler
os:
- linux
- osx
osx_image: xcode7.2
env:
- USE_ATLAS=1 # This configuration installs ATLAS, builds and tests the nmatrix, nmatrix-atlas, and nmatrix-lapacke gems
- USE_OPENBLAS=1 # Installs OpenBLAS and reference LAPACK, builds and tests nmatrix, nmatrix-lapacke
- USE_REF=1 # Installs OpenBLAS and reference LAPACK, builds and tests nmatrix, nmatrix-lapacke
- NO_EXTERNAL_LIB=1 # No external libraries installed, only nmatrix
rvm:
- 2.0.0-p648
- 2.1.8
- 2.2.4
- 2.3.0
- 2.4.2
- ruby-head
# The latest stable and head versions built by clang
- 2.3.0-clang
- ruby-head-clang
# JRuby versions --- experimental, pending merging Prasun's GSoC project.
- jruby-9.0.5.0 # earliest supported version (uncomment when jruby-head is passing)
- jruby-head # latest supported JRuby
# Make sure to add exclude lines for new JRuby versions below.
before_install: ./travis.sh before_install
install: ./travis.sh install
script: ./travis.sh script
# Define extra configurations to add to the build matrix.
# The idea here is that the USE_ATLAS=1 option should exercise all the ruby
# code, so it is the only one we need to test with all versions of ruby.
# For other configurations we only test with one version of ruby.
matrix:
exclude:
- rvm: jruby-head
env: USE_ATLAS=1
- rvm: jruby-head
env: USE_OPENBLAS=1
- rvm: jruby-head
env: USE_REF=1
- rvm: jruby-9.0.5.0
env: USE_ATLAS=1
- rvm: jruby-9.0.5.0
env: USE_OPENBLAS=1
- rvm: jruby-9.0.5.0
env: USE_REF=1
# NOTE: The following two ruby versions on OSX are currently unavailable
- os: osx
rvm: 2.0.0-p648
- os: osx
rvm: 2.1.8
- os: osx
rvm: 2.2.4
- os: osx
rvm: 2.3.0
- os: osx
rvm: ruby-head
- os: osx
rvm: 2.3.0-clang
- os: osx
rvm: ruby-head-clang
# FIXME: The following configuration is unavailable because ATLAS should be built from source.
# We need homebrew formula for ATLAS and its bottle.
- os: osx
env: USE_ATLAS=1
# FIXME: The following configuration takes too long time when installing homebrew/dupes/lapack.
# We need the bottle of lapack formula.
- os: osx
env: USE_REF=1
include:
# The latest stable and head versions of ruby built by clang on OSX
- os: osx
compiler: clang
rvm: 2.2
env:
- ruby_version=2.4.0-dev USE_OPENBLAS=1
- os: osx
compiler: clang
rvm: 2.2
env:
- ruby_version=2.4.0-dev NO_EXTERNAL_LIB=1
- os: osx
compiler: clang
rvm: 2.2
env:
- ruby_version=2.3.0 USE_OPENBLAS=1
- os: osx
compiler: clang
rvm: 2.2
env:
- ruby_version=2.3.0 NO_EXTERNAL_LIB=1
# The latest version of Ruby 2.2.x built by clang on OSX
- os: osx
compiler: clang
rvm: 2.2
env:
- ruby_version=2.2.4 USE_OPENBLAS=1
# The latest version of Ruby 2.1.x built by clang on OSX
- os: osx
compiler: clang
rvm: 2.2
env:
- ruby_version=2.1.8 USE_OPENBLAS=1
allow_failures:
# trunk
- rvm: ruby-head
- rvm: ruby-head-clang
- os: osx
compiler: clang
rvm: 2.2
env:
- ruby_version=2.4.0-dev USE_OPENBLAS=1
- os: osx
compiler: clang
rvm: 2.2
env:
- ruby_version=2.4.0-dev NO_EXTERNAL_LIB=1
notifications:
irc: "chat.freenode.net#sciruby"