123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130 |
- version: '{build}'
- os: Visual Studio 2015
- environment:
- matrix:
- - arch: x86
- compiler: msys2-mingw
- backend: ninja
- - arch: x86
- compiler: msvc2010
- backend: ninja
- - arch: x86
- compiler: msvc2010
- backend: vs2010
- - arch: x86
- compiler: msvc2015
- backend: ninja
- BOOST_ROOT: C:\Libraries\Boost_1_59_0
- - arch: x86
- compiler: msvc2015
- backend: vs2015
- BOOST_ROOT: C:\Libraries\Boost_1_59_0
- - arch: x64
- compiler: cygwin
- backend: ninja
- - arch: x64
- compiler: msys2-mingw
- backend: ninja
- - arch: x64
- compiler: msvc2017
- backend: ninja
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
- BOOST_ROOT: C:\Libraries\Boost_1_64_0
- - arch: x64
- compiler: msvc2017
- backend: vs2017
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
- BOOST_ROOT: C:\Libraries\Boost_1_64_0
- platform:
- - x64
- branches:
- only:
- - master
- init:
- - ps: |
- If($Env:compiler -like 'msvc2010') {
- Set-WinSystemLocale de-DE
- Start-Sleep -s 5
- Restart-Computer
- }
- install:
- - cmd: set "ORIG_PATH=%PATH%"
- # Use a Ninja with QuLogic's patch: https://github.com/ninja-build/ninja/issues/1219
- - cmd: set "MESON_FIXED_NINJA=1"
- - ps: (new-object net.webclient).DownloadFile('http://nirbheek.in/files/binaries/ninja/win32/ninja.exe', 'C:\projects\meson\ninja.exe')
- # Use the x86 python only when building for x86 for the cpython tests.
- # For all other archs (including, say, arm), use the x64 python.
- - cmd: if %arch%==x86 (set MESON_PYTHON_PATH=C:\python34) else (set MESON_PYTHON_PATH=C:\python34-x64)
- # Set paths for BOOST dll files
- - cmd: if %compiler%==msvc2015 ( if %arch%==x86 ( set "PATH=%PATH%;C:\Libraries\boost_1_59_0\lib32-msvc-14.0" ) else ( set "PATH=%PATH%;C:\Libraries\boost_1_59_0\lib64-msvc-14.0" ) )
- - cmd: if %compiler%==msvc2017 ( if %arch%==x86 ( set "PATH=%PATH%;C:\Libraries\boost_1_64_0\lib32-msvc-14.1" ) else ( set "PATH=%PATH%;C:\Libraries\boost_1_64_0\lib64-msvc-14.1" ) )
- # Set paths and config for each build type.
- - cmd: if %compiler%==msvc2010 ( call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" %arch% )
- - cmd: if %compiler%==msvc2015 ( call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" %arch% )
- - cmd: if %compiler%==msvc2017 ( call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\VsDevCmd.bat" -arch=%arch% )
- - ps: |
- If($Env:compiler -eq 'msys2-mingw') {
- If($Env:arch -eq 'x86') {
- $env:Path = 'C:\msys64\mingw32\bin;' + $env:Path
- } Else {
- $env:Path = 'C:\msys64\mingw64\bin;' + $env:Path
- }
- }
- - cmd: if not %compiler%==cygwin ( set "PATH=%cd%;%MESON_PYTHON_PATH%;%PATH%;" )
- - cmd: if %compiler%==cygwin ( set PYTHON=python3 ) else ( set PYTHON=python )
- - cmd: if %compiler%==cygwin ( set WRAPPER=ci\run-in-cygwin.bat )
- - cmd: if %compiler%==cygwin ( %WRAPPER% which %PYTHON% ) else ( where %PYTHON% )
- # Install additional packages needed for specific builds.
- # This was originally downloaded from http://bootstrap.pypa.io/get-pip.py,
- # but they have a broken certificate (on Windows) and an HSTS policy that
- # forces usage of HTTPS, so we mirror our own copy.
- - ps: If($Env:compiler -eq 'msys2-mingw') {(new-object Net.WebClient).DownloadFile('https://nirbheek.in/files/meson/get-pip.py', 'C:\projects\meson\get-pip.py')}
- # pkg-config is needed for the pkg-config tests on msvc
- - ps: If($Env:compiler.StartsWith('msvc')) {(new-object net.webclient).DownloadFile('http://nirbheek.in/files/binaries/pkg-config/win32/pkg-config.exe', 'C:\projects\meson\pkg-config.exe')}
- - cmd: if %compiler%==msys2-mingw ( %PYTHON% "C:\projects\meson\get-pip.py" )
- - cmd: if %compiler%==cygwin ( call ci\appveyor-install.bat )
- - ps: |
- If($Env:compiler -like 'msvc*') {
- (new-object net.webclient).DownloadFile(
- "https://download.microsoft.com/download/D/B/B/DBB64BA1-7B51-43DB-8BF1-D1FB45EACF7A/msmpisdk.msi",
- "C:\projects\msmpisdk.msi")
- c:\windows\system32\msiexec.exe /i C:\projects\msmpisdk.msi /quiet
- (new-object net.webclient).DownloadFile(
- "https://download.microsoft.com/download/D/B/B/DBB64BA1-7B51-43DB-8BF1-D1FB45EACF7A/MSMpiSetup.exe",
- "C:\projects\MSMpiSetup.exe")
- c:\projects\MSMpiSetup.exe -unattend -full
- }
- build_script:
- - cmd: echo No build step.
- - cmd: if %backend%==ninja ( %WRAPPER% ninja.exe --version ) else ( MSBuild /version & echo. )
- test_script:
- - cmd: echo Running tests for %arch% and %compiler% with the %backend% backend
- - cmd: "%WRAPPER% %PYTHON% run_tests.py --backend=%backend%"
- on_finish:
- - set "PATH=%ORIG_PATH%"
- - appveyor PushArtifact meson-test-run.txt -DeploymentName "Text test logs"
- - appveyor PushArtifact meson-test-run.xml -DeploymentName "XML test logs"
- cache:
- - C:\cache
|