
GitLab CI doesn't allow us to store artifacts from outside the build-directory, so let's create an install-directory and install there instead. To do this properly, we need to expand a variable inside the command-line, so we need to change to a double-quoted string. Reviewed-by: Daniel Stone <daniels@collabora.com> Reviewed-by: Eric Anholt <eric@anholt.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7857>
20 lines
994 B
PowerShell
20 lines
994 B
PowerShell
# force the CA cert cache to be rebuilt, in case Meson tries to access anything
|
|
Write-Host "Refreshing Windows TLS CA cache"
|
|
(New-Object System.Net.WebClient).DownloadString("https://github.com") >$null
|
|
|
|
Get-Date
|
|
Write-Host "Compiling Mesa"
|
|
$builddir = New-Item -ItemType Directory -Name "_build"
|
|
$installdir = New-Item -ItemType Directory -Name "_install"
|
|
Push-Location $builddir.FullName
|
|
cmd.exe /C "C:\BuildTools\Common7\Tools\VsDevCmd.bat -host_arch=amd64 -arch=amd64 && meson --default-library=shared --buildtype=release -Db_ndebug=false -Db_vscrt=mt --cmake-prefix-path=`"C:\llvm-10`" --pkg-config-path=`"C:\llvm-10\lib\pkgconfig;C:\llvm-10\share\pkgconfig;C:\spirv-tools\lib\pkgconfig`" --prefix=`"$installdir`" -Dllvm=enabled -Dshared-llvm=disabled -Dgallium-drivers=swrast,d3d12 -Dmicrosoft-clc=enabled -Dstatic-libclc=all -Dbuild-tests=true && ninja -j32 install test"
|
|
$buildstatus = $?
|
|
Pop-Location
|
|
|
|
Get-Date
|
|
|
|
if (!$buildstatus) {
|
|
Write-Host "Mesa build or test failed"
|
|
Exit 1
|
|
}
|