<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html -->
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <!-- This file is used to set default configuration options for all non-UWP Visual Studio projects. -->
  <!-- These are the default project configurations for building. -->
  <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>
  <!-- The following import will set the PlatformToolset configuration. -->
  <Import Project="Build.Windows.PlatformToolset.props" />
  <PropertyGroup>
    <!-- This is the default SDK target. -->
    <!-- Note that the Windows 8.1 SDK is backwards compatible down-level to Windows 7, so
         setting this to 8.1 does not actually imply targeting Windows 8.1. -->
    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
  </PropertyGroup>
  <PropertyGroup>
    <!-- We need to explicitly set the target version to Windows 7. -->
    <Win32_WinNTVersion>0x0601</Win32_WinNTVersion>
  </PropertyGroup>
  <!-- Options that are common to *all* configurations for *all* projects. -->
  <ItemDefinitionGroup>
    <Midl>
      <MkTypLibCompatible>true</MkTypLibCompatible>
      <SuppressStartupBanner>true</SuppressStartupBanner>
    </Midl>
    <ClCompile>
      <!-- Note: These preprocessor defines are for *all* configurations for *all* projects.  -->
      <!-- Note: See ticket #5750 for the macro '_CRT_SECURE_NO_DEPRECATE'. -->
      <PreprocessorDefinitions>
        WINVER=$(Win32_WinNTVersion);
        _WIN32_WINNT=$(Win32_WinNTVersion);
        _CRT_SECURE_NO_DEPRECATE;
        %(PreprocessorDefinitions)
      </PreprocessorDefinitions>
      <!-- We always want to treat wchar_t as a "real" C++ type, instead of a typedef. -->
      <TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
      <SuppressStartupBanner>true</SuppressStartupBanner>
      <!-- Set the source encoding and runtime encoding to UTF-8 by default. -->
      <AdditionalOptions>/utf-8 %(AdditionalOptions)</AdditionalOptions>
      <!-- Enable parallel compilation for faster builds. -->
      <MultiProcessorCompilation>true</MultiProcessorCompilation>
    </ClCompile>
    <ResourceCompile>
      <Culture>0x0409</Culture>
    </ResourceCompile>
    <Link>
      <SuppressStartupBanner>true</SuppressStartupBanner>
      <RandomizedBaseAddress>true</RandomizedBaseAddress>
    </Link>
  </ItemDefinitionGroup>
  <!-- Options that are common to all 'Release' configurations for *all* projects. -->
  <ItemDefinitionGroup Condition="'$(Configuration)'=='Release'">
    <Midl>
      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
    </Midl>
    <ClCompile>
      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
      <StringPooling>true</StringPooling>
    </ClCompile>
    <ResourceCompile>
      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
    </ResourceCompile>
    <Link>
      <EnableCOMDATFolding>true</EnableCOMDATFolding>
    </Link>
  </ItemDefinitionGroup>
  <!-- Options that are common to all 'Debug' configurations for *all* projects. -->
  <ItemDefinitionGroup Condition="'$(Configuration)'=='Debug'">
    <Midl>
      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
    </Midl>
    <ClCompile>
      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
      <Optimization>Disabled</Optimization>
      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
      <BufferSecurityCheck>true</BufferSecurityCheck>
    </ClCompile>
    <ResourceCompile>
      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
    </ResourceCompile>
    <Link>
      <GenerateDebugInformation>true</GenerateDebugInformation>
      <ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
    </Link>
  </ItemDefinitionGroup>
  <!-- Options that are common to all 32-bit configurations for *all* projects. -->
  <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
    <Midl>
      <TargetEnvironment>Win32</TargetEnvironment>
    </Midl>
    <ClCompile>
      <PreprocessorDefinitions>WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
    </ClCompile>
    <Link>
      <TargetMachine>MachineX86</TargetMachine>
    </Link>
  </ItemDefinitionGroup>
  <!-- Options that are common to all 64-bit configurations for *all* projects. -->
  <ItemDefinitionGroup Condition="'$(Platform)'=='x64'">
    <Midl>
      <TargetEnvironment>X64</TargetEnvironment>
    </Midl>
    <ClCompile>
      <PreprocessorDefinitions>WIN64;WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
    </ClCompile>
    <Link>
      <TargetMachine>MachineX64</TargetMachine>
    </Link>
  </ItemDefinitionGroup>
</Project>