.appveyor.yml: force cl.exe path on 64-bit platforms
[aubio.git] / .appveyor.yml
1 # appveyor configuration. See http://www.appveyor.com/docs/appveyor-yml
2 # and http://www.appveyor.com/docs/installed-software#python
3
4 environment:
5
6   global:
7       CUSTOM64PATH: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin
8
9   matrix:
10
11     # pre-installed python version, see:
12     # http://www.appveyor.com/docs/installed-software#python
13     - PYTHONDIR: C:\Python27
14       PYTHON_VERSION: 2.7.x
15       PYTHON_ARCH: 32
16
17     - PYTHONDIR: C:\Python27-x64
18       PYTHON_VERSION: 2.7.x
19       PYTHON_ARCH: 64
20
21     - PYTHONDIR: C:\Python35
22       PYTHON_VERSION: 3.5.x
23       PYTHON_ARCH: 32
24
25     - PYTHONDIR: C:\Python35-x64
26       PYTHON_VERSION: 3.5.x
27       PYTHON_ARCH: 64
28
29     - PYTHONDIR: C:\Python36
30       PYTHON_VERSION: 3.6.x
31       PYTHON_ARCH: 32
32
33     - PYTHONDIR: C:\Python36-x64
34       PYTHON_VERSION: 3.6.x
35       PYTHON_ARCH: 64
36
37     - PYTHONDIR: C:\Python37
38       PYTHON_VERSION: 3.7.x
39       PYTHON_ARCH: 32
40
41     - PYTHONDIR: C:\Python37-x64
42       PYTHON_VERSION: 3.7.x
43       PYTHON_ARCH: 64
44
45 install:
46
47   - ECHO "Installed SDKs:"
48   - ps: "ls \"C:/Program Files/Microsoft SDKs/Windows\""
49
50   - "SET PATH=%PYTHONDIR%;%PYTHONDIR%\\Scripts;%PATH%"
51
52   - if [%PYTHON_ARCH%]==[64] SET PATH=%CUSTOM64PATH%;%PATH%
53
54   # Check that we have the expected version and architecture for Python
55   - "python --version"
56   - "python -c \"import struct; print(struct.calcsize('P') * 8)\""
57
58   - "python -m pip install --disable-pip-version-check --user --upgrade pip"
59   - "python -m pip install --upgrade setuptools"
60
61   # We need wheel installed to build wheels
62   - "python -m pip install wheel"
63
64   - "pip install -r requirements.txt"
65
66 before_build:
67   - "bash scripts/get_waf.sh"
68
69 build_script:
70   # also build libaubio with waf
71   - python waf configure build install --verbose
72   # clean before building python package
73   - python waf distclean
74   # build python module without using libaubio
75   - pip wheel -v -v -v --wheel-dir=dist .
76   # build, upload and install wheel (inspired by numpy's appveyor)
77   - ps: |
78       pip wheel -v -v -v --wheel-dir=dist .
79       ls dist -r | Foreach-Object {
80           Push-AppveyorArtifact $_.FullName
81           pip install $_.FullName
82       }
83
84 test_script:
85   - "python python\\demos\\demo_create_test_sounds.py"
86   - "nose2 --verbose"