<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <ItemGroup Label="ProjectConfigurations">
    <ProjectConfiguration Include="Debug|x64">
      <Configuration>Debug</Configuration>
      <Platform>x64</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Release|x64">
      <Configuration>Release</Configuration>
      <Platform>x64</Platform>
    </ProjectConfiguration>
  </ItemGroup>
  <PropertyGroup Label="Globals">
    <VCProjectVersion>15.0</VCProjectVersion>
    <ProjectGuid>{E1C34B66-C942-4B9A-B8C3-9A12625650D3}</ProjectGuid>
    <RootNamespace>vulkan</RootNamespace>
    <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>
    <ProjectName>Vulkan</ProjectName>
  </PropertyGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
    <ConfigurationType>DynamicLibrary</ConfigurationType>
    <UseDebugLibraries>true</UseDebugLibraries>
    <PlatformToolset>v141</PlatformToolset>
    <CharacterSet>NotSet</CharacterSet>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
    <ConfigurationType>DynamicLibrary</ConfigurationType>
    <UseDebugLibraries>false</UseDebugLibraries>
    <PlatformToolset>v141</PlatformToolset>
    <WholeProgramOptimization>true</WholeProgramOptimization>
    <CharacterSet>NotSet</CharacterSet>
  </PropertyGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
  <ImportGroup Label="ExtensionSettings">
  </ImportGroup>
  <ImportGroup Label="Shared">
  </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)'=='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)'=='Release|x64'">
    <OutDir>$(SolutionDir)bin\$(MSBuildProjectName)\$(Platform)\$(Configuration)\</OutDir>
    <TargetName>vk_swiftshader</TargetName>
    <IntDir>$(SolutionDir)obj\$(MSBuildProjectName)\$(Platform)\$(Configuration)\</IntDir>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
    <OutDir>$(SolutionDir)bin\$(MSBuildProjectName)\$(Platform)\$(Configuration)\</OutDir>
    <TargetName>vk_swiftshader</TargetName>
    <IntDir>$(SolutionDir)obj\$(MSBuildProjectName)\$(Platform)\$(Configuration)\</IntDir>
  </PropertyGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
    <ClCompile>
      <WarningLevel>Level3</WarningLevel>
      <Optimization>MaxSpeed</Optimization>
      <FunctionLevelLinking>true</FunctionLevelLinking>
      <IntrinsicFunctions>true</IntrinsicFunctions>
      <SDLCheck>true</SDLCheck>
      <AdditionalIncludeDirectories>$(SolutionDir)include;$(SolutionDir)third_party\SPIRV-Headers\include;$(SolutionDir)src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
      <PreprocessorDefinitions>NDEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_DEPRECATE;NOMINMAX;_SECURE_SCL=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
      <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
      <AdditionalOptions>/permissive- %(AdditionalOptions)</AdditionalOptions>
      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>
    </ClCompile>
    <Link>
      <EnableCOMDATFolding>true</EnableCOMDATFolding>
      <OptimizeReferences>true</OptimizeReferences>
      <ModuleDefinitionFile>swiftshader_icd.def</ModuleDefinitionFile>
      <AdditionalDependencies>dxguid.lib;WS2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
    </Link>
    <PostBuildEvent>
      <Command>mkdir "$(SolutionDir)out\$(Configuration)_$(Platform)\"
copy "$(OutDir)vk_swiftshader.dll" "$(SolutionDir)out\$(Configuration)_$(Platform)\"</Command>
    </PostBuildEvent>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
    <ClCompile>
      <WarningLevel>Level3</WarningLevel>
      <Optimization>Disabled</Optimization>
      <SDLCheck>true</SDLCheck>
      <AdditionalIncludeDirectories>$(SolutionDir)include;$(SolutionDir)third_party\SPIRV-Headers\include;$(SolutionDir)src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
      <PreprocessorDefinitions>_DEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_DEPRECATE;NOMINMAX;DEBUGGER_WAIT_DIALOG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
      <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
      <AdditionalOptions>/permissive- %(AdditionalOptions)</AdditionalOptions>
      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>
    </ClCompile>
    <Link>
      <ModuleDefinitionFile>swiftshader_icd.def</ModuleDefinitionFile>
      <AdditionalDependencies>dxguid.lib;WS2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
    </Link>
    <PostBuildEvent>
      <Command>mkdir "$(SolutionDir)out\$(Configuration)_$(Platform)\"
copy "$(OutDir)vk_swiftshader.dll" "$(SolutionDir)out\$(Configuration)_$(Platform)\"</Command>
    </PostBuildEvent>
  </ItemDefinitionGroup>
  <ItemGroup>
    <ClCompile Include="libVulkan.cpp" />
    <ClCompile Include="main.cpp" />
    <ClCompile Include="VkBuffer.cpp" />
    <ClCompile Include="VkCommandBuffer.cpp" />
    <ClCompile Include="VkCommandPool.cpp" />
    <ClCompile Include="VkDebug.cpp" />
    <ClCompile Include="VkDescriptorPool.cpp" />
    <ClCompile Include="VkDescriptorSetLayout.cpp" />
    <ClCompile Include="VkDevice.cpp" />
    <ClCompile Include="VkDeviceMemory.cpp" />
    <ClCompile Include="VkFramebuffer.cpp" />
    <ClCompile Include="VkGetProcAddress.cpp" />
    <ClCompile Include="VkImage.cpp" />
    <ClCompile Include="VkImageView.cpp" />
    <ClCompile Include="VkInstance.cpp" />
    <ClCompile Include="VkMemory.cpp" />
    <ClCompile Include="VkPhysicalDevice.cpp" />
    <ClCompile Include="VkPipeline.cpp" />
    <ClCompile Include="VkPipelineLayout.cpp" />
    <ClCompile Include="VkPromotedExtensions.cpp" />
    <ClCompile Include="VkQueryPool.cpp" />
    <ClCompile Include="VkQueue.cpp" />
    <ClCompile Include="VkRenderPass.cpp" />
    <ClCompile Include="VkShaderModule.cpp" />
    <ClCompile Include="..\Device\Blitter.cpp" />
    <ClCompile Include="..\Device\Clipper.cpp" />
    <ClCompile Include="..\Device\Color.cpp" />
    <ClCompile Include="..\Device\Config.cpp" />
    <ClCompile Include="..\Device\Context.cpp" />
    <ClCompile Include="..\Device\ETC_Decoder.cpp" />
    <ClCompile Include="..\Device\Matrix.cpp" />
    <ClCompile Include="..\Device\PixelProcessor.cpp" />
    <ClCompile Include="..\Device\Plane.cpp" />
    <ClCompile Include="..\Device\Point.cpp" />
    <ClCompile Include="..\Device\QuadRasterizer.cpp" />
    <ClCompile Include="..\Device\Renderer.cpp" />
    <ClCompile Include="..\Device\Sampler.cpp" />
    <ClCompile Include="..\Device\SetupProcessor.cpp" />
    <ClCompile Include="..\Device\Surface.cpp" />
    <ClCompile Include="..\Device\SwiftConfig.cpp" />
    <ClCompile Include="..\Device\Vector.cpp" />
    <ClCompile Include="..\Device\VertexProcessor.cpp" />
    <ClCompile Include="..\Pipeline\Constants.cpp" />
    <ClCompile Include="..\Pipeline\PixelProgram.cpp" />
    <ClCompile Include="..\Pipeline\PixelRoutine.cpp" />
    <ClCompile Include="..\Pipeline\PixelShader.cpp" />
    <ClCompile Include="..\Pipeline\SamplerCore.cpp" />
    <ClCompile Include="..\Pipeline\SetupRoutine.cpp" />
    <ClCompile Include="..\Pipeline\Shader.cpp" />
    <ClCompile Include="..\Pipeline\ShaderCore.cpp" />
    <ClCompile Include="..\Pipeline\SpirvShader.cpp" />
    <ClCompile Include="..\Pipeline\VertexProgram.cpp" />
    <ClCompile Include="..\Pipeline\VertexRoutine.cpp" />
    <ClCompile Include="..\Pipeline\VertexShader.cpp" />
    <ClCompile Include="..\System\Configurator.cpp" />
    <ClCompile Include="..\System\CPUID.cpp" />
    <ClCompile Include="..\System\Debug.cpp" />
    <ClCompile Include="..\System\DebugAndroid.cpp">
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="..\System\GrallocAndroid.cpp">
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="..\System\Half.cpp" />
    <ClCompile Include="..\System\Math.cpp" />
    <ClCompile Include="..\System\Memory.cpp" />
    <ClCompile Include="..\System\Resource.cpp" />
    <ClCompile Include="..\System\Socket.cpp" />
    <ClCompile Include="..\System\Thread.cpp" />
    <ClCompile Include="..\System\Timer.cpp" />
    <ClCompile Include="..\WSI\FrameBuffer.cpp" />
    <ClCompile Include="..\WSI\FrameBufferAndroid.cpp">
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="..\WSI\FrameBufferDD.cpp" />
    <ClCompile Include="..\WSI\FrameBufferGDI.cpp" />
    <ClCompile Include="..\WSI\FrameBufferOzone.cpp">
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="..\WSI\FrameBufferWin.cpp" />
    <ClCompile Include="..\WSI\FrameBufferX11.cpp">
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
    </ClCompile>
    <ClCompile Include="..\WSI\libX11.cpp">
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
    </ClCompile>
  </ItemGroup>
  <ItemGroup>
    <ClInclude Include="resource.h" />
    <ClInclude Include="Version.h" />
    <ClInclude Include="VkBuffer.hpp" />
    <ClInclude Include="VkBufferView.hpp" />
    <ClInclude Include="VkCommandBuffer.hpp" />
    <ClInclude Include="VkCommandPool.hpp" />
    <ClInclude Include="VkConfig.h" />
    <ClInclude Include="VkDebug.hpp" />
    <ClInclude Include="VkDescriptorPool.hpp" />
    <ClInclude Include="VkDescriptorSetLayout.hpp" />
    <ClInclude Include="VkDestroy.h" />
    <ClInclude Include="VkDevice.hpp" />
    <ClInclude Include="VkDeviceMemory.hpp" />
    <ClInclude Include="VkEvent.hpp" />
    <ClInclude Include="VkFence.hpp" />
    <ClInclude Include="VkFramebuffer.hpp" />
    <ClInclude Include="VkGetProcAddress.h" />
    <ClInclude Include="VkImage.hpp" />
    <ClInclude Include="VkImageView.hpp" />
    <ClInclude Include="VkInstance.hpp" />
    <ClInclude Include="VkMemory.h" />
    <ClInclude Include="VkObject.hpp" />
    <ClInclude Include="VkPhysicalDevice.hpp" />
    <ClInclude Include="VkPipeline.hpp" />
    <ClInclude Include="VkPipelineCache.hpp" />
    <ClInclude Include="VkPipelineLayout.hpp" />
    <ClInclude Include="VkQueryPool.hpp" />
    <ClInclude Include="VkQueue.hpp" />
    <ClInclude Include="VkRenderPass.hpp" />
    <ClInclude Include="VkSampler.hpp" />
    <ClInclude Include="VkSemaphore.hpp" />
    <ClInclude Include="VkShaderModule.hpp" />
    <ClInclude Include="..\Device\Blitter.hpp" />
    <ClInclude Include="..\Device\Clipper.hpp" />
    <ClInclude Include="..\Device\Color.hpp" />
    <ClInclude Include="..\Device\Config.hpp" />
    <ClInclude Include="..\Device\Context.hpp" />
    <ClInclude Include="..\Device\ETC_Decoder.hpp" />
    <ClInclude Include="..\Device\LRUCache.hpp" />
    <ClInclude Include="..\Device\Matrix.hpp" />
    <ClInclude Include="..\Device\PixelProcessor.hpp" />
    <ClInclude Include="..\Device\Plane.hpp" />
    <ClInclude Include="..\Device\Point.hpp" />
    <ClInclude Include="..\Device\Polygon.hpp" />
    <ClInclude Include="..\Device\Primitive.hpp" />
    <ClInclude Include="..\Device\QuadRasterizer.hpp" />
    <ClInclude Include="..\Device\Rasterizer.hpp" />
    <ClInclude Include="..\Device\Renderer.hpp" />
    <ClInclude Include="..\Device\RoutineCache.hpp" />
    <ClInclude Include="..\Device\Sampler.hpp" />
    <ClInclude Include="..\Device\SetupProcessor.hpp" />
    <ClInclude Include="..\Device\Stream.hpp" />
    <ClInclude Include="..\Device\Surface.hpp" />
    <ClInclude Include="..\Device\SwiftConfig.hpp" />
    <ClInclude Include="..\Device\Triangle.hpp" />
    <ClInclude Include="..\Device\Vector.hpp" />
    <ClInclude Include="..\Device\Vertex.hpp" />
    <ClInclude Include="..\Device\VertexProcessor.hpp" />
    <ClInclude Include="..\Pipeline\Constants.hpp" />
    <ClInclude Include="..\Pipeline\PixelProgram.hpp" />
    <ClInclude Include="..\Pipeline\PixelRoutine.hpp" />
    <ClInclude Include="..\Pipeline\PixelShader.hpp" />
    <ClInclude Include="..\Pipeline\SamplerCore.hpp" />
    <ClInclude Include="..\Pipeline\SetupRoutine.hpp" />
    <ClInclude Include="..\Pipeline\Shader.hpp" />
    <ClInclude Include="..\Pipeline\ShaderCore.hpp" />
    <ClInclude Include="..\Pipeline\SpirvShader.hpp" />
    <ClInclude Include="..\Pipeline\VertexPipeline.hpp" />
    <ClInclude Include="..\Pipeline\VertexProgram.hpp" />
    <ClInclude Include="..\Pipeline\VertexRoutine.hpp" />
    <ClInclude Include="..\Pipeline\VertexShader.hpp" />
    <ClInclude Include="..\System\Configurator.hpp" />
    <ClInclude Include="..\System\CPUID.hpp" />
    <ClInclude Include="..\System\Debug.hpp" />
    <ClInclude Include="..\System\DebugAndroid.hpp">
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
    </ClInclude>
    <ClInclude Include="..\System\GrallocAndroid.hpp">
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
    </ClInclude>
    <ClInclude Include="..\System\Half.hpp" />
    <ClInclude Include="..\System\Math.hpp" />
    <ClInclude Include="..\System\Memory.hpp" />
    <ClInclude Include="..\System\MutexLock.hpp" />
    <ClInclude Include="..\System\Resource.hpp" />
    <ClInclude Include="..\System\SharedLibrary.hpp" />
    <ClInclude Include="..\System\Socket.hpp" />
    <ClInclude Include="..\System\Thread.hpp" />
    <ClInclude Include="..\System\Timer.hpp" />
    <ClInclude Include="..\System\Types.hpp" />
    <ClInclude Include="..\WSI\FrameBuffer.hpp" />
    <ClInclude Include="..\WSI\FrameBufferAndroid.hpp">
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
    </ClInclude>
    <ClInclude Include="..\WSI\FrameBufferDD.hpp" />
    <ClInclude Include="..\WSI\FrameBufferGDI.hpp" />
    <ClInclude Include="..\WSI\FrameBufferOSX.hpp">
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
    </ClInclude>
    <ClInclude Include="..\WSI\FrameBufferOzone.hpp">
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
    </ClInclude>
    <ClInclude Include="..\WSI\FrameBufferWin.hpp" />
    <ClInclude Include="..\WSI\FrameBufferX11.hpp">
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
    </ClInclude>
    <ClInclude Include="..\WSI\libX11.hpp">
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
    </ClInclude>
  </ItemGroup>
  <ItemGroup>
    <None Include="..\WSI\FrameBufferOSX.mm">
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
    </None>
    <None Include="swiftshader_icd.def" />
  </ItemGroup>
  <ItemGroup>
    <ResourceCompile Include="Vulkan.rc" />
  </ItemGroup>
  <ItemGroup>
    <ProjectReference Include="..\Reactor\Reactor.vcxproj">
      <Project>{28fd076d-10b5-4bd8-a4cf-f44c7002a803}</Project>
    </ProjectReference>
  </ItemGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
  <ImportGroup Label="ExtensionTargets">
  </ImportGroup>
</Project>