Deps: Windows: Add back nuke convenience script

To easily force a rebuild of a dependency the nuke script will remove all build
artifacts for a specific dependency from the dependency build folder. This includes

- The Debug and Release build folder of the dependency
- The Debug and Release staging output folder of the dependency
- The harvest output folder of the dependency

For dependencies that have a long dependency chain like embree, shaderc and
python extra convenience scripts are added that nuke the additional deps that
need to be removed to obtain a fully clean build.
This commit is contained in:
Ray Molenkamp
2025-01-14 18:12:02 -07:00
parent a904b4f0fd
commit 716fda7df1
5 changed files with 54 additions and 0 deletions

View File

@@ -0,0 +1,27 @@
@echo off
REM This is a helper script to easily force a rebuild of a single dependency
REM calling nuke depname in c:\db will remove all build artifacts of the
REM dependency and the next time you call vmbuild the dep will be build from
REM scratch.
if "%1"=="" goto EOF:
set ROOT=%~dp0\build\
set CurPath=%ROOT%\s\vs1564D\debug\%1\
if EXIST %CurPath%\nul ( echo removing "%CurPath%" && rd /s /q "%CurPath%" )
set CurPath=%ROOT%\s\vs1564D\x64\debug\external_%1\
if EXIST %CurPath%\nul ( echo removing "%CurPath%" && rd /s /q "%CurPath%" )
set CurPath=%ROOT%\s\vs1564D\x64\debug\%1\
if EXIST %CurPath%\nul ( echo removing "%CurPath%" && rd /s /q "%CurPath%" )
set CurPath=%ROOT%\s\vs1564D\build\%1\
if EXIST %CurPath%\nul ( echo removing "%CurPath%" && rd /s /q "%CurPath%" )
set CurPath=%ROOT%\s\vs1564R\release\%1\
if EXIST %CurPath%\nul ( echo removing "%CurPath%" && rd /s /q "%CurPath%" )
set CurPath=%ROOT%\s\vs1564R\x64\Release\external_%1\
if EXIST %CurPath%\nul ( echo removing "%CurPath%" && rd /s /q "%CurPath%" )
set CurPath=%ROOT%\s\vs1564R\x64\Release\%1\
if EXIST %CurPath%\nul ( echo removing "%CurPath%" && rd /s /q "%CurPath%" )
set CurPath=%ROOT%\s\vs1564R\build\%1\
if EXIST %CurPath%\nul ( echo removing "%CurPath%" && rd /s /q "%CurPath%" )
set CurPath=%ROOT%\output\win64_vc15\%1\
if EXIST %CurPath%\nul ( echo removing "%CurPath%" && rd /s /q "%CurPath%" )

View File

@@ -0,0 +1,9 @@
@echo off
call nuke embree
call nuke dpcpp
call nuke vcintrinsics
call nuke openclheaders
call nuke icdloader
call nuke mp11
call nuke spirvheaders

View File

@@ -0,0 +1,5 @@
@echo off
call nuke python
call nuke numpy
call nuke python_site_packages
call nuke Package_Python

View File

@@ -0,0 +1,5 @@
@echo off
call nuke shaderc
call nuke shaderc_spirv_tools
call nuke shaderc_spirv_headers
call nuke shaderc_glslang

View File

@@ -130,6 +130,14 @@ REM Git won't be in the path yet, use full path
mkdir c:\db
echo Obtaining vmbuild.cmd
curl https://projects.blender.org/blender/blender/raw/branch/main/build_files/build_environment/windows/vmbuild.cmd.txt -o c:\db\vmbuild.cmd
echo Obtaining nuke.cmd
curl https://projects.blender.org/blender/blender/raw/branch/main/build_files/build_environment/windows/nuke.cmd -o c:\db\nuke.cmd
echo Obtaining nuke_python.cmd
curl https://projects.blender.org/blender/blender/raw/branch/main/build_files/build_environment/windows/nuke_python.cmd -o c:\db\nuke_python.cmd
echo Obtaining nuke_embree.cmd
curl https://projects.blender.org/blender/blender/raw/branch/main/build_files/build_environment/windows/nuke_embree.cmd -o c:\db\nuke_embree.cmd
echo Obtaining nuke_shaderc.cmd
curl https://projects.blender.org/blender/blender/raw/branch/main/build_files/build_environment/windows/nuke_shaderc.cmd -o c:\db\nuke_shaderc.cmd
echo *******************************************************************
echo ** Environment variables have changed, please close this console **