mirror of
				https://github.com/RetroDECK/Duckstation.git
				synced 2025-04-10 19:15:14 +00:00 
			
		
		
		
	 fd166a4485
			
		
	
	
		fd166a4485
		
	
	
	
	
		
			
			We can increment this to prevent people's shader caches from growing too large with shader changes.
		
			
				
	
	
		
			857 lines
		
	
	
		
			52 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			857 lines
		
	
	
		
			52 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
| <?xml version="1.0" encoding="utf-8"?>
 | |
| <Project InitialTargets="UNDUPOBJ" DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
 | |
|   <ItemGroup Label="ProjectConfigurations">
 | |
|     <ProjectConfiguration Include="DebugFast|ARM64">
 | |
|       <Configuration>DebugFast</Configuration>
 | |
|       <Platform>ARM64</Platform>
 | |
|     </ProjectConfiguration>
 | |
|     <ProjectConfiguration Include="DebugFast|Win32">
 | |
|       <Configuration>DebugFast</Configuration>
 | |
|       <Platform>Win32</Platform>
 | |
|     </ProjectConfiguration>
 | |
|     <ProjectConfiguration Include="DebugFast|x64">
 | |
|       <Configuration>DebugFast</Configuration>
 | |
|       <Platform>x64</Platform>
 | |
|     </ProjectConfiguration>
 | |
|     <ProjectConfiguration Include="Debug|ARM64">
 | |
|       <Configuration>Debug</Configuration>
 | |
|       <Platform>ARM64</Platform>
 | |
|     </ProjectConfiguration>
 | |
|     <ProjectConfiguration Include="Debug|Win32">
 | |
|       <Configuration>Debug</Configuration>
 | |
|       <Platform>Win32</Platform>
 | |
|     </ProjectConfiguration>
 | |
|     <ProjectConfiguration Include="Debug|x64">
 | |
|       <Configuration>Debug</Configuration>
 | |
|       <Platform>x64</Platform>
 | |
|     </ProjectConfiguration>
 | |
|     <ProjectConfiguration Include="ReleaseLTCG|ARM64">
 | |
|       <Configuration>ReleaseLTCG</Configuration>
 | |
|       <Platform>ARM64</Platform>
 | |
|     </ProjectConfiguration>
 | |
|     <ProjectConfiguration Include="ReleaseLTCG|Win32">
 | |
|       <Configuration>ReleaseLTCG</Configuration>
 | |
|       <Platform>Win32</Platform>
 | |
|     </ProjectConfiguration>
 | |
|     <ProjectConfiguration Include="ReleaseLTCG|x64">
 | |
|       <Configuration>ReleaseLTCG</Configuration>
 | |
|       <Platform>x64</Platform>
 | |
|     </ProjectConfiguration>
 | |
|     <ProjectConfiguration Include="Release|ARM64">
 | |
|       <Configuration>Release</Configuration>
 | |
|       <Platform>ARM64</Platform>
 | |
|     </ProjectConfiguration>
 | |
|     <ProjectConfiguration Include="Release|Win32">
 | |
|       <Configuration>Release</Configuration>
 | |
|       <Platform>Win32</Platform>
 | |
|     </ProjectConfiguration>
 | |
|     <ProjectConfiguration Include="Release|x64">
 | |
|       <Configuration>Release</Configuration>
 | |
|       <Platform>x64</Platform>
 | |
|     </ProjectConfiguration>
 | |
|   </ItemGroup>
 | |
|   <ItemGroup>
 | |
|     <ClCompile Include="analog_controller.cpp" />
 | |
|     <ClCompile Include="analog_joystick.cpp" />
 | |
|     <ClCompile Include="bios.cpp" />
 | |
|     <ClCompile Include="bus.cpp" />
 | |
|     <ClCompile Include="cdrom.cpp" />
 | |
|     <ClCompile Include="cdrom_async_reader.cpp" />
 | |
|     <ClCompile Include="cheats.cpp" />
 | |
|     <ClCompile Include="cpu_core.cpp" />
 | |
|     <ClCompile Include="cpu_disasm.cpp" />
 | |
|     <ClCompile Include="cpu_code_cache.cpp" />
 | |
|     <ClCompile Include="cpu_recompiler_code_generator.cpp">
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugFast|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
 | |
|     </ClCompile>
 | |
|     <ClCompile Include="cpu_recompiler_code_generator_aarch32.cpp">
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugFast|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|ARM64'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugFast|ARM64'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|x64'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugFast|x64'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
 | |
|     </ClCompile>
 | |
|     <ClCompile Include="cpu_recompiler_code_generator_aarch64.cpp">
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugFast|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|x64'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugFast|x64'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
 | |
|     </ClCompile>
 | |
|     <ClCompile Include="cpu_recompiler_code_generator_generic.cpp">
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugFast|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
 | |
|     </ClCompile>
 | |
|     <ClCompile Include="cpu_recompiler_code_generator_x64.cpp">
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|ARM64'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugFast|ARM64'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugFast|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
 | |
|     </ClCompile>
 | |
|     <ClCompile Include="cpu_recompiler_register_cache.cpp">
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugFast|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
 | |
|     </ClCompile>
 | |
|     <ClCompile Include="cpu_types.cpp" />
 | |
|     <ClCompile Include="digital_controller.cpp" />
 | |
|     <ClCompile Include="gpu_backend.cpp" />
 | |
|     <ClCompile Include="gpu_commands.cpp" />
 | |
|     <ClCompile Include="gpu_hw_d3d11.cpp" />
 | |
|     <ClCompile Include="gpu_hw_shadergen.cpp" />
 | |
|     <ClCompile Include="gpu_hw_vulkan.cpp" />
 | |
|     <ClCompile Include="gpu_sw.cpp" />
 | |
|     <ClCompile Include="gpu_sw_backend.cpp" />
 | |
|     <ClCompile Include="gte.cpp" />
 | |
|     <ClCompile Include="dma.cpp" />
 | |
|     <ClCompile Include="gdb_protocol.cpp" />
 | |
|     <ClCompile Include="gpu.cpp" />
 | |
|     <ClCompile Include="gpu_hw.cpp" />
 | |
|     <ClCompile Include="gpu_hw_opengl.cpp" />
 | |
|     <ClCompile Include="host_display.cpp" />
 | |
|     <ClCompile Include="host_interface.cpp" />
 | |
|     <ClCompile Include="host_interface_progress_callback.cpp" />
 | |
|     <ClCompile Include="interrupt_controller.cpp" />
 | |
|     <ClCompile Include="libcrypt_game_codes.cpp" />
 | |
|     <ClCompile Include="mdec.cpp" />
 | |
|     <ClCompile Include="memory_card.cpp" />
 | |
|     <ClCompile Include="memory_card_image.cpp" />
 | |
|     <ClCompile Include="namco_guncon.cpp" />
 | |
|     <ClCompile Include="negcon.cpp" />
 | |
|     <ClCompile Include="pad.cpp" />
 | |
|     <ClCompile Include="controller.cpp" />
 | |
|     <ClCompile Include="pgxp.cpp" />
 | |
|     <ClCompile Include="playstation_mouse.cpp" />
 | |
|     <ClCompile Include="psf_loader.cpp" />
 | |
|     <ClCompile Include="resources.cpp" />
 | |
|     <ClCompile Include="settings.cpp" />
 | |
|     <ClCompile Include="shadergen.cpp" />
 | |
|     <ClCompile Include="sio.cpp" />
 | |
|     <ClCompile Include="spu.cpp" />
 | |
|     <ClCompile Include="system.cpp" />
 | |
|     <ClCompile Include="texture_replacements.cpp" />
 | |
|     <ClCompile Include="timers.cpp" />
 | |
|     <ClCompile Include="timing_event.cpp" />
 | |
|   </ItemGroup>
 | |
|   <ItemGroup>
 | |
|     <ClInclude Include="analog_controller.h" />
 | |
|     <ClInclude Include="analog_joystick.h" />
 | |
|     <ClInclude Include="bios.h" />
 | |
|     <ClInclude Include="bus.h" />
 | |
|     <ClInclude Include="cdrom.h" />
 | |
|     <ClInclude Include="cdrom_async_reader.h" />
 | |
|     <ClInclude Include="cheats.h" />
 | |
|     <ClInclude Include="cpu_core.h" />
 | |
|     <ClInclude Include="cpu_core_private.h" />
 | |
|     <ClInclude Include="cpu_disasm.h" />
 | |
|     <ClInclude Include="cpu_code_cache.h" />
 | |
|     <ClInclude Include="cpu_recompiler_code_generator.h">
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugFast|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
 | |
|     </ClInclude>
 | |
|     <ClInclude Include="cpu_recompiler_register_cache.h">
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugFast|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
 | |
|     </ClInclude>
 | |
|     <ClInclude Include="cpu_recompiler_thunks.h">
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugFast|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
 | |
|     </ClInclude>
 | |
|     <ClInclude Include="cpu_recompiler_types.h">
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugFast|Win32'">true</ExcludedFromBuild>
 | |
|       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
 | |
|     </ClInclude>
 | |
|     <ClInclude Include="digital_controller.h" />
 | |
|     <ClInclude Include="gpu_backend.h" />
 | |
|     <ClInclude Include="gpu_hw_d3d11.h" />
 | |
|     <ClInclude Include="gpu_hw_shadergen.h" />
 | |
|     <ClInclude Include="gpu_hw_vulkan.h" />
 | |
|     <ClInclude Include="gpu_sw.h" />
 | |
|     <ClInclude Include="gpu_sw_backend.h" />
 | |
|     <ClInclude Include="gpu_types.h" />
 | |
|     <ClInclude Include="gte.h" />
 | |
|     <ClInclude Include="cpu_types.h" />
 | |
|     <ClInclude Include="dma.h" />
 | |
|     <ClCompile Include="gdb_protocol.h" />
 | |
|     <ClInclude Include="gpu.h" />
 | |
|     <ClInclude Include="gpu_hw.h" />
 | |
|     <ClInclude Include="gpu_hw_opengl.h" />
 | |
|     <ClInclude Include="gte_types.h" />
 | |
|     <ClInclude Include="host_display.h" />
 | |
|     <ClInclude Include="host_interface.h" />
 | |
|     <ClInclude Include="host_interface_progress_callback.h" />
 | |
|     <ClInclude Include="interrupt_controller.h" />
 | |
|     <ClInclude Include="libcrypt_game_codes.h" />
 | |
|     <ClInclude Include="mdec.h" />
 | |
|     <ClInclude Include="memory_card.h" />
 | |
|     <ClInclude Include="memory_card_image.h" />
 | |
|     <ClInclude Include="namco_guncon.h" />
 | |
|     <ClInclude Include="negcon.h" />
 | |
|     <ClInclude Include="pad.h" />
 | |
|     <ClInclude Include="controller.h" />
 | |
|     <ClInclude Include="pgxp.h" />
 | |
|     <ClInclude Include="playstation_mouse.h" />
 | |
|     <ClInclude Include="psf_loader.h" />
 | |
|     <ClInclude Include="resources.h" />
 | |
|     <ClInclude Include="save_state_version.h" />
 | |
|     <ClInclude Include="settings.h" />
 | |
|     <ClInclude Include="shadergen.h" />
 | |
|     <ClInclude Include="shader_cache_version.h" />
 | |
|     <ClInclude Include="sio.h" />
 | |
|     <ClInclude Include="spu.h" />
 | |
|     <ClInclude Include="system.h" />
 | |
|     <ClInclude Include="texture_replacements.h" />
 | |
|     <ClInclude Include="timers.h" />
 | |
|     <ClInclude Include="timing_event.h" />
 | |
|     <ClInclude Include="types.h" />
 | |
|   </ItemGroup>
 | |
|   <ItemGroup>
 | |
|     <ProjectReference Include="..\..\dep\glad\glad.vcxproj">
 | |
|       <Project>{43540154-9e1e-409c-834f-b84be5621388}</Project>
 | |
|     </ProjectReference>
 | |
|     <ProjectReference Include="..\..\dep\imgui\imgui.vcxproj">
 | |
|       <Project>{bb08260f-6fbc-46af-8924-090ee71360c6}</Project>
 | |
|     </ProjectReference>
 | |
|     <ProjectReference Include="..\..\dep\stb\stb.vcxproj">
 | |
|       <Project>{ed601289-ac1a-46b8-a8ed-17db9eb73423}</Project>
 | |
|     </ProjectReference>
 | |
|     <ProjectReference Include="..\..\dep\vixl\vixl.vcxproj" Condition="'$(Platform)'=='ARM64'">
 | |
|       <Project>{8906836e-f06e-46e8-b11a-74e5e8c7b8fb}</Project>
 | |
|     </ProjectReference>
 | |
|     <ProjectReference Include="..\..\dep\vulkan-loader\vulkan-loader.vcxproj">
 | |
|       <Project>{9c8ddeb0-2b8f-4f5f-ba86-127cdf27f035}</Project>
 | |
|     </ProjectReference>
 | |
|     <ProjectReference Include="..\..\dep\xxhash\xxhash.vcxproj">
 | |
|       <Project>{09553c96-9f39-49bf-8ae6-7acbd07c410c}</Project>
 | |
|     </ProjectReference>
 | |
|     <ProjectReference Include="..\..\dep\zlib\zlib.vcxproj">
 | |
|       <Project>{7ff9fdb9-d504-47db-a16a-b08071999620}</Project>
 | |
|     </ProjectReference>
 | |
|     <ProjectReference Include="..\common\common.vcxproj">
 | |
|       <Project>{ee054e08-3799-4a59-a422-18259c105ffd}</Project>
 | |
|     </ProjectReference>
 | |
|   </ItemGroup>
 | |
|   <PropertyGroup Label="Globals">
 | |
|     <ProjectGuid>{868B98C8-65A1-494B-8346-250A73A48C0A}</ProjectGuid>
 | |
|     <Keyword>Win32Proj</Keyword>
 | |
|     <RootNamespace>pse</RootNamespace>
 | |
|     <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
 | |
|   </PropertyGroup>
 | |
|   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
 | |
|     <ConfigurationType>StaticLibrary</ConfigurationType>
 | |
|     <UseDebugLibraries>true</UseDebugLibraries>
 | |
|     <PlatformToolset>v142</PlatformToolset>
 | |
|     <CharacterSet>NotSet</CharacterSet>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
 | |
|     <ConfigurationType>StaticLibrary</ConfigurationType>
 | |
|     <UseDebugLibraries>true</UseDebugLibraries>
 | |
|     <PlatformToolset>v142</PlatformToolset>
 | |
|     <CharacterSet>NotSet</CharacterSet>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="Configuration">
 | |
|     <ConfigurationType>StaticLibrary</ConfigurationType>
 | |
|     <UseDebugLibraries>true</UseDebugLibraries>
 | |
|     <PlatformToolset>v142</PlatformToolset>
 | |
|     <CharacterSet>NotSet</CharacterSet>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DebugFast|Win32'" Label="Configuration">
 | |
|     <ConfigurationType>StaticLibrary</ConfigurationType>
 | |
|     <UseDebugLibraries>true</UseDebugLibraries>
 | |
|     <PlatformToolset>v142</PlatformToolset>
 | |
|     <CharacterSet>NotSet</CharacterSet>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DebugFast|x64'" Label="Configuration">
 | |
|     <ConfigurationType>StaticLibrary</ConfigurationType>
 | |
|     <UseDebugLibraries>true</UseDebugLibraries>
 | |
|     <PlatformToolset>v142</PlatformToolset>
 | |
|     <CharacterSet>NotSet</CharacterSet>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DebugFast|ARM64'" Label="Configuration">
 | |
|     <ConfigurationType>StaticLibrary</ConfigurationType>
 | |
|     <UseDebugLibraries>true</UseDebugLibraries>
 | |
|     <PlatformToolset>v142</PlatformToolset>
 | |
|     <CharacterSet>NotSet</CharacterSet>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
 | |
|     <ConfigurationType>StaticLibrary</ConfigurationType>
 | |
|     <UseDebugLibraries>false</UseDebugLibraries>
 | |
|     <PlatformToolset>v142</PlatformToolset>
 | |
|     <WholeProgramOptimization>true</WholeProgramOptimization>
 | |
|     <CharacterSet>NotSet</CharacterSet>
 | |
|     <SpectreMitigation>false</SpectreMitigation>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|Win32'" Label="Configuration">
 | |
|     <ConfigurationType>StaticLibrary</ConfigurationType>
 | |
|     <UseDebugLibraries>false</UseDebugLibraries>
 | |
|     <PlatformToolset>v142</PlatformToolset>
 | |
|     <WholeProgramOptimization>true</WholeProgramOptimization>
 | |
|     <CharacterSet>NotSet</CharacterSet>
 | |
|     <SpectreMitigation>false</SpectreMitigation>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
 | |
|     <ConfigurationType>StaticLibrary</ConfigurationType>
 | |
|     <UseDebugLibraries>false</UseDebugLibraries>
 | |
|     <PlatformToolset>v142</PlatformToolset>
 | |
|     <WholeProgramOptimization>true</WholeProgramOptimization>
 | |
|     <CharacterSet>NotSet</CharacterSet>
 | |
|     <SpectreMitigation>false</SpectreMitigation>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="Configuration">
 | |
|     <ConfigurationType>StaticLibrary</ConfigurationType>
 | |
|     <UseDebugLibraries>false</UseDebugLibraries>
 | |
|     <PlatformToolset>v142</PlatformToolset>
 | |
|     <WholeProgramOptimization>true</WholeProgramOptimization>
 | |
|     <CharacterSet>NotSet</CharacterSet>
 | |
|     <SpectreMitigation>false</SpectreMitigation>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|x64'" Label="Configuration">
 | |
|     <ConfigurationType>StaticLibrary</ConfigurationType>
 | |
|     <UseDebugLibraries>false</UseDebugLibraries>
 | |
|     <PlatformToolset>v142</PlatformToolset>
 | |
|     <WholeProgramOptimization>true</WholeProgramOptimization>
 | |
|     <CharacterSet>NotSet</CharacterSet>
 | |
|     <SpectreMitigation>false</SpectreMitigation>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|ARM64'" Label="Configuration">
 | |
|     <ConfigurationType>StaticLibrary</ConfigurationType>
 | |
|     <UseDebugLibraries>false</UseDebugLibraries>
 | |
|     <PlatformToolset>v142</PlatformToolset>
 | |
|     <WholeProgramOptimization>true</WholeProgramOptimization>
 | |
|     <CharacterSet>NotSet</CharacterSet>
 | |
|     <SpectreMitigation>false</SpectreMitigation>
 | |
|   </PropertyGroup>
 | |
|   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
 | |
|   <ImportGroup Label="ExtensionSettings" />
 | |
|   <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
 | |
|     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
 | |
|   </ImportGroup>
 | |
|   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
 | |
|     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
 | |
|   </ImportGroup>
 | |
|   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="PropertySheets">
 | |
|     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
 | |
|   </ImportGroup>
 | |
|   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DebugFast|Win32'" Label="PropertySheets">
 | |
|     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
 | |
|   </ImportGroup>
 | |
|   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DebugFast|x64'" Label="PropertySheets">
 | |
|     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
 | |
|   </ImportGroup>
 | |
|   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DebugFast|ARM64'" Label="PropertySheets">
 | |
|     <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|Win32'">
 | |
|     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
 | |
|   </ImportGroup>
 | |
|   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|Win32'" Label="PropertySheets">
 | |
|     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
 | |
|   </ImportGroup>
 | |
|   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
 | |
|     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
 | |
|   </ImportGroup>
 | |
|   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="PropertySheets">
 | |
|     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
 | |
|   </ImportGroup>
 | |
|   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|x64'" Label="PropertySheets">
 | |
|     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
 | |
|   </ImportGroup>
 | |
|   <ImportGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|ARM64'" Label="PropertySheets">
 | |
|     <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|Win32'">
 | |
|     <LinkIncremental>true</LinkIncremental>
 | |
|     <OutDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</OutDir>
 | |
|     <IntDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</IntDir>
 | |
|     <TargetName>$(ProjectName)-$(Platform)-$(Configuration)</TargetName>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
 | |
|     <IntDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</IntDir>
 | |
|     <TargetName>$(ProjectName)-$(Platform)-$(Configuration)</TargetName>
 | |
|     <LinkIncremental>true</LinkIncremental>
 | |
|     <OutDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</OutDir>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
 | |
|     <IntDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</IntDir>
 | |
|     <TargetName>$(ProjectName)-$(Platform)-$(Configuration)</TargetName>
 | |
|     <LinkIncremental>true</LinkIncremental>
 | |
|     <OutDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</OutDir>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DebugFast|Win32'">
 | |
|     <LinkIncremental>true</LinkIncremental>
 | |
|     <OutDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</OutDir>
 | |
|     <IntDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</IntDir>
 | |
|     <TargetName>$(ProjectName)-$(Platform)-$(Configuration)</TargetName>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DebugFast|x64'">
 | |
|     <IntDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</IntDir>
 | |
|     <TargetName>$(ProjectName)-$(Platform)-$(Configuration)</TargetName>
 | |
|     <LinkIncremental>true</LinkIncremental>
 | |
|     <OutDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</OutDir>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DebugFast|ARM64'">
 | |
|     <IntDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</IntDir>
 | |
|     <TargetName>$(ProjectName)-$(Platform)-$(Configuration)</TargetName>
 | |
|     <LinkIncremental>true</LinkIncremental>
 | |
|     <OutDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</OutDir>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
 | |
|     <LinkIncremental>false</LinkIncremental>
 | |
|     <OutDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</OutDir>
 | |
|     <IntDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</IntDir>
 | |
|     <TargetName>$(ProjectName)-$(Platform)-$(Configuration)</TargetName>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|Win32'">
 | |
|     <LinkIncremental>false</LinkIncremental>
 | |
|     <OutDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</OutDir>
 | |
|     <IntDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</IntDir>
 | |
|     <TargetName>$(ProjectName)-$(Platform)-$(Configuration)</TargetName>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
 | |
|     <IntDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</IntDir>
 | |
|     <TargetName>$(ProjectName)-$(Platform)-$(Configuration)</TargetName>
 | |
|     <LinkIncremental>false</LinkIncremental>
 | |
|     <OutDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</OutDir>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
 | |
|     <IntDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</IntDir>
 | |
|     <TargetName>$(ProjectName)-$(Platform)-$(Configuration)</TargetName>
 | |
|     <LinkIncremental>false</LinkIncremental>
 | |
|     <OutDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</OutDir>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|x64'">
 | |
|     <IntDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</IntDir>
 | |
|     <TargetName>$(ProjectName)-$(Platform)-$(Configuration)</TargetName>
 | |
|     <LinkIncremental>false</LinkIncremental>
 | |
|     <OutDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</OutDir>
 | |
|   </PropertyGroup>
 | |
|   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|ARM64'">
 | |
|     <IntDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</IntDir>
 | |
|     <TargetName>$(ProjectName)-$(Platform)-$(Configuration)</TargetName>
 | |
|     <LinkIncremental>false</LinkIncremental>
 | |
|     <OutDir>$(SolutionDir)build\$(ProjectName)-$(Platform)-$(Configuration)\</OutDir>
 | |
|   </PropertyGroup>
 | |
|   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
 | |
|     <ClCompile>
 | |
|       <PrecompiledHeader>
 | |
|       </PrecompiledHeader>
 | |
|       <WarningLevel>Level4</WarningLevel>
 | |
|       <Optimization>Disabled</Optimization>
 | |
|       <PreprocessorDefinitions>WITH_IMGUI=1;_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
 | |
|       <SDLCheck>true</SDLCheck>
 | |
|       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
 | |
|       <AdditionalIncludeDirectories>$(SolutionDir)dep\msvc\include;$(SolutionDir)dep\glad\include;$(SolutionDir)dep\stb\include;$(SolutionDir)dep\imgui\include;$(SolutionDir)dep\xxhash\include;$(SolutionDir)dep\xbyak\xbyak;$(SolutionDir)dep\zlib\include;$(SolutionDir)dep\vulkan-loader\include;$(SolutionDir)src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
 | |
|       <MultiProcessorCompilation>true</MultiProcessorCompilation>
 | |
|       <MinimalRebuild>false</MinimalRebuild>
 | |
|       <LanguageStandard>stdcpp17</LanguageStandard>
 | |
|       <ConformanceMode>true</ConformanceMode>
 | |
|       <AdditionalOptions>/Zo /utf-8 %(AdditionalOptions)</AdditionalOptions>
 | |
|     </ClCompile>
 | |
|     <Link>
 | |
|       <SubSystem>Windows</SubSystem>
 | |
|       <GenerateDebugInformation>true</GenerateDebugInformation>
 | |
|       <AdditionalDependencies>SDL2.lib;SDL2main.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|       <AdditionalLibraryDirectories>$(SolutionDir)dep\lib32-debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
 | |
|     </Link>
 | |
|     <Lib>
 | |
|       <AdditionalDependencies>winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|     </Lib>
 | |
|   </ItemDefinitionGroup>
 | |
|   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
 | |
|     <ClCompile>
 | |
|       <PrecompiledHeader>
 | |
|       </PrecompiledHeader>
 | |
|       <WarningLevel>Level4</WarningLevel>
 | |
|       <Optimization>Disabled</Optimization>
 | |
|       <PreprocessorDefinitions>WITH_IMGUI=1;WITH_RECOMPILER=1;WITH_MMAP_FASTMEM=1;_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
 | |
|       <SDLCheck>true</SDLCheck>
 | |
|       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
 | |
|       <AdditionalIncludeDirectories>$(SolutionDir)dep\msvc\include;$(SolutionDir)dep\glad\include;$(SolutionDir)dep\stb\include;$(SolutionDir)dep\imgui\include;$(SolutionDir)dep\xxhash\include;$(SolutionDir)dep\xbyak\xbyak;$(SolutionDir)dep\zlib\include;$(SolutionDir)dep\vulkan-loader\include;$(SolutionDir)src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
 | |
|       <MultiProcessorCompilation>true</MultiProcessorCompilation>
 | |
|       <MinimalRebuild>false</MinimalRebuild>
 | |
|       <LanguageStandard>stdcpp17</LanguageStandard>
 | |
|       <ConformanceMode>true</ConformanceMode>
 | |
|       <AdditionalOptions>/Zo /utf-8 %(AdditionalOptions)</AdditionalOptions>
 | |
|     </ClCompile>
 | |
|     <Link>
 | |
|       <SubSystem>Windows</SubSystem>
 | |
|       <GenerateDebugInformation>true</GenerateDebugInformation>
 | |
|       <AdditionalDependencies>SDL2.lib;SDL2main.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|       <AdditionalLibraryDirectories>$(SolutionDir)dep\lib64-debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
 | |
|     </Link>
 | |
|     <Lib>
 | |
|       <AdditionalDependencies>winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|     </Lib>
 | |
|   </ItemDefinitionGroup>
 | |
|   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
 | |
|     <ClCompile>
 | |
|       <PrecompiledHeader>
 | |
|       </PrecompiledHeader>
 | |
|       <WarningLevel>Level4</WarningLevel>
 | |
|       <Optimization>Disabled</Optimization>
 | |
|       <PreprocessorDefinitions>WITH_IMGUI=1;WITH_RECOMPILER=1;WITH_FASTMEM=1;_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
 | |
|       <SDLCheck>true</SDLCheck>
 | |
|       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
 | |
|       <AdditionalIncludeDirectories>$(SolutionDir)dep\msvc\include;$(SolutionDir)dep\glad\include;$(SolutionDir)dep\stb\include;$(SolutionDir)dep\imgui\include;$(SolutionDir)dep\xxhash\include;$(SolutionDir)dep\vixl\include;$(SolutionDir)dep\zlib\include;$(SolutionDir)dep\vulkan-loader\include;$(SolutionDir)src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
 | |
|       <MultiProcessorCompilation>true</MultiProcessorCompilation>
 | |
|       <MinimalRebuild>false</MinimalRebuild>
 | |
|       <LanguageStandard>stdcpp17</LanguageStandard>
 | |
|       <ConformanceMode>true</ConformanceMode>
 | |
|       <AdditionalOptions>/Zo /utf-8 /Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
 | |
|     </ClCompile>
 | |
|     <Link>
 | |
|       <SubSystem>Windows</SubSystem>
 | |
|       <GenerateDebugInformation>true</GenerateDebugInformation>
 | |
|       <AdditionalDependencies>SDL2.lib;SDL2main.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|       <AdditionalLibraryDirectories>$(SolutionDir)dep\lib64-debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
 | |
|     </Link>
 | |
|     <Lib>
 | |
|       <AdditionalDependencies>winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|     </Lib>
 | |
|   </ItemDefinitionGroup>
 | |
|   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DebugFast|Win32'">
 | |
|     <ClCompile>
 | |
|       <PrecompiledHeader>
 | |
|       </PrecompiledHeader>
 | |
|       <WarningLevel>Level4</WarningLevel>
 | |
|       <Optimization>Disabled</Optimization>
 | |
|       <PreprocessorDefinitions>WITH_IMGUI=1;_ITERATOR_DEBUG_LEVEL=1;_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUGFAST;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
 | |
|       <SDLCheck>true</SDLCheck>
 | |
|       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
 | |
|       <AdditionalIncludeDirectories>$(SolutionDir)dep\msvc\include;$(SolutionDir)dep\glad\include;$(SolutionDir)dep\stb\include;$(SolutionDir)dep\imgui\include;$(SolutionDir)dep\xxhash\include;$(SolutionDir)dep\xbyak\xbyak;$(SolutionDir)dep\zlib\include;$(SolutionDir)dep\vulkan-loader\include;$(SolutionDir)src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
 | |
|       <BasicRuntimeChecks>Default</BasicRuntimeChecks>
 | |
|       <MultiProcessorCompilation>true</MultiProcessorCompilation>
 | |
|       <MinimalRebuild>false</MinimalRebuild>
 | |
|       <LanguageStandard>stdcpp17</LanguageStandard>
 | |
|       <SupportJustMyCode>false</SupportJustMyCode>
 | |
|       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
 | |
|       <ConformanceMode>true</ConformanceMode>
 | |
|       <AdditionalOptions>/Zo /utf-8 %(AdditionalOptions)</AdditionalOptions>
 | |
|     </ClCompile>
 | |
|     <Link>
 | |
|       <SubSystem>Windows</SubSystem>
 | |
|       <GenerateDebugInformation>true</GenerateDebugInformation>
 | |
|       <AdditionalDependencies>SDL2.lib;SDL2main.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|       <AdditionalLibraryDirectories>$(SolutionDir)dep\lib32-debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
 | |
|     </Link>
 | |
|     <Lib>
 | |
|       <AdditionalDependencies>winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|     </Lib>
 | |
|   </ItemDefinitionGroup>
 | |
|   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DebugFast|x64'">
 | |
|     <ClCompile>
 | |
|       <PrecompiledHeader>
 | |
|       </PrecompiledHeader>
 | |
|       <WarningLevel>Level4</WarningLevel>
 | |
|       <Optimization>Disabled</Optimization>
 | |
|       <PreprocessorDefinitions>WITH_IMGUI=1;WITH_RECOMPILER=1;WITH_MMAP_FASTMEM=1;_ITERATOR_DEBUG_LEVEL=1;_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUGFAST;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
 | |
|       <SDLCheck>true</SDLCheck>
 | |
|       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
 | |
|       <AdditionalIncludeDirectories>$(SolutionDir)dep\msvc\include;$(SolutionDir)dep\glad\include;$(SolutionDir)dep\stb\include;$(SolutionDir)dep\imgui\include;$(SolutionDir)dep\xxhash\include;$(SolutionDir)dep\xbyak\xbyak;$(SolutionDir)dep\zlib\include;$(SolutionDir)dep\vulkan-loader\include;$(SolutionDir)src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
 | |
|       <BasicRuntimeChecks>Default</BasicRuntimeChecks>
 | |
|       <MultiProcessorCompilation>true</MultiProcessorCompilation>
 | |
|       <MinimalRebuild>false</MinimalRebuild>
 | |
|       <LanguageStandard>stdcpp17</LanguageStandard>
 | |
|       <SupportJustMyCode>false</SupportJustMyCode>
 | |
|       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
 | |
|       <ConformanceMode>true</ConformanceMode>
 | |
|       <AdditionalOptions>/Zo /utf-8 %(AdditionalOptions)</AdditionalOptions>
 | |
|     </ClCompile>
 | |
|     <Link>
 | |
|       <SubSystem>Windows</SubSystem>
 | |
|       <GenerateDebugInformation>true</GenerateDebugInformation>
 | |
|       <AdditionalDependencies>SDL2.lib;SDL2main.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|       <AdditionalLibraryDirectories>$(SolutionDir)dep\lib64-debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
 | |
|     </Link>
 | |
|     <Lib>
 | |
|       <AdditionalDependencies>winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|     </Lib>
 | |
|   </ItemDefinitionGroup>
 | |
|   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DebugFast|ARM64'">
 | |
|     <ClCompile>
 | |
|       <PrecompiledHeader>
 | |
|       </PrecompiledHeader>
 | |
|       <WarningLevel>Level4</WarningLevel>
 | |
|       <Optimization>Disabled</Optimization>
 | |
|       <PreprocessorDefinitions>WITH_IMGUI=1;WITH_RECOMPILER=1;WITH_FASTMEM=1;_ITERATOR_DEBUG_LEVEL=1;_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUGFAST;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
 | |
|       <SDLCheck>true</SDLCheck>
 | |
|       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
 | |
|       <AdditionalIncludeDirectories>$(SolutionDir)dep\msvc\include;$(SolutionDir)dep\glad\include;$(SolutionDir)dep\stb\include;$(SolutionDir)dep\imgui\include;$(SolutionDir)dep\xxhash\include;$(SolutionDir)dep\vixl\include;$(SolutionDir)dep\zlib\include;$(SolutionDir)dep\vulkan-loader\include;$(SolutionDir)src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
 | |
|       <BasicRuntimeChecks>Default</BasicRuntimeChecks>
 | |
|       <MultiProcessorCompilation>true</MultiProcessorCompilation>
 | |
|       <MinimalRebuild>false</MinimalRebuild>
 | |
|       <LanguageStandard>stdcpp17</LanguageStandard>
 | |
|       <SupportJustMyCode>false</SupportJustMyCode>
 | |
|       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
 | |
|       <ConformanceMode>true</ConformanceMode>
 | |
|       <AdditionalOptions>/Zo /utf-8 /Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
 | |
|     </ClCompile>
 | |
|     <Link>
 | |
|       <SubSystem>Windows</SubSystem>
 | |
|       <GenerateDebugInformation>true</GenerateDebugInformation>
 | |
|       <AdditionalDependencies>SDL2.lib;SDL2main.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|       <AdditionalLibraryDirectories>$(SolutionDir)dep\lib64-debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
 | |
|     </Link>
 | |
|     <Lib>
 | |
|       <AdditionalDependencies>winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|     </Lib>
 | |
|   </ItemDefinitionGroup>
 | |
|   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
 | |
|     <ClCompile>
 | |
|       <WarningLevel>Level4</WarningLevel>
 | |
|       <PrecompiledHeader>
 | |
|       </PrecompiledHeader>
 | |
|       <Optimization>MaxSpeed</Optimization>
 | |
|       <IntrinsicFunctions>true</IntrinsicFunctions>
 | |
|       <PreprocessorDefinitions>WITH_IMGUI=1;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
 | |
|       <AdditionalIncludeDirectories>$(SolutionDir)dep\msvc\include;$(SolutionDir)dep\glad\include;$(SolutionDir)dep\stb\include;$(SolutionDir)dep\imgui\include;$(SolutionDir)dep\xxhash\include;$(SolutionDir)dep\xbyak\xbyak;$(SolutionDir)dep\zlib\include;$(SolutionDir)dep\vulkan-loader\include;$(SolutionDir)src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
 | |
|       <MultiProcessorCompilation>true</MultiProcessorCompilation>
 | |
|       <WholeProgramOptimization>false</WholeProgramOptimization>
 | |
|       <LanguageStandard>stdcpp17</LanguageStandard>
 | |
|       <ConformanceMode>true</ConformanceMode>
 | |
|       <AdditionalOptions>/Zo /utf-8 %(AdditionalOptions)</AdditionalOptions>
 | |
|     </ClCompile>
 | |
|     <Link>
 | |
|       <SubSystem>Windows</SubSystem>
 | |
|       <GenerateDebugInformation>true</GenerateDebugInformation>
 | |
|       <EnableCOMDATFolding>true</EnableCOMDATFolding>
 | |
|       <OptimizeReferences>true</OptimizeReferences>
 | |
|       <AdditionalDependencies>SDL2.lib;SDL2main.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|       <AdditionalLibraryDirectories>$(SolutionDir)dep\lib32;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
 | |
|     </Link>
 | |
|     <Lib>
 | |
|       <AdditionalDependencies>winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|     </Lib>
 | |
|   </ItemDefinitionGroup>
 | |
|   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|Win32'">
 | |
|     <ClCompile>
 | |
|       <WarningLevel>Level4</WarningLevel>
 | |
|       <PrecompiledHeader>
 | |
|       </PrecompiledHeader>
 | |
|       <Optimization>MaxSpeed</Optimization>
 | |
|       <IntrinsicFunctions>true</IntrinsicFunctions>
 | |
|       <PreprocessorDefinitions>WITH_IMGUI=1;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
 | |
|       <AdditionalIncludeDirectories>$(SolutionDir)dep\msvc\include;$(SolutionDir)dep\glad\include;$(SolutionDir)dep\stb\include;$(SolutionDir)dep\imgui\include;$(SolutionDir)dep\xxhash\include;$(SolutionDir)dep\xbyak\xbyak;$(SolutionDir)dep\zlib\include;$(SolutionDir)dep\vulkan-loader\include;$(SolutionDir)src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
 | |
|       <MultiProcessorCompilation>true</MultiProcessorCompilation>
 | |
|       <WholeProgramOptimization>true</WholeProgramOptimization>
 | |
|       <LanguageStandard>stdcpp17</LanguageStandard>
 | |
|       <OmitFramePointers>true</OmitFramePointers>
 | |
|       <ConformanceMode>true</ConformanceMode>
 | |
|       <AdditionalOptions>/Zo /utf-8 %(AdditionalOptions)</AdditionalOptions>
 | |
|     </ClCompile>
 | |
|     <Link>
 | |
|       <SubSystem>Windows</SubSystem>
 | |
|       <GenerateDebugInformation>true</GenerateDebugInformation>
 | |
|       <EnableCOMDATFolding>true</EnableCOMDATFolding>
 | |
|       <OptimizeReferences>true</OptimizeReferences>
 | |
|       <AdditionalDependencies>SDL2.lib;SDL2main.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|       <AdditionalLibraryDirectories>$(SolutionDir)dep\lib32;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
 | |
|     </Link>
 | |
|     <Lib>
 | |
|       <AdditionalDependencies>winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|     </Lib>
 | |
|   </ItemDefinitionGroup>
 | |
|   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
 | |
|     <ClCompile>
 | |
|       <WarningLevel>Level4</WarningLevel>
 | |
|       <PrecompiledHeader>
 | |
|       </PrecompiledHeader>
 | |
|       <Optimization>MaxSpeed</Optimization>
 | |
|       <IntrinsicFunctions>true</IntrinsicFunctions>
 | |
|       <PreprocessorDefinitions>WITH_IMGUI=1;WITH_RECOMPILER=1;WITH_MMAP_FASTMEM=1;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
 | |
|       <AdditionalIncludeDirectories>$(SolutionDir)dep\msvc\include;$(SolutionDir)dep\glad\include;$(SolutionDir)dep\stb\include;$(SolutionDir)dep\imgui\include;$(SolutionDir)dep\xxhash\include;$(SolutionDir)dep\xbyak\xbyak;$(SolutionDir)dep\zlib\include;$(SolutionDir)dep\vulkan-loader\include;$(SolutionDir)src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
 | |
|       <MultiProcessorCompilation>true</MultiProcessorCompilation>
 | |
|       <WholeProgramOptimization>false</WholeProgramOptimization>
 | |
|       <LanguageStandard>stdcpp17</LanguageStandard>
 | |
|       <ConformanceMode>true</ConformanceMode>
 | |
|       <AdditionalOptions>/Zo /utf-8 %(AdditionalOptions)</AdditionalOptions>
 | |
|     </ClCompile>
 | |
|     <Link>
 | |
|       <SubSystem>Windows</SubSystem>
 | |
|       <GenerateDebugInformation>true</GenerateDebugInformation>
 | |
|       <EnableCOMDATFolding>true</EnableCOMDATFolding>
 | |
|       <OptimizeReferences>true</OptimizeReferences>
 | |
|       <AdditionalDependencies>SDL2.lib;SDL2main.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|       <AdditionalLibraryDirectories>$(SolutionDir)dep\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
 | |
|     </Link>
 | |
|     <Lib>
 | |
|       <AdditionalDependencies>winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|     </Lib>
 | |
|   </ItemDefinitionGroup>
 | |
|   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
 | |
|     <ClCompile>
 | |
|       <WarningLevel>Level4</WarningLevel>
 | |
|       <PrecompiledHeader>
 | |
|       </PrecompiledHeader>
 | |
|       <Optimization>MaxSpeed</Optimization>
 | |
|       <IntrinsicFunctions>true</IntrinsicFunctions>
 | |
|       <PreprocessorDefinitions>WITH_IMGUI=1;WITH_RECOMPILER=1;WITH_FASTMEM=1;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
 | |
|       <AdditionalIncludeDirectories>$(SolutionDir)dep\msvc\include;$(SolutionDir)dep\glad\include;$(SolutionDir)dep\stb\include;$(SolutionDir)dep\imgui\include;$(SolutionDir)dep\xxhash\include;$(SolutionDir)dep\vixl\include;$(SolutionDir)dep\zlib\include;$(SolutionDir)dep\vulkan-loader\include;$(SolutionDir)src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
 | |
|       <MultiProcessorCompilation>true</MultiProcessorCompilation>
 | |
|       <WholeProgramOptimization>false</WholeProgramOptimization>
 | |
|       <LanguageStandard>stdcpp17</LanguageStandard>
 | |
|       <ConformanceMode>true</ConformanceMode>
 | |
|       <AdditionalOptions>/Zo /utf-8 /Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
 | |
|     </ClCompile>
 | |
|     <Link>
 | |
|       <SubSystem>Windows</SubSystem>
 | |
|       <GenerateDebugInformation>true</GenerateDebugInformation>
 | |
|       <EnableCOMDATFolding>true</EnableCOMDATFolding>
 | |
|       <OptimizeReferences>true</OptimizeReferences>
 | |
|       <AdditionalDependencies>SDL2.lib;SDL2main.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|       <AdditionalLibraryDirectories>$(SolutionDir)dep\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
 | |
|     </Link>
 | |
|     <Lib>
 | |
|       <AdditionalDependencies>winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|     </Lib>
 | |
|   </ItemDefinitionGroup>
 | |
|   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|x64'">
 | |
|     <ClCompile>
 | |
|       <WarningLevel>Level4</WarningLevel>
 | |
|       <PrecompiledHeader>
 | |
|       </PrecompiledHeader>
 | |
|       <Optimization>MaxSpeed</Optimization>
 | |
|       <IntrinsicFunctions>true</IntrinsicFunctions>
 | |
|       <PreprocessorDefinitions>WITH_IMGUI=1;WITH_RECOMPILER=1;WITH_MMAP_FASTMEM=1;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
 | |
|       <AdditionalIncludeDirectories>$(SolutionDir)dep\msvc\include;$(SolutionDir)dep\glad\include;$(SolutionDir)dep\stb\include;$(SolutionDir)dep\imgui\include;$(SolutionDir)dep\xxhash\include;$(SolutionDir)dep\xbyak\xbyak;$(SolutionDir)dep\zlib\include;$(SolutionDir)dep\vulkan-loader\include;$(SolutionDir)src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
 | |
|       <MultiProcessorCompilation>true</MultiProcessorCompilation>
 | |
|       <WholeProgramOptimization>true</WholeProgramOptimization>
 | |
|       <LanguageStandard>stdcpp17</LanguageStandard>
 | |
|       <OmitFramePointers>true</OmitFramePointers>
 | |
|       <ConformanceMode>true</ConformanceMode>
 | |
|       <AdditionalOptions>/Zo /utf-8 %(AdditionalOptions)</AdditionalOptions>
 | |
|     </ClCompile>
 | |
|     <Link>
 | |
|       <SubSystem>Windows</SubSystem>
 | |
|       <GenerateDebugInformation>true</GenerateDebugInformation>
 | |
|       <EnableCOMDATFolding>true</EnableCOMDATFolding>
 | |
|       <OptimizeReferences>true</OptimizeReferences>
 | |
|       <AdditionalDependencies>SDL2.lib;SDL2main.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|       <AdditionalLibraryDirectories>$(SolutionDir)dep\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
 | |
|     </Link>
 | |
|     <Lib>
 | |
|       <AdditionalDependencies>winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|     </Lib>
 | |
|   </ItemDefinitionGroup>
 | |
|   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseLTCG|ARM64'">
 | |
|     <ClCompile>
 | |
|       <WarningLevel>Level4</WarningLevel>
 | |
|       <PrecompiledHeader>
 | |
|       </PrecompiledHeader>
 | |
|       <Optimization>MaxSpeed</Optimization>
 | |
|       <IntrinsicFunctions>true</IntrinsicFunctions>
 | |
|       <PreprocessorDefinitions>WITH_IMGUI=1;WITH_RECOMPILER=1;WITH_FASTMEM=1;_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
 | |
|       <AdditionalIncludeDirectories>$(SolutionDir)dep\msvc\include;$(SolutionDir)dep\glad\include;$(SolutionDir)dep\stb\include;$(SolutionDir)dep\imgui\include;$(SolutionDir)dep\xxhash\include;$(SolutionDir)dep\vixl\include;$(SolutionDir)dep\zlib\include;$(SolutionDir)dep\vulkan-loader\include;$(SolutionDir)src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
 | |
|       <MultiProcessorCompilation>true</MultiProcessorCompilation>
 | |
|       <WholeProgramOptimization>true</WholeProgramOptimization>
 | |
|       <LanguageStandard>stdcpp17</LanguageStandard>
 | |
|       <OmitFramePointers>true</OmitFramePointers>
 | |
|       <ConformanceMode>true</ConformanceMode>
 | |
|       <AdditionalOptions>/Zo /utf-8 /Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
 | |
|     </ClCompile>
 | |
|     <Link>
 | |
|       <SubSystem>Windows</SubSystem>
 | |
|       <GenerateDebugInformation>true</GenerateDebugInformation>
 | |
|       <EnableCOMDATFolding>true</EnableCOMDATFolding>
 | |
|       <OptimizeReferences>true</OptimizeReferences>
 | |
|       <AdditionalDependencies>SDL2.lib;SDL2main.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|       <AdditionalLibraryDirectories>$(SolutionDir)dep\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
 | |
|     </Link>
 | |
|     <Lib>
 | |
|       <AdditionalDependencies>winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
 | |
|     </Lib>
 | |
|   </ItemDefinitionGroup>
 | |
|   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
 | |
|   <ImportGroup Label="ExtensionTargets" />
 | |
|   <!-- ================ UNDUPOBJ ================ -->
 | |
|   <!-- relevant topics -->
 | |
|   <!-- https://stackoverflow.com/questions/3729515/visual-studio-2010-2008-cant-handle-source-files-with-identical-names-in-diff/26935613 -->
 | |
|   <!-- https://stackoverflow.com/questions/7033855/msvc10-mp-builds-not-multicore-across-folders-in-a-project -->
 | |
|   <!-- https://stackoverflow.com/questions/18304911/how-can-one-modify-an-itemdefinitiongroup-from-an-msbuild-target -->
 | |
|   <!-- other maybe related info -->
 | |
|   <!-- https://stackoverflow.com/questions/841913/modify-msbuild-itemgroup-metadata -->
 | |
|   <UsingTask TaskName="UNDUPOBJ_TASK" TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll">
 | |
|     <ParameterGroup>
 | |
|       <OutputDir ParameterType="System.String" Required="true" />
 | |
|       <ItemList ParameterType="Microsoft.Build.Framework.ITaskItem[]" Required="true" />
 | |
|       <OutputItemList ParameterType="Microsoft.Build.Framework.ITaskItem[]" Output="true" />
 | |
|     </ParameterGroup>
 | |
|     <Task>
 | |
|       <Code><![CDATA[
 | |
|             //general outline: for each item (in ClCompile) assign it to a subdirectory of $(IntDir) by allocating subdirectories 0,1,2, etc., as needed to prevent duplicate filenames from clobbering each other
 | |
|             //this minimizes the number of batches that need to be run, since each subdirectory will necessarily be in a distinct batch due to /Fo specifying that output subdirectory
 | |
| 
 | |
|             var assignmentMap = new Dictionary<string,int>();
 | |
|             HashSet<string> neededDirectories = new HashSet<string>();
 | |
|             foreach( var item in ItemList )
 | |
|             {
 | |
|               //solve bug e.g. Checkbox.cpp vs CheckBox.cpp
 | |
|               var filename = item.GetMetadata("Filename").ToUpperInvariant(); 
 | |
| 
 | |
|               //assign reused filenames to increasing numbers
 | |
|               //assign previously unused filenames to 0
 | |
|               int assignment = 0;
 | |
|               if(assignmentMap.TryGetValue(filename, out assignment))
 | |
|                 assignmentMap[filename] = ++assignment;
 | |
|               else
 | |
|                 assignmentMap[filename] = 0;
 | |
| 
 | |
|               var thisFileOutdir = Path.Combine(OutputDir,assignment.ToString()) + "/"; //take care it ends in / so /Fo knows it's a directory and not a filename
 | |
|               item.SetMetadata( "ObjectFileName", thisFileOutdir );
 | |
|             }
 | |
| 
 | |
|             foreach(var needed in neededDirectories)
 | |
|               System.IO.Directory.CreateDirectory(needed);
 | |
| 
 | |
|             OutputItemList = ItemList;
 | |
|             ItemList = new Microsoft.Build.Framework.ITaskItem[0];
 | |
| 
 | |
|         ]]></Code>
 | |
|     </Task>
 | |
|   </UsingTask>
 | |
|   <Target Name="UNDUPOBJ">
 | |
|     <!-- see stackoverflow topics for discussion on why we need to do some loopy copying stuff here -->
 | |
|     <ItemGroup>
 | |
|       <ClCompileCopy Include="@(ClCompile)" />
 | |
|       <ClCompile Remove="@(ClCompile)" />
 | |
|     </ItemGroup>
 | |
|     <UNDUPOBJ_TASK OutputDir="$(IntDir)" ItemList="@(ClCompileCopy)" OutputItemList="@(ClCompile)">
 | |
|       <Output ItemName="ClCompile" TaskParameter="OutputItemList" />
 | |
|     </UNDUPOBJ_TASK>
 | |
|   </Target>
 | |
|   <!-- ================ UNDUPOBJ ================ -->
 | |
|   <PropertyGroup Label="Globals">
 | |
|     <IgnoreWarnCompileDuplicatedFilename>true</IgnoreWarnCompileDuplicatedFilename>
 | |
|     <ProjectName>core</ProjectName>
 | |
|   </PropertyGroup>
 | |
| </Project> |