This adds a new CI job that runs on windows with MSVC. It currently
builds softpipe and osmesa, and runs the related unit tests. It does
rely on meson's wraps for zlib, but I've set up caching of the wrap
dependencies so hopefully that wont be a problem.
I really wanted to user powershell for this, but there just isn't an
easy way to do that, it's much easier to use batch scripts, so thats
what I used.
The leading `/` for .gitlab-ci/lava... must be removed because windows
doesn't understand it, and when it reads the file the job ends in error.
Reviewed-by: Eric Engestrom <eric@engestrom.ch>
file: '/templates/debian.yml'
include:
- - local: '/.gitlab-ci/lava-gitlab-ci.yml'
+ - local: '.gitlab-ci/lava-gitlab-ci.yml'
stages:
- container
- export CCACHE_DIR="$PWD/ccache"
- ccache --show-stats
+.build-windows:
+ extends: .build-common
+ tags:
+ - mesa-windows
+ cache:
+ key: ${CI_JOB_NAME}
+ paths:
+ - subprojects/packagecache
+
.meson-build:
extends:
- .build-linux
CC: "ccache clang-8"
CXX: "ccache clang++-8"
+meson-windows:
+ extends:
+ - .build-windows
+ before_script:
+ - $ENV:ARCH = "x86"
+ - $ENV:VERSION = "2019\Community"
+ script:
+ - cmd /C .gitlab-ci\meson-build.bat
+
scons-swr:
extends: .scons-build
variables:
--- /dev/null
+call "C:\Program Files (x86)\Microsoft Visual Studio\%VERSION%\Common7\Tools\VsDevCmd.bat" -arch=%ARCH%
+
+del /Q /S _build
+meson _build ^
+ -Dbuild-tests=true ^
+ -Db_vscrt=mtd ^
+ -Dbuildtype=release ^
+ -Dllvm=false ^
+ -Dgallium-drivers=swrast ^
+ -Dosmesa=gallium
+meson configure _build
+ninja -C _build
+ninja -C _build test