blob: 8d30cf31af532b1cf9b157336eaff917251f338d [file] [log] [blame]
Wenzel Jakobfab881c2015-10-18 17:04:24 +02001version: 1.0.{build}
Jason Rhinelandercabbf612017-03-11 23:03:23 -04002image:
3- Visual Studio 2017
4- Visual Studio 2015
Wenzel Jakob42af9c22015-10-23 10:21:09 +02005test: off
Wenzel Jakob8f010cc2017-04-05 17:02:34 +02006build:
7 parallel: true
Dean Moldovan3ac12752016-07-30 00:15:01 +02008platform:
Dean Moldovan3ac12752016-07-30 00:15:01 +02009- x64
Jason Rhinelandercabbf612017-03-11 23:03:23 -040010- x86
Wenzel Jakob42af9c22015-10-23 10:21:09 +020011environment:
12 matrix:
Jason Rhinelandercabbf612017-03-11 23:03:23 -040013 - CONDA: 36
Jason Rhinelander77710ff2017-05-09 14:37:48 -040014 CPP: 14
Dean Moldovan3ac12752016-07-30 00:15:01 +020015 - CONDA: 27
Jason Rhinelander77710ff2017-05-09 14:37:48 -040016 CPP: 14
17 - CONDA: 36
18 CPP: latest
Jason Rhinelandercabbf612017-03-11 23:03:23 -040019matrix:
Jason Rhinelander087b8d82017-04-05 18:09:02 -040020 exclude:
21 - image: Visual Studio 2015
22 platform: x86
Jason Rhinelander77710ff2017-05-09 14:37:48 -040023 - image: Visual Studio 2015
24 CPP: latest
25 - image: Visual Studio 2017
26 CPP: latest
27 platform: x86
Wenzel Jakobfab881c2015-10-18 17:04:24 +020028install:
Dean Moldovan3ac12752016-07-30 00:15:01 +020029- ps: |
30 if ($env:PLATFORM -eq "x64") { $env:CMAKE_ARCH = "x64" }
Jason Rhinelandercabbf612017-03-11 23:03:23 -040031 if ($env:APPVEYOR_JOB_NAME -like "*Visual Studio 2017*") { $env:CMAKE_GENERATOR = "Visual Studio 15 2017" }
32 else { $env:CMAKE_GENERATOR = "Visual Studio 14 2015" }
Dean Moldovan3ac12752016-07-30 00:15:01 +020033 if ($env:PYTHON) {
34 if ($env:PLATFORM -eq "x64") { $env:PYTHON = "$env:PYTHON-x64" }
35 $env:PATH = "C:\Python$env:PYTHON\;C:\Python$env:PYTHON\Scripts\;$env:PATH"
36 pip install --disable-pip-version-check --user --upgrade pip wheel
Dean Moldovana0c1ccf2016-08-12 13:50:00 +020037 pip install pytest numpy scipy
Dean Moldovan3ac12752016-07-30 00:15:01 +020038 } elseif ($env:CONDA) {
39 if ($env:CONDA -eq "27") { $env:CONDA = "" }
40 if ($env:PLATFORM -eq "x64") { $env:CONDA = "$env:CONDA-x64" }
41 $env:PATH = "C:\Miniconda$env:CONDA\;C:\Miniconda$env:CONDA\Scripts\;$env:PATH"
Dean Moldovan9693a5c2017-03-23 17:27:32 +010042 $env:PYTHONHOME = "C:\Miniconda$env:CONDA"
Dean Moldovana0c1ccf2016-08-12 13:50:00 +020043 conda install -y -q pytest numpy scipy
Dean Moldovan3ac12752016-07-30 00:15:01 +020044 }
45- ps: |
Jason Rhinelander3983a8e2017-04-10 14:48:24 -040046 Start-FileDownload 'http://bitbucket.org/eigen/eigen/get/3.3.3.zip'
47 7z x 3.3.3.zip -y > $null
48 $env:CMAKE_INCLUDE_PATH = "eigen-eigen-67e894c6cd8f"
Wenzel Jakobfab881c2015-10-18 17:04:24 +020049build_script:
Dean Moldovan9693a5c2017-03-23 17:27:32 +010050- cmake -G "%CMAKE_GENERATOR%" -A "%CMAKE_ARCH%"
51 -DPYBIND11_CPP_STANDARD=/std:c++%CPP%
52 -DPYBIND11_WERROR=ON
53 -DDOWNLOAD_CATCH=ON
54 -DCMAKE_SUPPRESS_REGENERATION=1
Dean Moldovan3ac12752016-07-30 00:15:01 +020055- set MSBuildLogger="C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
Jason Rhinelander4c72ec22017-04-09 08:12:17 -040056- cmake --build . --config Release --target pytest -- /v:m /logger:%MSBuildLogger%
Dean Moldovan9693a5c2017-03-23 17:27:32 +010057- cmake --build . --config Release --target cpptest -- /v:m /logger:%MSBuildLogger%
Jason Rhinelander4c72ec22017-04-09 08:12:17 -040058- cmake --build . --config Release --target test_cmake_build -- /v:m /logger:%MSBuildLogger%
Dean Moldovan9693a5c2017-03-23 17:27:32 +010059on_failure: if exist "tests\test_cmake_build" type tests\test_cmake_build\*.log*