blob: 8fbb726108f2a3e7c24075d17c49beb1110474d6 [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 Jakobadc2cdd2018-11-09 20:12:46 +01006skip_branch_with_pr: true
Wenzel Jakob8f010cc2017-04-05 17:02:34 +02007build:
8 parallel: true
Dean Moldovan3ac12752016-07-30 00:15:01 +02009platform:
Dean Moldovan3ac12752016-07-30 00:15:01 +020010- x64
Jason Rhinelandercabbf612017-03-11 23:03:23 -040011- x86
Wenzel Jakob42af9c22015-10-23 10:21:09 +020012environment:
13 matrix:
Dean Moldovanb33475d2017-08-23 17:18:57 +020014 - PYTHON: 36
Jason Rhinelander77710ff2017-05-09 14:37:48 -040015 CPP: 14
Dean Moldovanb33475d2017-08-23 17:18:57 +020016 CONFIG: Debug
17 - PYTHON: 27
Jason Rhinelander77710ff2017-05-09 14:37:48 -040018 CPP: 14
Dean Moldovanb33475d2017-08-23 17:18:57 +020019 CONFIG: Debug
Jason Rhinelander77710ff2017-05-09 14:37:48 -040020 - CONDA: 36
21 CPP: latest
Dean Moldovanb33475d2017-08-23 17:18:57 +020022 CONFIG: Release
Jason Rhinelandercabbf612017-03-11 23:03:23 -040023matrix:
Jason Rhinelander087b8d82017-04-05 18:09:02 -040024 exclude:
25 - image: Visual Studio 2015
26 platform: x86
Jason Rhinelander77710ff2017-05-09 14:37:48 -040027 - image: Visual Studio 2015
28 CPP: latest
29 - image: Visual Studio 2017
30 CPP: latest
31 platform: x86
Wenzel Jakobfab881c2015-10-18 17:04:24 +020032install:
Dean Moldovan3ac12752016-07-30 00:15:01 +020033- ps: |
34 if ($env:PLATFORM -eq "x64") { $env:CMAKE_ARCH = "x64" }
Dean Moldovan7918bcc2017-08-08 16:02:31 +020035 if ($env:APPVEYOR_JOB_NAME -like "*Visual Studio 2017*") {
36 $env:CMAKE_GENERATOR = "Visual Studio 15 2017"
37 $env:CMAKE_INCLUDE_PATH = "C:\Libraries\boost_1_64_0"
Jason Rhinelandera582d6c2017-10-22 12:06:52 -030038 $env:CXXFLAGS = "-permissive-"
Dean Moldovan7918bcc2017-08-08 16:02:31 +020039 } else {
40 $env:CMAKE_GENERATOR = "Visual Studio 14 2015"
41 }
Dean Moldovan3ac12752016-07-30 00:15:01 +020042 if ($env:PYTHON) {
43 if ($env:PLATFORM -eq "x64") { $env:PYTHON = "$env:PYTHON-x64" }
44 $env:PATH = "C:\Python$env:PYTHON\;C:\Python$env:PYTHON\Scripts\;$env:PATH"
Wenzel Jakobd1f64fa2019-02-04 16:18:01 +010045 python -W ignore -m pip install --upgrade pip wheel
46 python -W ignore -m pip install pytest numpy --no-warn-script-location
Dean Moldovan3ac12752016-07-30 00:15:01 +020047 } elseif ($env:CONDA) {
48 if ($env:CONDA -eq "27") { $env:CONDA = "" }
49 if ($env:PLATFORM -eq "x64") { $env:CONDA = "$env:CONDA-x64" }
50 $env:PATH = "C:\Miniconda$env:CONDA\;C:\Miniconda$env:CONDA\Scripts\;$env:PATH"
Dean Moldovan9693a5c2017-03-23 17:27:32 +010051 $env:PYTHONHOME = "C:\Miniconda$env:CONDA"
Henry Schreiner73b840d2019-04-07 10:37:21 +020052 conda --version
Dean Moldovana0c1ccf2016-08-12 13:50:00 +020053 conda install -y -q pytest numpy scipy
Dean Moldovan3ac12752016-07-30 00:15:01 +020054 }
55- ps: |
Jason Rhinelander3983a8e2017-04-10 14:48:24 -040056 Start-FileDownload 'http://bitbucket.org/eigen/eigen/get/3.3.3.zip'
57 7z x 3.3.3.zip -y > $null
Dean Moldovan7918bcc2017-08-08 16:02:31 +020058 $env:CMAKE_INCLUDE_PATH = "eigen-eigen-67e894c6cd8f;$env:CMAKE_INCLUDE_PATH"
Wenzel Jakobfab881c2015-10-18 17:04:24 +020059build_script:
Dean Moldovan9693a5c2017-03-23 17:27:32 +010060- cmake -G "%CMAKE_GENERATOR%" -A "%CMAKE_ARCH%"
61 -DPYBIND11_CPP_STANDARD=/std:c++%CPP%
62 -DPYBIND11_WERROR=ON
63 -DDOWNLOAD_CATCH=ON
64 -DCMAKE_SUPPRESS_REGENERATION=1
Henry Schreinerae951ca2019-04-06 19:09:39 +020065 .
Dean Moldovan3ac12752016-07-30 00:15:01 +020066- set MSBuildLogger="C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
Dean Moldovanb33475d2017-08-23 17:18:57 +020067- cmake --build . --config %CONFIG% --target pytest -- /m /v:m /logger:%MSBuildLogger%
68- cmake --build . --config %CONFIG% --target cpptest -- /m /v:m /logger:%MSBuildLogger%
69- if "%CPP%"=="latest" (cmake --build . --config %CONFIG% --target test_cmake_build -- /m /v:m /logger:%MSBuildLogger%)
Dean Moldovan9693a5c2017-03-23 17:27:32 +010070on_failure: if exist "tests\test_cmake_build" type tests\test_cmake_build\*.log*