From cb50d0cabfd4624d156d7c3adb2f67883a9accf1 Mon Sep 17 00:00:00 2001 From: Yonggang Luo Date: Thu, 21 Dec 2023 04:18:39 +0800 Subject: [PATCH] ci/msvc: Split the install of rust and d3d out of mesa_deps_test.ps1 There is no need repeatedly downloading rust and d3d when building the docker locally Download glext.h from github Remove src directory and .git directory once compiling finished Split piglit and depq compiling out Clean middle files of piglit and depq ci/msvc: Improve fetch source of spirv_samples_source Signed-off-by: Yonggang Luo Reviewed-by: Jesse Natalie Part-of: --- .gitlab-ci/windows/Dockerfile_test | 11 ++ .gitlab-ci/windows/mesa_deps_d3d.ps1 | 49 +++++ .gitlab-ci/windows/mesa_deps_rust.ps1 | 17 ++ .gitlab-ci/windows/mesa_deps_test.ps1 | 185 ++----------------- .gitlab-ci/windows/mesa_deps_test_deqp.ps1 | 88 +++++++++ .gitlab-ci/windows/mesa_deps_test_piglit.ps1 | 103 +++++++++++ 6 files changed, 285 insertions(+), 168 deletions(-) create mode 100644 .gitlab-ci/windows/mesa_deps_d3d.ps1 create mode 100644 .gitlab-ci/windows/mesa_deps_rust.ps1 create mode 100644 .gitlab-ci/windows/mesa_deps_test_deqp.ps1 create mode 100644 .gitlab-ci/windows/mesa_deps_test_piglit.ps1 diff --git a/.gitlab-ci/windows/Dockerfile_test b/.gitlab-ci/windows/Dockerfile_test index 0c0075a7f26..5b9c1fdd7a2 100644 --- a/.gitlab-ci/windows/Dockerfile_test +++ b/.gitlab-ci/windows/Dockerfile_test @@ -6,6 +6,17 @@ FROM ${base_image} COPY mesa_deps_vulkan_sdk.ps1 C:\ RUN C:\mesa_deps_vulkan_sdk.ps1 +COPY mesa_deps_d3d.ps1 C:\ +RUN C:\mesa_deps_d3d.ps1 + +COPY mesa_deps_rust.ps1 C:\ +RUN C:\mesa_deps_rust.ps1 + COPY mesa_init_msvc.ps1 C:\ + +COPY mesa_deps_test_piglit.ps1 C:\ +RUN C:\mesa_deps_test_piglit.ps1 +COPY mesa_deps_test_deqp.ps1 c:\ +RUN C:\mesa_deps_test_deqp.ps1 COPY mesa_deps_test.ps1 C:\ RUN C:\mesa_deps_test.ps1 diff --git a/.gitlab-ci/windows/mesa_deps_d3d.ps1 b/.gitlab-ci/windows/mesa_deps_d3d.ps1 new file mode 100644 index 00000000000..59e73f611ec --- /dev/null +++ b/.gitlab-ci/windows/mesa_deps_d3d.ps1 @@ -0,0 +1,49 @@ +# Downloading specified D3D runtime +# Touch this file needs update both WINDOWS_X64_BUILD_TAG WINDOWS_X64_TEST_TAG +# This file needs run in administrator mode + +$ProgressPreference = "SilentlyContinue" + +$depsInstallPath="C:\mesa-deps" + +Write-Host "Downloading DirectX 12 Agility SDK at:" +Get-Date +Invoke-WebRequest -Uri https://www.nuget.org/api/v2/package/Microsoft.Direct3D.D3D12/1.610.2 -OutFile 'agility.zip' +Expand-Archive -Path 'agility.zip' -DestinationPath 'C:\agility' +# Copy Agility SDK into mesa-deps\bin\D3D12 +New-Item -ErrorAction SilentlyContinue -ItemType Directory -Path $depsInstallPath\bin -Name 'D3D12' +Copy-Item 'C:\agility\build\native\bin\x64\*.dll' -Destination $depsInstallPath\bin\D3D12 +Remove-Item 'agility.zip' +Remove-Item -Recurse 'C:\agility' + +Write-Host "Downloading Updated WARP at:" +Get-Date +Invoke-WebRequest -Uri https://www.nuget.org/api/v2/package/Microsoft.Direct3D.WARP/1.0.7.1 -OutFile 'warp.zip' +Expand-Archive -Path 'warp.zip' -DestinationPath 'C:\warp' +# Copy WARP into mesa-deps\bin +Copy-Item 'C:\warp\build\native\amd64\d3d10warp.dll' -Destination $depsInstallPath\bin +Remove-Item 'warp.zip' +Remove-Item -Recurse 'C:\warp' + +Write-Host "Downloading DirectXShaderCompiler release at:" +Get-Date +Invoke-WebRequest -Uri https://github.com/microsoft/DirectXShaderCompiler/releases/download/v1.7.2207/dxc_2022_07_18.zip -OutFile 'DXC.zip' +Expand-Archive -Path 'DXC.zip' -DestinationPath 'C:\DXC' +# No more need to get dxil.dll from the VS install +Copy-Item 'C:\DXC\bin\x64\*.dll' -Destination 'C:\Windows\System32' +Remove-Item -Recurse 'DXC.zip' +Remove-Item -Recurse 'C:\DXC' + +Write-Host "Enabling developer mode at:" +Get-Date +# Create AppModelUnlock if it doesn't exist, required for enabling Developer Mode +$RegistryKeyPath = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock" +if (-not(Test-Path -Path $RegistryKeyPath)) { + New-Item -Path $RegistryKeyPath -ItemType Directory -Force +} + +# Add registry value to enable Developer Mode +New-ItemProperty -Path $RegistryKeyPath -Name AllowDevelopmentWithoutDevLicense -PropertyType DWORD -Value 1 -Force + +Write-Host "Complete download D3D at:" +Get-Date diff --git a/.gitlab-ci/windows/mesa_deps_rust.ps1 b/.gitlab-ci/windows/mesa_deps_rust.ps1 new file mode 100644 index 00000000000..0545d2e0951 --- /dev/null +++ b/.gitlab-ci/windows/mesa_deps_rust.ps1 @@ -0,0 +1,17 @@ +# Installing rust compiler +# Touch this file needs update both WINDOWS_X64_BUILD_TAG WINDOWS_X64_TEST_TAG +# This file needs run in administrator mode + +$ProgressPreference = "SilentlyContinue" + +Write-Host "Installing rust at:" +Get-Date +$url = 'https://static.rust-lang.org/rustup/dist/x86_64-pc-windows-msvc/rustup-init.exe'; +Write-Host ('Downloading {0} ...' -f $url); +Invoke-WebRequest -Uri $url -OutFile 'rustup-init.exe'; +Write-Host "Installing rust toolchain" +.\rustup-init.exe -y; +Remove-Item rustup-init.exe; + +Write-Host "Installing rust finished at:" +Get-Date diff --git a/.gitlab-ci/windows/mesa_deps_test.ps1 b/.gitlab-ci/windows/mesa_deps_test.ps1 index e17cd330b8d..d53157c9bf0 100644 --- a/.gitlab-ci/windows/mesa_deps_test.ps1 +++ b/.gitlab-ci/windows/mesa_deps_test.ps1 @@ -1,180 +1,29 @@ -Get-Date -Write-Host "Cloning Waffle" +# Compiling tests deps +$ProgressPreference = "SilentlyContinue" $MyPath = $MyInvocation.MyCommand.Path | Split-Path -Parent . "$MyPath\mesa_init_msvc.ps1" -git clone --no-progress --single-branch --no-checkout https://gitlab.freedesktop.org/mesa/waffle.git 'C:\src\waffle' +$spirv_samples_source = Join-Path -Path "$PWD" -ChildPath "spirv-samples" + +Write-Host "Cloning spirv-samples at:" +Get-Date +New-Item -ItemType Directory -Path "$spirv_samples_source" | Out-Null +Push-Location -Path $spirv_samples_source +git init +git remote add origin https://github.com/dneto0/spirv-samples.git +git fetch --depth 1 origin 36372636df06a24c4e2de1551beee055db01b91d # of branch main if (!$?) { - Write-Host "Failed to clone Waffle repository" + Write-Host "Failed to fetch spirv-samples repository" + Pop-Location Exit 1 } - -Push-Location -Path C:\src\waffle -git checkout 950a1f35a718bc2a8e1dda75845e52651bb331a7 +git checkout FETCH_HEAD Pop-Location +Remove-Item -Recurse -Force -ErrorAction SilentlyContinue -Path "$spirv_samples_source\.git" | Out-Null +Write-Host "Cloning spirv-samples finished at:" Get-Date -$waffle_build = New-Item -ItemType Directory -Path "C:\src\waffle" -Name "build" -Push-Location -Path $waffle_build.FullName -Write-Host "Compiling Waffle" -meson setup ` ---buildtype=release ` ---default-library=static ` ---prefix="C:\Waffle" && ` -ninja -j32 install -$buildstatus = $? -Pop-Location -Remove-Item -Recurse -Path $waffle_build -if (!$buildstatus) { - Write-Host "Failed to compile or install Waffle" - Exit 1 -} +Write-Host "Complete Dockerfile_test at:" Get-Date -Write-Host "Downloading glext.h" -New-Item -ItemType Directory -Path ".\glext" -Name "GL" -$ProgressPreference = "SilentlyContinue" -Invoke-WebRequest -Uri 'https://www.khronos.org/registry/OpenGL/api/GL/glext.h' -OutFile '.\glext\GL\glext.h' | Out-Null - -Get-Date -Write-Host "Cloning Piglit" -git clone --no-progress --single-branch --no-checkout https://gitlab.freedesktop.org/mesa/piglit.git 'C:\piglit' -if (!$?) { - Write-Host "Failed to clone Piglit repository" - Exit 1 -} -Push-Location -Path C:\piglit -git checkout b41accc83689966f91217fc5b57dbe06202b8c8c - -Get-Date -Write-Host "Compiling Piglit" -cmake -S . -B . ` --GNinja ` --DCMAKE_BUILD_TYPE=Release ` --DPIGLIT_USE_WAFFLE=ON ` --DWaffle_INCLUDE_DIRS=C:\Waffle\include\waffle-1 ` --DWaffle_LDFLAGS=C:\Waffle\lib\libwaffle-1.a ` --DGLEXT_INCLUDE_DIR=.\glext && ` -ninja -j32 -$buildstatus = $? -Pop-Location -if (!$buildstatus) { - Write-Host "Failed to compile Piglit" - Exit 1 -} - -Get-Date -Write-Host "Cloning spirv-samples" -git clone --no-progress --single-branch --no-checkout https://github.com/dneto0/spirv-samples.git C:\spirv-samples\ -Push-Location -Path C:\spirv-samples\ -git checkout 36372636df06a24c4e2de1551beee055db01b91d -Pop-Location - -Get-Date -Write-Host "Cloning Vulkan and GL Conformance Tests" -$deqp_source = "C:\src\VK-GL-CTS\" -git clone --no-progress --single-branch https://github.com/KhronosGroup/VK-GL-CTS.git -b vulkan-cts-1.3.4 $deqp_source -if (!$?) { - Write-Host "Failed to clone deqp repository" - Exit 1 -} - -Push-Location -Path $deqp_source -git checkout 56114106d860c121cd6ff0c3b926ddc50c4c11fd -# --insecure is due to SSL cert failures hitting sourceforge for zlib and -# libpng (sigh). The archives get their checksums checked anyway, and git -# always goes through ssh or https. -py .\external\fetch_sources.py --insecure -Pop-Location - -Get-Date -$deqp_build = New-Item -ItemType Directory -Path "C:\deqp" -Push-Location -Path $deqp_build.FullName -Write-Host "Compiling deqp" -cmake -S $($deqp_source) ` --B . ` --GNinja ` --DCMAKE_BUILD_TYPE=Release ` --DDEQP_TARGET=default && ` -ninja -j32 -$buildstatus = $? -Pop-Location -if (!$buildstatus) { - Write-Host "Failed to compile deqp" - Exit 1 -} - -# Copy test result templates -Copy-Item -Path "$($deqp_source)\doc\testlog-stylesheet\testlog.css" -Destination $deqp_build -Copy-Item -Path "$($deqp_source)\doc\testlog-stylesheet\testlog.xsl" -Destination $deqp_build - -# Copy Vulkan must-pass list -$deqp_mustpass = New-Item -ItemType Directory -Path $deqp_build -Name "mustpass" -$root_mustpass = Join-Path -Path $deqp_source -ChildPath "external\vulkancts\mustpass\main" -$files = Get-Content "$($root_mustpass)\vk-default.txt" -foreach($file in $files) { - Get-Content "$($root_mustpass)\$($file)" | Add-Content -Path "$($deqp_mustpass)\vk-main.txt" -} -Remove-Item -Force -Recurse $deqp_source - -Get-Date -$url = 'https://static.rust-lang.org/rustup/dist/x86_64-pc-windows-msvc/rustup-init.exe'; -Write-Host ('Downloading {0} ...' -f $url); -Invoke-WebRequest -Uri $url -OutFile 'rustup-init.exe'; -Write-Host "Installing rust toolchain" -C:\rustup-init.exe -y; -Remove-Item C:\rustup-init.exe; - -Get-Date -Write-Host "Installing deqp-runner" -$env:Path += ";$($env:USERPROFILE)\.cargo\bin" -cargo install --git https://gitlab.freedesktop.org/anholt/deqp-runner.git --tag v0.16.1 - -Get-Date -Write-Host "Downloading DirectX 12 Agility SDK" -Invoke-WebRequest -Uri https://www.nuget.org/api/v2/package/Microsoft.Direct3D.D3D12/1.610.2 -OutFile 'agility.zip' -Expand-Archive -Path 'agility.zip' -DestinationPath 'C:\agility' -Remove-Item 'agility.zip' - -$piglit_bin = 'C:\Piglit\bin' -$vk_cts_bin = "$deqp_build\external\vulkancts\modules\vulkan" - -# Copy Agility SDK into subfolder of piglit and Vulkan CTS -$agility_dest = New-Item -ItemType Directory -Path $piglit_bin -Name 'D3D12' -Copy-Item 'C:\agility\build\native\bin\x64\*.dll' -Destination $agility_dest -$agility_dest = New-Item -ItemType Directory -Path $vk_cts_bin -Name 'D3D12' -Copy-Item 'C:\agility\build\native\bin\x64\*.dll' -Destination $agility_dest -Remove-Item -Recurse 'C:\agility' - -Get-Date -Write-Host "Downloading Updated WARP" -Invoke-WebRequest -Uri https://www.nuget.org/api/v2/package/Microsoft.Direct3D.WARP/1.0.7.1 -OutFile 'warp.zip' -Expand-Archive -Path 'warp.zip' -DestinationPath 'C:\warp' -Remove-Item 'warp.zip' - -# Copy WARP next to piglit and Vulkan CTS -Copy-Item 'C:\warp\build\native\amd64\d3d10warp.dll' -Destination $piglit_bin -Copy-Item 'C:\warp\build\native\amd64\d3d10warp.dll' -Destination $vk_cts_bin -Remove-Item -Recurse 'C:\warp' - -Get-Date -Write-Host "Downloading DirectXShaderCompiler release" -Invoke-WebRequest -Uri https://github.com/microsoft/DirectXShaderCompiler/releases/download/v1.7.2207/dxc_2022_07_18.zip -OutFile 'DXC.zip' -Expand-Archive -Path 'DXC.zip' -DestinationPath 'C:\DXC' -# No more need to get dxil.dll from the VS install -Copy-Item 'C:\DXC\bin\x64\*.dll' -Destination 'C:\Windows\System32' - -Get-Date -Write-Host "Enabling developer mode" -# Create AppModelUnlock if it doesn't exist, required for enabling Developer Mode -$RegistryKeyPath = "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock" -if (-not(Test-Path -Path $RegistryKeyPath)) { - New-Item -Path $RegistryKeyPath -ItemType Directory -Force -} - -# Add registry value to enable Developer Mode -New-ItemProperty -Path $RegistryKeyPath -Name AllowDevelopmentWithoutDevLicense -PropertyType DWORD -Value 1 -Force - -Get-Date -Write-Host "Complete" diff --git a/.gitlab-ci/windows/mesa_deps_test_deqp.ps1 b/.gitlab-ci/windows/mesa_deps_test_deqp.ps1 new file mode 100644 index 00000000000..503803c2857 --- /dev/null +++ b/.gitlab-ci/windows/mesa_deps_test_deqp.ps1 @@ -0,0 +1,88 @@ +# Compiling deqp + +$ProgressPreference = "SilentlyContinue" +$MyPath = $MyInvocation.MyCommand.Path | Split-Path -Parent +. "$MyPath\mesa_init_msvc.ps1" + +$source_dir = Join-Path -Path "$PWD" -ChildPath "src" +$deqp_source = Join-Path -Path "$source_dir" -ChildPath "VK-GL-CTS" +$deqp_build = Join-Path -Path "$PWD" -ChildPath "deqp" + +Write-Host "Cloning Vulkan and GL Conformance Tests at:" +Get-Date +New-Item -ItemType Directory -Path "$deqp_source" | Out-Null +Push-Location -Path $deqp_source +git init +git remote add origin https://github.com/KhronosGroup/VK-GL-CTS.git +git fetch --depth 1 origin 56114106d860c121cd6ff0c3b926ddc50c4c11fd # of branch vulkan-cts-1.3.4 +if (!$?) { + Write-Host "Failed to fetch deqp repository" + Pop-Location + Exit 1 +} +git checkout FETCH_HEAD + +Write-Host "Fetch sources inside $deqp_source at:" +Get-Date +# --insecure is due to SSL cert failures hitting sourceforge for zlib and +# libpng (sigh). The archives get their checksums checked anyway, and git +# always goes through ssh or https. +py .\external\fetch_sources.py --insecure +Pop-Location + +Write-Host "Compiling deqp at:" +Get-Date +New-Item -ItemType Directory -Path "$deqp_build" | Out-Null +Push-Location -Path $deqp_build +cmake -S $($deqp_source) ` +-B . ` +-GNinja ` +-DCMAKE_BUILD_TYPE=Release ` +-DDEQP_TARGET=default && ` +ninja -j32 +if (!$?) { + Write-Host "Failed to compile deqp" + Pop-Location + Exit 1 +} +Pop-Location + +# Copy test result templates +Copy-Item -Path "$($deqp_source)\doc\testlog-stylesheet\testlog.css" -Destination $deqp_build +Copy-Item -Path "$($deqp_source)\doc\testlog-stylesheet\testlog.xsl" -Destination $deqp_build + +# Copy Vulkan must-pass list +$deqp_mustpass = New-Item -ItemType Directory -Path $deqp_build -Name "mustpass" +$root_mustpass = Join-Path -Path $deqp_source -ChildPath "external\vulkancts\mustpass\main" +$files = Get-Content "$($root_mustpass)\vk-default.txt" +foreach($file in $files) { + Get-Content "$($root_mustpass)\$($file)" | Add-Content -Path "$($deqp_mustpass)\vk-main.txt" +} + +Write-Host "Installing deqp-runner at:" +Get-Date +$env:Path += ";$($env:USERPROFILE)\.cargo\bin" +cargo install --git https://gitlab.freedesktop.org/anholt/deqp-runner.git --tag v0.16.1 + +$depsInstallPath="C:\mesa-deps" +$vk_cts_bin = "$deqp_build\external\vulkancts\modules\vulkan" + +# Hard link Agility SDK into subfolder of Vulkan CTS +$agility_dest = New-Item -ItemType Directory -Path $vk_cts_bin -Name 'D3D12' +New-Item -ItemType HardLink -path $agility_dest\D3D12Core.dll -Value $depsInstallPath\bin\D3D12\D3D12Core.dll +New-Item -ItemType HardLink -path $agility_dest\d3d12SDKLayers.dll -Value $depsInstallPath\bin\D3D12\d3d12SDKLayers.dll + +# Hard link WARP next to Vulkan CTS +New-Item -ItemType HardLink -path $vk_cts_bin\d3d10warp.dll -Value $depsInstallPath\bin\d3d10warp.dll + +Remove-Item -Recurse -Force -ErrorAction SilentlyContinue -Path "$source_dir" | Out-Null + +# Cleanup deqp intermediate files +Get-ChildItem -Force -ErrorAction SilentlyContinue -Recurse "$deqp_build" | Where-Object { + if($_.FullName -match "CMake|.git|.lib"){ + Remove-Item -Recurse -Force -ErrorAction SilentlyContinue -Path $_.FullName | Out-Null + } +} + +Write-Host "Compiling deqp finished at:" +Get-Date diff --git a/.gitlab-ci/windows/mesa_deps_test_piglit.ps1 b/.gitlab-ci/windows/mesa_deps_test_piglit.ps1 new file mode 100644 index 00000000000..9afa0bbb574 --- /dev/null +++ b/.gitlab-ci/windows/mesa_deps_test_piglit.ps1 @@ -0,0 +1,103 @@ +# Compiling Piglit + +$ProgressPreference = "SilentlyContinue" +$MyPath = $MyInvocation.MyCommand.Path | Split-Path -Parent +. "$MyPath\mesa_init_msvc.ps1" + +$source_dir = Join-Path -Path "$PWD" -ChildPath "src" +$waffle_source = Join-Path -Path "$source_dir" -ChildPath "waffle" +$waffle_install = Join-Path -Path "$PWD" -ChildPath "waffle" +$piglit_source = Join-Path -Path "$PWD" -ChildPath "Piglit" + +Write-Host "Cloning Waffle at:" +Get-Date +New-Item -ItemType Directory -Path "$waffle_source" | Out-Null +Push-Location -Path $waffle_source +git init +git remote add origin https://gitlab.freedesktop.org/mesa/waffle.git +git fetch --depth 1 origin 950a1f35a718bc2a8e1dda75845e52651bb331a7 # of branch master +if (!$?) { + Write-Host "Failed to fetch Waffle repository" + Pop-Location + Exit 1 +} +git checkout FETCH_HEAD +Pop-Location + +Write-Host "Compiling Waffle at:" +Get-Date +$waffle_build = Join-Path -Path "$source_dir" -ChildPath "waffle\build" +New-Item -ItemType Directory -Path "$waffle_build" | Out-Null +Push-Location -Path $waffle_build +meson setup ` +--buildtype=release ` +--default-library=static ` +--prefix="$waffle_install" && ` +ninja -j32 install +if (!$?) { + Write-Host "Failed to compile or install Waffle" + Pop-Location + Exit 1 +} +Pop-Location +Remove-Item -Recurse -Force -ErrorAction SilentlyContinue -Path "$waffle_build" | Out-Null + +Write-Host "Downloading glext.h at:" +Get-Date +New-Item -ItemType Directory -Path "$source_dir\glext\GL" | Out-Null +Invoke-WebRequest -Uri 'https://github.com/KhronosGroup/OpenGL-Registry/raw/main/api/GL/glext.h' -OutFile "$source_dir\glext\GL\glext.h" | Out-Null + +Write-Host "Cloning Piglit at:" +Get-Date +New-Item -ItemType Directory -Path "$piglit_source" | Out-Null +Push-Location -Path $piglit_source +git init +git remote add origin https://gitlab.freedesktop.org/mesa/piglit.git +git fetch --depth 1 origin b41accc83689966f91217fc5b57dbe06202b8c8c # of branch main +if (!$?) { + Write-Host "Failed to fetch Piglit repository" + Pop-Location + Exit 1 +} +git checkout FETCH_HEAD + +Write-Host "Compiling Piglit at:" +Get-Date +cmake -S . -B . ` +-GNinja ` +-DCMAKE_BUILD_TYPE=Release ` +-DPIGLIT_USE_WAFFLE=ON ` +-DWaffle_INCLUDE_DIRS="$waffle_install\include\waffle-1" ` +-DWaffle_LDFLAGS="$waffle_install\lib\libwaffle-1.a" ` +-DGLEXT_INCLUDE_DIR="$source_dir\glext" && ` +ninja -j32 +if (!$?) { + Write-Host "Failed to compile Piglit" + Pop-Location + Exit 1 +} +Pop-Location + +$depsInstallPath="C:\mesa-deps" +$piglit_bin = "$piglit_source\bin" + +# Hard link Agility SDK into subfolder of piglit +$agility_dest = New-Item -ItemType Directory -Path $piglit_bin -Name 'D3D12' +New-Item -ItemType HardLink -path $agility_dest\D3D12Core.dll -Value $depsInstallPath\bin\D3D12\D3D12Core.dll +New-Item -ItemType HardLink -path $agility_dest\d3d12SDKLayers.dll -Value $depsInstallPath\bin\D3D12\d3d12SDKLayers.dll + +# Hard link WARP next to piglit +New-Item -ItemType HardLink -path $piglit_bin\d3d10warp.dll -Value $depsInstallPath\bin\d3d10warp.dll + +Remove-Item -Recurse -Force -ErrorAction SilentlyContinue -Path "$source_dir" | Out-Null +Remove-Item -Recurse -Force -ErrorAction SilentlyContinue -Path "$waffle_install" | Out-Null + +# Cleanup piglit intermediate files +Get-ChildItem -Force -ErrorAction SilentlyContinue -Recurse "$piglit_source" | Where-Object { + if($_.FullName -match "CMake|.git|.lib"){ + Remove-Item -Recurse -Force -ErrorAction SilentlyContinue -Path $_.FullName | Out-Null + } +} + +Write-Host "Compiling Piglit finished at:" +Get-Date