made build system more agnostic to the projet it builds

This commit is contained in:
2026-07-27 15:16:39 -04:00
parent 0d6b196ce6
commit b196641f18
19 changed files with 1717 additions and 1404 deletions
+60 -1
View File
@@ -4,8 +4,67 @@ setlocal
set SCRIPT_DIR=%~dp0
cd /d "%SCRIPT_DIR%.."
if not exist "Intermediate" mkdir "Intermediate"
echo Generating Visual Studio / Rider solution and project files...
misc\fbuild.exe gen
set PLAN=Intermediate\vs_plan.txt
if exist "%PLAN%" del /f /q "%PLAN%"
>>"%PLAN%" echo GLOBAL_INCLUDE $(SolutionDir)Juliet\include;$(SolutionDir)Juliet\src;$(SolutionDir)Game;$(SolutionDir)External\imgui;$(SolutionDir)External\imgui\backends;
>>"%PLAN%" echo DEF_COMMON JULIET_WIN32;UNICODE;_UNICODE;WIN32_LEAN_AND_MEAN;_CRT_SECURE_NO_WARNINGS;
>>"%PLAN%" echo DEF_DEBUG DEBUG;JULIET_DEBUG;PROFILING_ENABLED;JULIET_ENABLE_IMGUI;
>>"%PLAN%" echo DEF_PROFILE RELEASE;PROFILING_ENABLED;JULIET_ENABLE_IMGUI;
>>"%PLAN%" echo DEF_RELEASE RELEASE;
>>"%PLAN%" echo PROJECT Juliet
>>"%PLAN%" echo EXTRA_DEF JULIET_EXPORT;
>>"%PLAN%" echo PROJECT Game
>>"%PLAN%" echo EXTRA_DEF JULIET_EXPORT;
>>"%PLAN%" echo PROJECT JulietApp
>>"%PLAN%" echo PROJECT Romeo
>>"%PLAN%" echo PROJECT JulietShaderCompiler
>>"%PLAN%" echo INCLUDE_SEARCH $(SolutionDir)Juliet\include;$(SolutionDir)Juliet\src;$(SolutionDir)External\imgui;$(SolutionDir)JulietShaderCompiler;
>>"%PLAN%" echo DEBUG_CMD ..\..\Assets\source\SolidColor.frag.hlsl -o ..\..\Assets\compiled\SolidColor.frag.dxil
>>"%PLAN%" echo PROJECT ImGui External\imgui
>>"%PLAN%" echo EXTRA_DEF IMGUI_API=__declspec(dllexport);
>>"%PLAN%" echo PROJECT_SRC External\imgui\imgui.cpp
>>"%PLAN%" echo PROJECT_SRC External\imgui\imgui_demo.cpp
>>"%PLAN%" echo PROJECT_SRC External\imgui\imgui_draw.cpp
>>"%PLAN%" echo PROJECT_SRC External\imgui\imgui_tables.cpp
>>"%PLAN%" echo PROJECT_SRC External\imgui\imgui_widgets.cpp
>>"%PLAN%" echo PROJECT_SRC External\imgui\backends\imgui_impl_win32.cpp
>>"%PLAN%" echo PROJECT_SRC External\imgui\backends\imgui_impl_dx12.cpp
>>"%PLAN%" echo PROJECT_SRC External\imgui\imgui.h
>>"%PLAN%" echo PROJECT_SRC External\imgui\imgui_internal.h
>>"%PLAN%" echo PROJECT_SRC External\imgui\imstb_rectpack.h
>>"%PLAN%" echo PROJECT_SRC External\imgui\imstb_textedit.h
>>"%PLAN%" echo PROJECT_SRC External\imgui\imstb_truetype.h
>>"%PLAN%" echo PROJECT_SRC External\imgui\backends\imgui_impl_win32.h
>>"%PLAN%" echo PROJECT_SRC External\imgui\backends\imgui_impl_dx12.h
>>"%PLAN%" echo SOLUTION Juliet
>>"%PLAN%" echo SLN_PROJ JulietApp
>>"%PLAN%" echo SLN_PROJ Juliet
>>"%PLAN%" echo SLN_PROJ Game
>>"%PLAN%" echo SLN_PROJ ImGui
>>"%PLAN%" echo SOLUTION Romeo
>>"%PLAN%" echo SLN_PROJ Romeo
>>"%PLAN%" echo SLN_PROJ Juliet
>>"%PLAN%" echo SLN_PROJ ImGui
>>"%PLAN%" echo SOLUTION JulietShaderCompiler
>>"%PLAN%" echo SLN_PROJ JulietShaderCompiler
>>"%PLAN%" echo SLN_PROJ Juliet
>>"%PLAN%" echo SLN_PROJ ImGui
call misc\build.bat gen_vs "%PLAN%"
if %ERRORLEVEL% neq 0 (
echo Solution generation failed!