| environment: |
| MESON_EXE_WRAPPER: "['C:\\Program Files\\OpenCppCoverage\\OpenCppCoverage.exe', '--export_type=cobertura', '--']" |
| CCACHE_MAXSIZE: '500Mi' |
| matrix: |
| - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022 |
| VCVARSALL: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat |
| PYTHON_DIR: C:\Python311-x64 |
| - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 |
| VCVARSALL: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat |
| PYTHON_DIR: C:\Python311-x64 |
| - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 |
| VCVARSALL: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat |
| PYTHON_DIR: C:\Python38-x64 |
| - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 |
| VCVARSALL: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat |
| PYTHON_DIR: C:\Python38-x64 |
| - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022 |
| VCVARSALL: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat |
| PYTHON_DIR: C:\Python311-x64 |
| FLAGS: /arch:AVX |
| - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 |
| VCVARSALL: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat |
| PYTHON_DIR: C:\Python311-x64 |
| FLAGS: /arch:AVX |
| - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 |
| VCVARSALL: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat |
| PYTHON_DIR: C:\Python38-x64 |
| FLAGS: /arch:AVX |
| - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 |
| VCVARSALL: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat |
| PYTHON_DIR: C:\Python38-x64 |
| FLAGS: /arch:AVX |
| - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022 |
| VCVARSALL: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat |
| PYTHON_DIR: C:\Python311-x64 |
| FLAGS: /arch:AVX2 |
| - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 |
| VCVARSALL: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat |
| PYTHON_DIR: C:\Python311-x64 |
| FLAGS: /arch:AVX2 |
| - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 |
| VCVARSALL: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat |
| PYTHON_DIR: C:\Python38-x64 |
| FLAGS: /arch:AVX2 |
| - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 |
| VCVARSALL: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat |
| PYTHON_DIR: C:\Python38-x64 |
| FLAGS: /arch:AVX2 |
| - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022 |
| VCVARSALL: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat |
| PYTHON_DIR: C:\Python311-x64 |
| FLAGS: /arch:AVX512 |
| - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 |
| VCVARSALL: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat |
| PYTHON_DIR: C:\Python311-x64 |
| FLAGS: /arch:AVX512 |
| - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 |
| VCVARSALL: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat |
| PYTHON_DIR: C:\Python38-x64 |
| FLAGS: /arch:AVX512 |
| branches: |
| except: |
| - /^ci/(?!appveyor)(/.+)?/ |
| - /^dependabot/(/.+)?/ |
| |
| platform: |
| - x64 |
| cache: |
| - '%SystemDrive%\ccache' |
| init: |
| - pwsh: | |
| $Env:APPVEYOR_SAVE_CACHE_ON_ERROR = 'true' |
| |
| on_failure: |
| - appveyor PushArtifact build\meson-logs\meson-log.txt |
| - appveyor PushArtifact build\meson-logs\testlog.txt |
| |
| install: |
| - cmd: set PATH=%PYTHON_DIR%;%PYTHON_DIR%\scripts;%PATH% |
| - cmd: pip install --upgrade ninja meson |
| - cmd: choco install opencppcoverage codecov ccache |
| - cmd: call "%VCVARSALL%" amd64 |
| |
| before_build: |
| - ps: | |
| git submodule -q update --init --recursive |
| if ($ENV:FLAGS -notlike "*ARCH*") { |
| echo "tests will be run" |
| } else { |
| echo "FLAGS is $ENV:FLAGS" |
| } |
| |
| build_script: |
| - cmd: | |
| set CCACHE_DIR=%SystemDrive%\ccache |
| set CC=ccache.exe cl.exe |
| set CXX=ccache.exe cl.exe |
| ccache.exe --zero-stats |
| set CFLAGS=/WX /Z7 %FLAGS% |
| set CXXFLAGS=/WX /Z7 %FLAGS% |
| meson --backend=ninja build |
| meson compile -C build --verbose |
| ccache.exe --show-stats |
| test_script: |
| # "meson test -C build" fails due to excessively long command line |
| - ps: | |
| if ($ENV:FLAGS -notlike "*ARCH*") { |
| ninja -C build test |
| } else { |
| echo "skipping test" |
| } |
| |
| ## This seems to work; data shows up on CodeCov, but it emits an error |
| ## which makes AppVeyor thing the whole build failed. Example: |
| ## https://ci.appveyor.com/project/quixdb/ci-noise/build/job/e7d1wpt9icu77fn2 |
| # after_test: |
| # - ps: | |
| # Invoke-WebRequest -Uri 'https://codecov.io/bash' -OutFile codecov.sh |
| # $env:APPVEYOR="true" |
| # $env:CI="true" |
| # bash codecov.sh -f "run-testsCoverage.xml" |