| version: 1.0.{build} | |
| image: | |
| - Visual Studio 2017 | |
| - Visual Studio 2015 | |
| test: off | |
| build: | |
| parallel: true | |
| platform: | |
| - x64 | |
| - x86 | |
| environment: | |
| matrix: | |
| - PYTHON: 36 | |
| CPP: 14 | |
| CONFIG: Debug | |
| - PYTHON: 27 | |
| CPP: 14 | |
| CONFIG: Debug | |
| - CONDA: 36 | |
| CPP: latest | |
| CONFIG: Release | |
| matrix: | |
| exclude: | |
| - image: Visual Studio 2015 | |
| platform: x86 | |
| - image: Visual Studio 2015 | |
| CPP: latest | |
| - image: Visual Studio 2017 | |
| CPP: latest | |
| platform: x86 | |
| install: | |
| - ps: | | |
| if ($env:PLATFORM -eq "x64") { $env:CMAKE_ARCH = "x64" } | |
| if ($env:APPVEYOR_JOB_NAME -like "*Visual Studio 2017*") { | |
| $env:CMAKE_GENERATOR = "Visual Studio 15 2017" | |
| $env:CMAKE_INCLUDE_PATH = "C:\Libraries\boost_1_64_0" | |
| } else { | |
| $env:CMAKE_GENERATOR = "Visual Studio 14 2015" | |
| } | |
| if ($env:PYTHON) { | |
| if ($env:PLATFORM -eq "x64") { $env:PYTHON = "$env:PYTHON-x64" } | |
| $env:PATH = "C:\Python$env:PYTHON\;C:\Python$env:PYTHON\Scripts\;$env:PATH" | |
| pip install --disable-pip-version-check --user --upgrade pip wheel | |
| pip install pytest numpy | |
| } elseif ($env:CONDA) { | |
| if ($env:CONDA -eq "27") { $env:CONDA = "" } | |
| if ($env:PLATFORM -eq "x64") { $env:CONDA = "$env:CONDA-x64" } | |
| $env:PATH = "C:\Miniconda$env:CONDA\;C:\Miniconda$env:CONDA\Scripts\;$env:PATH" | |
| $env:PYTHONHOME = "C:\Miniconda$env:CONDA" | |
| conda install -y -q pytest numpy scipy | |
| } | |
| - ps: | | |
| Start-FileDownload 'http://bitbucket.org/eigen/eigen/get/3.3.3.zip' | |
| 7z x 3.3.3.zip -y > $null | |
| $env:CMAKE_INCLUDE_PATH = "eigen-eigen-67e894c6cd8f;$env:CMAKE_INCLUDE_PATH" | |
| build_script: | |
| - cmake -G "%CMAKE_GENERATOR%" -A "%CMAKE_ARCH%" | |
| -DPYBIND11_CPP_STANDARD=/std:c++%CPP% | |
| -DPYBIND11_WERROR=ON | |
| -DDOWNLOAD_CATCH=ON | |
| -DCMAKE_SUPPRESS_REGENERATION=1 | |
| - set MSBuildLogger="C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" | |
| - cmake --build . --config %CONFIG% --target pytest -- /m /v:m /logger:%MSBuildLogger% | |
| - cmake --build . --config %CONFIG% --target cpptest -- /m /v:m /logger:%MSBuildLogger% | |
| - if "%CPP%"=="latest" (cmake --build . --config %CONFIG% --target test_cmake_build -- /m /v:m /logger:%MSBuildLogger%) | |
| on_failure: if exist "tests\test_cmake_build" type tests\test_cmake_build\*.log* |