.travis.yml: remap from installed package to local source
[aubio.git] / .travis.yml
1 language: python
2
3 matrix:
4   include:
5     - python: 3.5
6       os: linux
7       compiler: gcc
8     - python: 3.4
9       os: linux
10       compiler: gcc
11     - python: 2.7
12       os: linux
13       compiler: gcc
14     - language: C
15       os: osx
16       osx_image: xcode8
17       compiler: clang
18     - python: 3.5
19       os: linux
20       compiler: gcc
21       env: CFLAGS="-Os" WAFOPTS="--disable-samplerate --disable-sndfile"
22     - python: 3.4
23       os: linux
24       compiler: gcc
25       env: HAVE_AUBIO_DOUBLE=1 CFLAGS="-O3" WAFOPTS="--enable-fftw3"
26     - python: 2.7
27       os: linux
28       compiler: gcc
29       env: CFLAGS="`dpkg-buildflags --get CFLAGS`" LDFLAGS="`dpkg-buildflags --get LDFLAGS`"
30     - language: C
31       os: osx
32       osx_image: xcode8
33       compiler: clang
34       env: CFLAGS="-Os" HAVE_AUBIO_DOUBLE=1 WAFOPTS="--disable-accelerate"
35     - language: C
36       os: osx
37       osx_image: xcode8
38       compiler: clang
39       env: WAFOPTS="--enable-fat --disable-avcodec --disable-sndfile"
40     - language: C
41       os: osx
42       osx_image: xcode8
43       compiler: clang
44       env: WAFOPTS="--with-target-platform=ios --disable-avcodec --disable-sndfile" AUBIO_NOTESTS=1
45     - language: C
46       os: osx
47       osx_image: xcode8
48       compiler: clang
49       env: WAFOPTS="--with-target-platform=iosimulator --disable-avcodec --disable-sndfile" AUBIO_NOTESTS=1
50     - language: C
51       os: osx
52       osx_image: xcode8.2
53       compiler: clang
54       env: WAFOPTS="--enable-fat --disable-avcodec --disable-sndfile"
55     - language: C
56       os: osx
57       osx_image: xcode8.2
58       compiler: clang
59       env: WAFOPTS="--with-target-platform=ios --disable-avcodec --disable-sndfile" AUBIO_NOTESTS=1
60     - language: C
61       os: osx
62       osx_image: xcode8.2
63       compiler: clang
64       env: WAFOPTS="--with-target-platform=iosimulator --disable-avcodec --disable-sndfile" AUBIO_NOTESTS=1
65
66 # use trusty
67 dist: trusty
68 sudo: required
69
70 addons:
71   apt:
72     packages:
73     - bzip2
74     - libavcodec-dev
75     - libavformat-dev
76     - libavresample-dev
77     - libavutil-dev
78     - libsndfile1-dev
79     - libsamplerate-dev
80     - libjack-dev
81     - libasound2-dev
82     - libfftw3-dev
83     - sox
84
85 before_install:
86    - |
87      if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
88        brew update
89        brew install sox
90        brew install ffmpeg
91        brew install libsndfile
92        export PATH="$HOME/Library/Python/2.7/bin/:$PATH"
93      fi;
94
95 install:
96   - travis_retry pip install --upgrade pip
97   - travis_retry make getwaf expandwaf deps_python
98   - which pip
99   - pip --version
100   - pip install python-coveralls
101
102 script:
103   - make create_test_sounds
104   - |
105     if [[ -z "$AUBIO_NOTESTS" ]]; then
106       make test_lib_python_clean
107       export NOSE2="coverage run --source=aubio `which nose2`"
108       make test_python_only
109     else
110       make test_lib_only_clean
111     fi;
112
113 after_success:
114   - |
115     if [[ -z "$AUBIO_NOTESTS" ]]; then
116       sed 's|\"\([^"]*\)/\(aubio\/\)\([^"]*\.py\)"|"'$PWD'/python/lib/aubio/\3"|g' .coverage > .coverage.remap
117       mv -f .coverage.remap .coverage
118       coveralls
119     fi
120
121 notifications:
122     irc:
123         channels:
124             - "irc.freenode.org#aubio"
125         use_notice: true
126     webhooks:
127         urls:
128             - https://webhooks.gitter.im/e/81e7733a5b1d977854b4
129         on_success: change  # options: [always|never|change] default: always
130         on_failure: always  # options: [always|never|change] default: always
131         on_start: never     # options: [always|never|change] default: always