diff --git a/.gitlab-ci/windows/Dockerfile_build b/.gitlab-ci/windows/Dockerfile_build index c4035aa7576..46b51a75e49 100644 --- a/.gitlab-ci/windows/Dockerfile_build +++ b/.gitlab-ci/windows/Dockerfile_build @@ -15,5 +15,4 @@ COPY mesa_deps_build.ps1 C:\ RUN C:\mesa_deps_build.ps1 # When building, `--isolation=process` can leverage all cores and memory -# docker build --isolation=process -f .\Dockerfile_build -t mesa_dep --build-arg base_image=mesa_vs . - +# docker build --isolation=process -f .\Dockerfile_build -t mesa_dep --build-arg base_image=mesa_msvc . diff --git a/.gitlab-ci/windows/Dockerfile_msvc b/.gitlab-ci/windows/Dockerfile_msvc index 6eac925afb5..fc303933c66 100644 --- a/.gitlab-ci/windows/Dockerfile_msvc +++ b/.gitlab-ci/windows/Dockerfile_msvc @@ -23,5 +23,8 @@ RUN C:\mesa_deps_choco.ps1 # since the resulting container will want to be used that way be later containers in the build process. # Only --isolation=hyperv can succeed building this container locally, # --isolation=process have network issue when installing Visual Studio and choco will crash -# docker build --isolation=hyperv -f .\Dockerfile_msvc -t mesa_vs --build-arg base_image="mcr.microsoft.com/windows:10.0.19041.1415" . +# docker build --isolation=hyperv -f .\Dockerfile_msvc -t mesa_msvc --build-arg base_image="mcr.microsoft.com/windows:10.0.19041.1415" . +# Example run: +# docker run --isolation=hyperv -it --rm -v ${PWD}:${PWD} mesa_msvc pwsh -ExecutionPolicy RemoteSigned +# docker run --isolation=process -it --rm -v ${PWD}:${PWD} mesa_msvc pwsh -ExecutionPolicy RemoteSigned diff --git a/.gitlab-ci/windows/mesa_build.ps1 b/.gitlab-ci/windows/mesa_build.ps1 index 8c8d0c9a450..88bbd8948bb 100644 --- a/.gitlab-ci/windows/mesa_build.ps1 +++ b/.gitlab-ci/windows/mesa_build.ps1 @@ -29,8 +29,9 @@ Write-Output builddir:$builddir Write-Output installdir:$installdir Write-Output sourcedir:$sourcedir +$vcvars_ver_arg="$args" $MyPath = $MyInvocation.MyCommand.Path | Split-Path -Parent -. "$MyPath\mesa_init_msvc.ps1" +. "$MyPath\mesa_init_msvc.ps1" "$vcvars_ver_arg" $depsInstallPath="C:\mesa-deps" @@ -65,6 +66,7 @@ meson setup ` -Dbuild-tests=true ` -Dwerror=true ` -Dwarning_level=2 ` +$env:EXTRA_MESON_ARGS ` $sourcedir && ` meson install && ` meson test --num-processes 32 --print-errorlogs diff --git a/.gitlab-ci/windows/mesa_deps_libva.ps1 b/.gitlab-ci/windows/mesa_deps_libva.ps1 index 8c4628897ed..b38fcba7771 100644 --- a/.gitlab-ci/windows/mesa_deps_libva.ps1 +++ b/.gitlab-ci/windows/mesa_deps_libva.ps1 @@ -75,5 +75,11 @@ if (!$buildstatus) { Exit 1 } +function Remove-Symlinks { + Get-ChildItem -Force -ErrorAction SilentlyContinue @Args | Where-Object { if($_.Attributes -match "ReparsePoint"){$_.Delete()} } +} +Remove-Symlinks -Path "deps" -Recurse +Remove-Item -Recurse -Force -ErrorAction SilentlyContinue -Path "deps" | Out-Null + Write-Host "Building libva-utils finished at:" Get-Date diff --git a/.gitlab-ci/windows/mesa_init_msvc.ps1 b/.gitlab-ci/windows/mesa_init_msvc.ps1 index a8975b52fa3..63934c91422 100644 --- a/.gitlab-ci/windows/mesa_init_msvc.ps1 +++ b/.gitlab-ci/windows/mesa_init_msvc.ps1 @@ -9,7 +9,7 @@ Import-Module (Join-Path $vsInstallPath "Common7\Tools\Microsoft.VisualStudio.De # VS2019 14.20 to 14.29 use -vcvars_ver=14.29 # VS2022 14.30 to 14.38 (not finished yet) use -vcvars_ver=14 to choose the newest version -$vcvars_ver_arg=$args +$vcvars_ver_arg="$args" if ($null -eq $vcvars_ver_arg[0]) { $vcvars_ver_arg="-vcvars_ver=14" }