You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
144 lines
5.9 KiB
144 lines
5.9 KiB
clone_depth: 1 |
|
|
|
environment: |
|
matrix: |
|
- TARGET: desktop |
|
COMPILER: msvc |
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 |
|
APPVEYOR_JOB_NAME: windows-msvc2017 |
|
PYTHON: 6 |
|
PYBIND: 2.3.0 |
|
- TARGET: desktop |
|
COMPILER: msvc |
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 |
|
APPVEYOR_JOB_NAME: windows-msvc2019 |
|
# Python 3.6 was removed from 2019 and 2022 images in Dec 2023 |
|
PYTHON: 7 |
|
PYBIND: 2.3.0 |
|
- TARGET: desktop |
|
COMPILER: msvc |
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022 |
|
APPVEYOR_JOB_NAME: windows-msvc2022 |
|
PYTHON: 7 |
|
PYBIND: 2.9.0 # first supporting MSVC 2022 |
|
- TARGET: desktop |
|
COMPILER: msvc |
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 |
|
APPVEYOR_JOB_NAME: windows-static-msvc2019 |
|
BUILD_STATIC: ON |
|
PYTHON: 7 |
|
PYBIND: 2.3.0 |
|
- TARGET: desktop |
|
COMPILER: msvc |
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022 |
|
APPVEYOR_JOB_NAME: windows-static-msvc2022 |
|
BUILD_STATIC: ON |
|
PYTHON: 7 |
|
PYBIND: 2.9.0 # first supporting MSVC 2022 |
|
# clang-cl crashes with pybind11, "Illegal instruction" and |
|
# lld-link: warning: ignoring unknown argument '-flto' |
|
# LLVM ERROR: Associative COMDAT symbol '??0type_error@pybind11@@QEAA@PEBD@Z' does not exist. |
|
# TODO: retry once their changelog says something about clang-cl being fixed |
|
#- TARGET: desktop |
|
#COMPILER: msvc-clang |
|
#APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 |
|
#APPVEYOR_JOB_NAME: windows-msvc2019-clang |
|
#PYTHON: 7 |
|
#PYBIND: 2.7.0 |
|
#- TARGET: desktop |
|
#COMPILER: msvc-clang |
|
#APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022 |
|
#APPVEYOR_JOB_NAME: windows-msvc2022-clang |
|
#PYTHON: 7 |
|
#PYBIND: 2.9.0 # first supporting MSVC 2022 |
|
- TARGET: desktop |
|
COMPILER: msvc |
|
# Same reasoning as in Corrade for /EHsc |
|
COMPILER_EXTRA: -DCMAKE_CXX_FLAGS="/permissive- /EHsc" -DCORRADE_MSVC_COMPATIBILITY=OFF |
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 |
|
APPVEYOR_JOB_NAME: windows-conforming-msvc2019 |
|
PYTHON: 7 |
|
PYBIND: 2.3.0 |
|
- TARGET: desktop |
|
COMPILER: msvc |
|
# Not playing with fire and using /EHsc on 2022 as well |
|
COMPILER_EXTRA: -DCMAKE_CXX_FLAGS="/permissive- /EHsc" -DCORRADE_MSVC_COMPATIBILITY=OFF |
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022 |
|
APPVEYOR_JOB_NAME: windows-conforming-msvc2022 |
|
PYTHON: 7 |
|
PYBIND: 2.9.0 # first supporting MSVC 2022 |
|
- TARGET: desktop-gles |
|
TARGET_GLES2: ON |
|
COMPILER: msvc |
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 |
|
APPVEYOR_JOB_NAME: windows-gles2-msvc2019 |
|
PYTHON: 7 |
|
PYBIND: 2.3.0 |
|
- TARGET: desktop-gles |
|
TARGET_GLES2: ON |
|
COMPILER: msvc |
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022 |
|
APPVEYOR_JOB_NAME: windows-gles2-msvc2022 |
|
PYTHON: 7 |
|
PYBIND: 2.9.0 # first supporting MSVC 2022 |
|
- TARGET: desktop-gles |
|
TARGET_GLES2: OFF |
|
COMPILER: msvc |
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 |
|
APPVEYOR_JOB_NAME: windows-gles3-msvc2019 |
|
PYTHON: 7 |
|
PYBIND: 2.3.0 |
|
- TARGET: desktop-gles |
|
TARGET_GLES2: OFF |
|
COMPILER: msvc |
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2022 |
|
APPVEYOR_JOB_NAME: windows-gles3-msvc2022 |
|
PYTHON: 7 |
|
PYBIND: 2.9.0 # first supporting MSVC 2022 |
|
|
|
install: |
|
# Ninja. `cinst ninja` started 503ing in late November 2019 and wasn't really |
|
# reliable before either. So install by hand, as that's reliable always. |
|
- IF NOT EXIST %APPVEYOR_BUILD_FOLDER%\ninja-win.zip appveyor DownloadFile https://github.com/ninja-build/ninja/releases/download/v1.9.0/ninja-win.zip |
|
- 7z x ninja-win.zip -oC:/tools |
|
- set PATH=C:/tools;%PATH% |
|
|
|
# Codecov uploader |
|
- appveyor DownloadFile https://uploader.codecov.io/latest/windows/codecov.exe -FileName C:/tools/codecov.exe |
|
|
|
# pip is in Scripts |
|
- set PATH=C:/tools/ninja;C:/Python3%PYTHON%-x64;C:/Python3%PYTHON%-x64/Scripts;%PATH% |
|
- pip3 install coverage |
|
|
|
- IF NOT "%BUILD_STATIC%" == "ON" set BUILD_STATIC=OFF |
|
# The fugly \=/ magic is to replace backward slashes with forward so CMake |
|
# doesn't treat those as escape characters |
|
- IF "%BUILD_STATIC%" == "ON" set "STATIC_PLUGIN_PATH=-DMAGNUM_PLUGINS_DIR=%APPVEYOR_BUILD_FOLDER:\=/%/deps/bin/magnum" |
|
|
|
# pybind11. Built in the CI script. |
|
- IF NOT EXIST %APPVEYOR_BUILD_FOLDER%\v%PYBIND%.zip appveyor DownloadFile https://github.com/pybind/pybind11/archive/v%PYBIND%.zip |
|
- 7z x v%PYBIND%.zip |
|
|
|
# SDL2 |
|
- IF "%TARGET%" == "desktop" IF "%COMPILER:~0,4%" == "msvc" IF NOT EXIST %APPVEYOR_BUILD_FOLDER%\SDL2-devel-2.0.9-VC.zip appveyor DownloadFile https://www.libsdl.org/release/SDL2-devel-2.0.9-VC.zip |
|
- IF "%TARGET%" == "desktop" IF "%COMPILER:~0,4%" == "msvc" 7z x SDL2-devel-2.0.9-VC.zip && ren SDL2-2.0.9 SDL |
|
|
|
# GLFW |
|
- IF "%TARGET%" == "desktop" IF NOT EXIST %APPVEYOR_BUILD_FOLDER%\glfw-3.2.1.bin.WIN64.zip appveyor DownloadFile https://github.com/glfw/glfw/releases/download/3.2.1/glfw-3.2.1.bin.WIN64.zip |
|
- IF "%TARGET%" == "desktop" 7z x glfw-3.2.1.bin.WIN64.zip && ren glfw-3.2.1.bin.WIN64 glfw && mkdir deps && mkdir deps\lib && mkdir deps\bin && mkdir deps\include && xcopy /e glfw\include\* deps\include\ |
|
- IF "%TARGET%" == "desktop" IF "%COMPILER:~0,4%" == "msvc" copy glfw\lib-vc2015\glfw3.dll deps\bin\ && copy glfw\lib-vc2015\glfw3dll.lib deps\lib\glfw3.lib |
|
|
|
# meshoptimizer for MSVC 2022, 2019 and clang-cl; MinGW. MSVC 2017 doesn't work |
|
# with the 2019 build unfortunately, and can't build it because of |
|
# https://github.com/actions/runner-images/issues/3294 |
|
- IF "%COMPILER:~0,4%" == "msvc" appveyor DownloadFile https://ci.magnum.graphics/meshoptimizer-0.21-windows-2019-debug.zip && 7z x meshoptimizer-0.21-windows-2019-debug.zip -o%APPVEYOR_BUILD_FOLDER%\deps |
|
- IF "%COMPILER%" == "mingw" appveyor DownloadFile https://ci.magnum.graphics/meshoptimizer-0.21-windows-mingw.zip && 7z x meshoptimizer-0.21-windows-mingw.zip -o%APPVEYOR_BUILD_FOLDER%\deps |
|
|
|
build_script: |
|
- IF "%TARGET%" == "desktop" IF "%COMPILER:~0,4%" == "msvc" call package\ci\appveyor-desktop.bat |
|
- IF "%TARGET%" == "desktop-gles" call package\ci\appveyor-desktop-gles.bat |
|
|
|
cache: |
|
- SDL2-devel-2.0.9-VC.zip |
|
- glfw-3.2.1.bin.WIN64.zip |
|
- v2.3.0.zip
|
|
|