17ec681f3Smrg# force the CA cert cache to be rebuilt, in case Meson tries to access anything
27ec681f3SmrgWrite-Host "Refreshing Windows TLS CA cache"
37ec681f3Smrg(New-Object System.Net.WebClient).DownloadString("https://github.com") >$null
47ec681f3Smrg
57ec681f3Smrg$env:PYTHONUTF8=1
67ec681f3Smrg
77ec681f3SmrgGet-Date
87ec681f3SmrgWrite-Host "Compiling Mesa"
97ec681f3Smrg$builddir = New-Item -ItemType Directory -Name "_build"
107ec681f3Smrg$installdir = New-Item -ItemType Directory -Name "_install"
117ec681f3SmrgPush-Location $builddir.FullName
127ec681f3Smrgcmd.exe /C "C:\BuildTools\Common7\Tools\VsDevCmd.bat -host_arch=amd64 -arch=amd64 && meson --default-library=shared -Dzlib:default_library=static --buildtype=release -Db_ndebug=false -Dc_std=c17 -Dcpp_std=vc++latest -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 -Dvulkan-drivers=swrast,amd -Dgallium-drivers=swrast,d3d12,zink -Dshared-glapi=enabled -Dgles2=enabled -Dmicrosoft-clc=enabled -Dstatic-libclc=all -Dspirv-to-dxil=true -Dbuild-tests=true -Dwerror=true -Dwarning_level=2 -Dzlib:warning_level=1 -Dlibelf:warning_level=1 && ninja -j32 install && meson test --num-processes 32"
137ec681f3Smrg$buildstatus = $?
147ec681f3SmrgPop-Location
157ec681f3Smrg
167ec681f3SmrgGet-Date
177ec681f3Smrg
187ec681f3Smrgif (!$buildstatus) {
197ec681f3Smrg  Write-Host "Mesa build or test failed"
207ec681f3Smrg  Exit 1
217ec681f3Smrg}
227ec681f3Smrg
237ec681f3SmrgCopy-Item ".\.gitlab-ci\windows\piglit_run.ps1" -Destination $installdir
247ec681f3SmrgCopy-Item ".\.gitlab-ci\windows\quick_gl.txt" -Destination $installdir
25