<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <ItemGroup Label="ProjectConfigurations">
    <ProjectConfiguration Include="Debug|Win32">
      <Configuration>Debug</Configuration>
      <Platform>Win32</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Debug|x64">
      <Configuration>Debug</Configuration>
      <Platform>x64</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>
  <PropertyGroup Label="Globals">
    <ProjectGuid>{2387389D-7D3F-4D5E-AE0E-C871776E8432}</ProjectGuid>
    <RootNamespace>dmd</RootNamespace>
    <Keyword>Win32Proj</Keyword>
    <!-- guess the installed Windows SDK -->
    <WindowsSdkInstallFolder_10 Condition="'$(WindowsSdkInstallFolder_10)' == ''">$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v10.0@InstallationFolder)</WindowsSdkInstallFolder_10>
    <WindowsSdkInstallFolder_10 Condition="'$(WindowsSdkInstallFolder_10)' == ''">$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Microsoft SDKs\Windows\v10.0@InstallationFolder)</WindowsSdkInstallFolder_10>
    <WindowsTargetPlatformVersion_10 Condition="'$(WindowsTargetPlatformVersion_10)' == ''">$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v10.0@ProductVersion)</WindowsTargetPlatformVersion_10>
    <WindowsTargetPlatformVersion_10 Condition="'$(WindowsTargetPlatformVersion_10)' == ''">$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Microsoft SDKs\Windows\v10.0@ProductVersion)</WindowsTargetPlatformVersion_10>
    <!-- Sometimes the version in the registry has the .0 suffix, and sometimes it doesn't. Check and add it -->
    <WindowsTargetPlatformVersion_10 Condition="'$(WindowsTargetPlatformVersion_10)' != '' and !$(WindowsTargetPlatformVersion_10.EndsWith('.0'))">$(WindowsTargetPlatformVersion_10).0</WindowsTargetPlatformVersion_10>
    <WindowsTargetPlatformVersion Condition="'$(WindowsTargetPlatformVersion_10)' != ''">$(WindowsTargetPlatformVersion_10)</WindowsTargetPlatformVersion>
  </PropertyGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
  <PropertyGroup Label="Configuration">
    <ConfigurationType>StaticLibrary</ConfigurationType>
    <WholeProgramOptimization Condition="'$(Configuration)'=='Release'">false</WholeProgramOptimization>
  </PropertyGroup>
  <PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
    <PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
  </PropertyGroup>
  <PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
    <PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
  </PropertyGroup>
  <PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
    <PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
  </PropertyGroup>
  <PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
    <PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
  </PropertyGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
  <ImportGroup Label="ExtensionSettings">
  </ImportGroup>
  <ImportGroup 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>
    <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
    <OutDir>..\..\generated\Windows\$(Configuration)\$(PlatformName)\</OutDir>
    <IntDir>$(OutDir)\backend\</IntDir>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
  <ItemDefinitionGroup>
    <ClCompile>
      <AdditionalIncludeDirectories>$(IntDir)generated\dmd;$(IntDir)generated;..\dmd\root;..\dmd\tk;..\dmd\backend;.;.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
      <PreprocessorDefinitions Condition="'$(Configuration)'=='Debug'">DEBUG;_DEBUG;TARGET_WINDOS%(PreprocessorDefinitions)</PreprocessorDefinitions>
      <PreprocessorDefinitions Condition="'$(Configuration)'=='Release'">TARGET_WINDOS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
      <RuntimeLibrary Condition="'$(Configuration)'=='Debug'">MultiThreadedDebug</RuntimeLibrary>
      <RuntimeLibrary Condition="'$(Configuration)'=='Release'">MultiThreaded</RuntimeLibrary>
      <Optimization Condition="'$(Configuration)'=='Release'">MaxSpeed</Optimization>
      <InlineFunctionExpansion Condition="'$(Configuration)'=='Release'">AnySuitable</InlineFunctionExpansion>
      <IntrinsicFunctions Condition="'$(Configuration)'=='Release'">true</IntrinsicFunctions>
      <FavorSizeOrSpeed Condition="'$(Configuration)'=='Release'">Speed</FavorSizeOrSpeed>
      <OmitFramePointers Condition="'$(Configuration)'=='Release'">true</OmitFramePointers>
      <BufferSecurityCheck Condition="'$(Configuration)'=='Release'">false</BufferSecurityCheck>
      <StructMemberAlignment>8Bytes</StructMemberAlignment>
      <WarningLevel>Level4</WarningLevel>
      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
      <CompileAs>CompileAsCpp</CompileAs>
      <ForcedIncludeFiles>vcbuild\warnings.h;%(ForcedIncludeFiles)</ForcedIncludeFiles>
      <InlineFunctionExpansion Condition="'$(Configuration)'=='Debug'">Disabled</InlineFunctionExpansion>
      <Optimization Condition="'$(Configuration)'=='Debug'">Disabled</Optimization>
    </ClCompile>
    <Link>
      <AdditionalOptions>/LARGEADDRESSAWARE %(AdditionalOptions)</AdditionalOptions>
      <OutputFile>$(OutDir)$(ProjectName).exe</OutputFile>
      <GenerateDebugInformation>true</GenerateDebugInformation>
      <OptimizeReferences Condition="'$(Configuration)'=='Debug'">false</OptimizeReferences>
      <OptimizeReferences Condition="'$(Configuration)'=='Release'">true</OptimizeReferences>
      <EnableCOMDATFolding Condition="'$(Configuration)'=='Debug'">false</EnableCOMDATFolding>
      <EnableCOMDATFolding Condition="'$(Configuration)'=='Release'">true</EnableCOMDATFolding>
    </Link>
  </ItemDefinitionGroup>
  <ItemGroup>
    <ClCompile Include="..\dmd\backend\tk.c" />
    <ClCompile Include="..\dmd\backend\fp.c" />
    <ClCompile Include="..\dmd\backend\strtold.c" />
    <ClCompile Include="..\dmd\tk\mem.c">
      <ExcludedFromBuild>true</ExcludedFromBuild>
    </ClCompile>
    <CustomBuild Include="..\dmd\backend\optabgen.d">
      <Message>Building and running $(IntDir)%(Filename).exe</Message>
      <Command>$(DMDBinDir)\dmd.exe -I.. -version=MARS -of"$(IntDir)generated\%(Filename).exe" "%(FullPath)"
if errorlevel 1 exit /B %ERRORLEVEL%
pushd $(IntDir)generated
"%(Filename).exe"
if errorlevel 1 exit /B %ERRORLEVEL%
popd</Command>
      <Outputs>$(IntDir)generated\optab.d;$(IntDir)generated\debtab.d;$(IntDir)generated\cdxxx.d;$(IntDir)generated\elxxx.d;$(IntDir)generated\tytab.d;$(IntDir)generated\\fltables.d;%(Outputs)</Outputs>
      <AdditionalInputs>..\dmd\backend\cc.d;..\dmd\backend\cdef.d;..\dmd\backend\oper.d;..\dmd\backend\ty.d;%(AdditionalInputs)</AdditionalInputs>
    </CustomBuild>
  </ItemGroup>
  <ItemGroup>
    <ClInclude Include="..\dmd\aggregate.h" />
    <ClInclude Include="..\dmd\aliasthis.h" />
    <ClInclude Include="..\dmd\arraytypes.h" />
    <ClInclude Include="..\dmd\attrib.h" />
    <ClInclude Include="..\dmd\backend\varstats.h" />
    <ClInclude Include="..\dmd\complex_t.h" />
    <ClInclude Include="..\dmd\cond.h" />
    <ClInclude Include="..\dmd\declaration.h" />
    <ClInclude Include="..\dmd\dsymbol.h" />
    <ClInclude Include="..\dmd\enum.h" />
    <ClInclude Include="..\dmd\errors.h" />
    <ClInclude Include="..\dmd\expression.h" />
    <ClInclude Include="..\dmd\globals.h" />
    <ClInclude Include="..\dmd\hdrgen.h" />
    <ClInclude Include="..\dmd\identifier.h" />
    <ClInclude Include="..\dmd\import.h" />
    <ClInclude Include="..\dmd\init.h" />
    <ClInclude Include="..\dmd\json.h" />
    <ClInclude Include="..\dmd\mars.h" />
    <ClInclude Include="..\dmd\module.h" />
    <ClInclude Include="..\dmd\mtype.h" />
    <ClInclude Include="..\dmd\nspace.h" />
    <ClInclude Include="..\dmd\objc.h" />
    <ClInclude Include="..\dmd\scope.h" />
    <ClInclude Include="..\dmd\statement.h" />
    <ClInclude Include="..\dmd\staticassert.h" />
    <ClInclude Include="..\dmd\target.h" />
    <ClInclude Include="..\dmd\template.h" />
    <ClInclude Include="..\dmd\tokens.h" />
    <ClInclude Include="..\dmd\version.h" />
    <ClInclude Include="..\dmd\tk\filespec.h" />
    <ClInclude Include="..\dmd\tk\list.h" />
    <ClInclude Include="..\dmd\tk\mem.h" />
    <ClInclude Include="..\dmd\tk\vec.h" />
    <ClInclude Include="..\dmd\root\ctfloat.h" />
    <ClInclude Include="..\dmd\root\longdouble.h" />
    <ClInclude Include="..\dmd\root\port.h" />
    <ClInclude Include="..\dmd\root\rmem.h" />
    <ClInclude Include="..\dmd\root\root.h" />
    <ClInclude Include="..\vcbuild\alloca.h" />
    <ClInclude Include="..\vcbuild\fenv.h" />
    <ClInclude Include="..\vcbuild\stdint.h" />
    <ClInclude Include="..\vcbuild\warnings.h" />
  </ItemGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
  <ImportGroup Label="ExtensionTargets">
  </ImportGroup>
</Project>