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
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Project DefaultTargets="Build" ToolsVersion="17.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
@@ -14,17 +14,8 @@
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<ItemGroup>
<CustomBuild Include="DXShaderCompiler\DXCompiler.h" />
<CustomBuild Include="JulietShaderCompiler.bff" />
<CustomBuild Include="main.cpp" />
<CustomBuild Include="ShaderCompiler.cpp" />
<CustomBuild Include="ShaderCompiler.h" />
</ItemGroup>
<ItemGroup>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{534b94ed-6c94-4f93-bc2a-7f5284b7d434}</ProjectGuid>
<ProjectGuid>{c7df05fe-d5d5-db2a-af36-e7d71d325fda}</ProjectGuid>
<Keyword>MakeFileProj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
@@ -32,75 +23,72 @@
<ConfigurationType>Makefile</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v143</PlatformToolset>
<LocalDebuggerCommandArguments>..\..\Assets\source\SolidColor.frag.hlsl -o ..\..\Assets\compiled\SolidColor.frag.dxil</LocalDebuggerCommandArguments>
<LocalDebuggerCommand>$(SolutionDir)\bin\x64-$(Configuration)\$(ProjectName).exe</LocalDebuggerCommand>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Profile|x64'" Label="Configuration">
<ConfigurationType>Makefile</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v143</PlatformToolset>
<LocalDebuggerCommandArguments>..\..\Assets\source\SolidColor.frag.hlsl -o ..\..\Assets\compiled\SolidColor.frag.dxil</LocalDebuggerCommandArguments>
<LocalDebuggerCommand>$(SolutionDir)\bin\x64-$(Configuration)\$(ProjectName).exe</LocalDebuggerCommand>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Makefile</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v143</PlatformToolset>
<LocalDebuggerCommandArguments>..\..\Assets\source\SolidColor.frag.hlsl -o ..\..\Assets\compiled\SolidColor.frag.dxil</LocalDebuggerCommandArguments>
<LocalDebuggerCommand>$(SolutionDir)\bin\x64-$(Configuration)\$(ProjectName).exe</LocalDebuggerCommand>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Profile|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<NMakeBuildCommandLine>cd $(SolutionDir) &amp; misc\build.bat $(Configuration) $(SolutionName)</NMakeBuildCommandLine>
<NMakeReBuildCommandLine>cd $(SolutionDir) &amp; misc\build.bat -clean $(Configuration) $(SolutionName)</NMakeReBuildCommandLine>
<LocalDebuggerWorkingDirectory>$(SolutionDir)\bin\x64-$(Configuration)\</LocalDebuggerWorkingDirectory>
<IntDir>$(SolutionDir)\Intermediate</IntDir>
<OutDir>$(SolutionDir)\bin</OutDir>
<NMakeBuildCommandLine>cd $(SolutionDir) &amp; misc\build.bat Debug $(SolutionName)</NMakeBuildCommandLine>
<NMakeReBuildCommandLine>cd $(SolutionDir) &amp; misc\build.bat -clean Debug $(SolutionName)</NMakeReBuildCommandLine>
<NMakeCleanCommandLine>cd $(SolutionDir) &amp; misc\build.bat -clean Debug $(SolutionName)</NMakeCleanCommandLine>
<NMakeOutput>$(SolutionDir)bin\x64-Debug\JulietShaderCompiler.exe</NMakeOutput>
<NMakeIncludeSearchPath>$(SolutionDir)Juliet\include;$(SolutionDir)Juliet\src;$(SolutionDir)External\imgui;$(SolutionDir)JulietShaderCompiler;$(NMakeIncludeSearchPath)</NMakeIncludeSearchPath>
<IncludePath>$(SolutionDir)Juliet\include;$(SolutionDir)Juliet\src;$(SolutionDir)External\imgui;$(SolutionDir)JulietShaderCompiler;$(IncludePath)</IncludePath>
<NMakePreprocessorDefinitions>JULIET_WIN32;UNICODE;_UNICODE;WIN32_LEAN_AND_MEAN;_CRT_SECURE_NO_WARNINGS;DEBUG;JULIET_DEBUG;PROFILING_ENABLED;JULIET_ENABLE_IMGUI;$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions>
<AdditionalOptions>/std:c++20</AdditionalOptions>
<LanguageStandard>stdcpp20</LanguageStandard>
<LocalDebuggerCommandArguments>..\..\Assets\source\SolidColor.frag.hlsl -o ..\..\Assets\compiled\SolidColor.frag.dxil</LocalDebuggerCommandArguments>
<LocalDebuggerWorkingDirectory>$(SolutionDir)bin\x64-Debug\</LocalDebuggerWorkingDirectory>
<IntDir>$(SolutionDir)Intermediate\x64-Debug\JulietShaderCompiler\</IntDir>
<OutDir>$(SolutionDir)bin\x64-Debug\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Profile|x64'">
<NMakeBuildCommandLine>cd $(SolutionDir) &amp; misc\build.bat $(Configuration) $(SolutionName)</NMakeBuildCommandLine>
<NMakeReBuildCommandLine>cd $(SolutionDir) &amp; misc\build.bat -clean $(Configuration) $(SolutionName)</NMakeReBuildCommandLine>
<LocalDebuggerWorkingDirectory>$(SolutionDir)\bin\x64-$(Configuration)\</LocalDebuggerWorkingDirectory>
<IntDir>$(SolutionDir)\Intermediate</IntDir>
<OutDir>$(SolutionDir)\bin</OutDir>
<NMakeBuildCommandLine>cd $(SolutionDir) &amp; misc\build.bat Profile $(SolutionName)</NMakeBuildCommandLine>
<NMakeReBuildCommandLine>cd $(SolutionDir) &amp; misc\build.bat -clean Profile $(SolutionName)</NMakeReBuildCommandLine>
<NMakeCleanCommandLine>cd $(SolutionDir) &amp; misc\build.bat -clean Profile $(SolutionName)</NMakeCleanCommandLine>
<NMakeOutput>$(SolutionDir)bin\x64-Profile\JulietShaderCompiler.exe</NMakeOutput>
<NMakeIncludeSearchPath>$(SolutionDir)Juliet\include;$(SolutionDir)Juliet\src;$(SolutionDir)External\imgui;$(SolutionDir)JulietShaderCompiler;$(NMakeIncludeSearchPath)</NMakeIncludeSearchPath>
<IncludePath>$(SolutionDir)Juliet\include;$(SolutionDir)Juliet\src;$(SolutionDir)External\imgui;$(SolutionDir)JulietShaderCompiler;$(IncludePath)</IncludePath>
<NMakePreprocessorDefinitions>JULIET_WIN32;UNICODE;_UNICODE;WIN32_LEAN_AND_MEAN;_CRT_SECURE_NO_WARNINGS;RELEASE;PROFILING_ENABLED;JULIET_ENABLE_IMGUI;$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions>
<AdditionalOptions>/std:c++20</AdditionalOptions>
<LanguageStandard>stdcpp20</LanguageStandard>
<LocalDebuggerCommandArguments>..\..\Assets\source\SolidColor.frag.hlsl -o ..\..\Assets\compiled\SolidColor.frag.dxil</LocalDebuggerCommandArguments>
<LocalDebuggerWorkingDirectory>$(SolutionDir)bin\x64-Profile\</LocalDebuggerWorkingDirectory>
<IntDir>$(SolutionDir)Intermediate\x64-Profile\JulietShaderCompiler\</IntDir>
<OutDir>$(SolutionDir)bin\x64-Profile\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<NMakeBuildCommandLine>cd $(SolutionDir) &amp; misc\build.bat $(Configuration) $(SolutionName)</NMakeBuildCommandLine>
<NMakeReBuildCommandLine>cd $(SolutionDir) &amp; misc\build.bat -clean $(Configuration) $(SolutionName)</NMakeReBuildCommandLine>
<LocalDebuggerWorkingDirectory>$(SolutionDir)\bin\x64-$(Configuration)\</LocalDebuggerWorkingDirectory>
<IntDir>$(SolutionDir)\Intermediate</IntDir>
<OutDir>$(SolutionDir)\bin</OutDir>
<NMakeBuildCommandLine>cd $(SolutionDir) &amp; misc\build.bat Release $(SolutionName)</NMakeBuildCommandLine>
<NMakeReBuildCommandLine>cd $(SolutionDir) &amp; misc\build.bat -clean Release $(SolutionName)</NMakeReBuildCommandLine>
<NMakeCleanCommandLine>cd $(SolutionDir) &amp; misc\build.bat -clean Release $(SolutionName)</NMakeCleanCommandLine>
<NMakeOutput>$(SolutionDir)bin\x64-Release\JulietShaderCompiler.exe</NMakeOutput>
<NMakeIncludeSearchPath>$(SolutionDir)Juliet\include;$(SolutionDir)Juliet\src;$(SolutionDir)External\imgui;$(SolutionDir)JulietShaderCompiler;$(NMakeIncludeSearchPath)</NMakeIncludeSearchPath>
<IncludePath>$(SolutionDir)Juliet\include;$(SolutionDir)Juliet\src;$(SolutionDir)External\imgui;$(SolutionDir)JulietShaderCompiler;$(IncludePath)</IncludePath>
<NMakePreprocessorDefinitions>JULIET_WIN32;UNICODE;_UNICODE;WIN32_LEAN_AND_MEAN;_CRT_SECURE_NO_WARNINGS;RELEASE;$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions>
<AdditionalOptions>/std:c++20</AdditionalOptions>
<LanguageStandard>stdcpp20</LanguageStandard>
<LocalDebuggerCommandArguments>..\..\Assets\source\SolidColor.frag.hlsl -o ..\..\Assets\compiled\SolidColor.frag.dxil</LocalDebuggerCommandArguments>
<LocalDebuggerWorkingDirectory>$(SolutionDir)bin\x64-Release\</LocalDebuggerWorkingDirectory>
<IntDir>$(SolutionDir)Intermediate\x64-Release\JulietShaderCompiler\</IntDir>
<OutDir>$(SolutionDir)bin\x64-Release\</OutDir>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<BuildLog>
<Path>$(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log</Path>
</BuildLog>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Profile|x64'">
<BuildLog>
<Path>$(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log</Path>
</BuildLog>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<BuildLog>
<Path>$(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log</Path>
</BuildLog>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="main.cpp" />
<ClCompile Include="ShaderCompiler.cpp" />
<ClInclude Include="DXShaderCompiler\DXCompiler.h" />
<ClInclude Include="ShaderCompiler.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
<Import Condition="'$(ConfigurationType)' == 'Makefile' and Exists('$(VCTargetsPath)\Platforms\$(Platform)\SCE.Makefile.$(Platform).targets')" Project="$(VCTargetsPath)\Platforms\$(Platform)\SCE.Makefile.$(Platform).targets" />
<Import Condition="'$(ConfigurationType)' == 'Makefile' and '$(AndroidAPILevel)' != '' and Exists('$(VCTargetsPath)\Application Type\$(ApplicationType)\$(ApplicationTypeRevision)\Android.Common.targets')" Project="$(VCTargetsPath)\Application Type\$(ApplicationType)\$(ApplicationTypeRevision)\Android.Common.targets" />
</Project>
</Project>
@@ -1,21 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<CustomBuild Include="DXShaderCompiler\DXCompiler.h">
<Filter>DXShaderCompiler</Filter>
</CustomBuild>
<CustomBuild Include="JulietShaderCompiler.bff">
</CustomBuild>
<CustomBuild Include="main.cpp">
</CustomBuild>
<CustomBuild Include="ShaderCompiler.cpp">
</CustomBuild>
<CustomBuild Include="ShaderCompiler.h">
</CustomBuild>
</ItemGroup>
<ItemGroup>
<Filter Include="DXShaderCompiler">
<UniqueIdentifier>{9f537123-6c94-4f93-bc2a-7f5284b7d434}</UniqueIdentifier>
</Filter>
</ItemGroup>
</Project>
<ItemGroup>
<ClCompile Include="main.cpp" />
<ClCompile Include="ShaderCompiler.cpp" />
<ClInclude Include="DXShaderCompiler\DXCompiler.h">
<Filter>DXShaderCompiler</Filter>
</ClInclude>
<ClInclude Include="ShaderCompiler.h" />
</ItemGroup>
</Project>