[ci] add py3.6, drop py3.4 on travis
[aubio.git] / .travis.yml
1 language: python
2
3 matrix:
4   include:
5     - python: 3.6
6       os: linux
7       compiler: gcc
8     - python: 3.5
9       os: linux
10       compiler: gcc
11     - python: 2.7
12       os: linux
13       compiler: gcc
14     - python: "pypy3.5"
15       os: linux
16       compiler: gcc
17       env: CFLAGS="-Os" WAFOPTS="--disable-avcodec"
18     - python: 3.6
19       os: linux
20       compiler: gcc
21       env: CFLAGS="-Os" WAFOPTS="--disable-samplerate"
22     - python: 3.5
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       compiler: clang
33     - language: C
34       os: osx
35       compiler: clang
36       env: CFLAGS="-Os" HAVE_AUBIO_DOUBLE=1 WAFOPTS="--disable-accelerate"
37     - language: C
38       os: osx
39       compiler: clang
40       env: WAFOPTS="--enable-fat --disable-avcodec --disable-sndfile"
41     - language: C
42       os: osx
43       compiler: clang
44       env: WAFOPTS="--with-target-platform=ios --disable-avcodec --disable-sndfile" AUBIO_NOTESTS=1
45     - language: C
46       os: osx
47       compiler: clang
48       env: WAFOPTS="--with-target-platform=iosimulator --disable-avcodec --disable-sndfile" AUBIO_NOTESTS=1
49
50 # use trusty
51 dist: trusty
52 sudo: required
53
54 addons:
55   apt:
56     packages:
57     - bzip2
58     - libavcodec-dev
59     - libavformat-dev
60     - libavresample-dev
61     - libavutil-dev
62     - libsndfile1-dev
63     - libsamplerate-dev
64     - libjack-dev
65     - libasound2-dev
66     - libfftw3-dev
67     - sox
68     - lcov
69   homebrew:
70     packages:
71     - sox
72     - ffmpeg
73     - libsndfile
74     - lcov
75     #update: true
76
77 before_install:
78    - |
79      if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
80        export PATH="$HOME/Library/Python/2.7/bin/:$PATH"
81      fi;
82
83 install:
84   - |
85     if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
86       alias pip=pip2
87     fi;
88   - travis_retry pip install --upgrade pip
89   - travis_retry make getwaf expandwaf deps_python
90   - which pip
91   - pip --version
92   - pip install coverage
93
94 script:
95   - make create_test_sounds
96   - |
97     if [[ -z "$AUBIO_NOTESTS" ]]; then
98       make test_lib_python_clean
99       make coverage
100     else
101       make test_lib_only_clean
102     fi;
103
104 after_success:
105   - |
106     if [[ -z "$AUBIO_NOTESTS" ]]; then
107       # upload to codecov
108       bash <(curl -s https://codecov.io/bash)
109     fi
110
111 notifications:
112     irc:
113         channels:
114             - "irc.freenode.org#aubio"
115         use_notice: true
116     webhooks:
117         urls:
118             - https://webhooks.gitter.im/e/81e7733a5b1d977854b4
119         on_success: change  # options: [always|never|change] default: always
120         on_failure: always  # options: [always|never|change] default: always
121         on_start: never     # options: [always|never|change] default: always