<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Import Project="$(SolutionDir)versions.target" />
  <PropertyGroup Condition="'$(Release)' != 'true' ">
    <PreReleaseDecoration>-PRERELEASE</PreReleaseDecoration>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Release)' == 'true' ">
    <PreReleaseDecoration>
    </PreReleaseDecoration>
    <PreprocessorDefinitions>FDB_CLEAN_BUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  </PropertyGroup>
  <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>
  <ItemGroup>
    <ActorCompiler Include="KeyRangeMap.actor.cpp" />
    <ActorCompiler Include="NativeAPI.actor.cpp" />
  </ItemGroup>
  <ItemGroup>
    <ClInclude Include="Atomic.h" />
    <ClInclude Include="BackupContainer.h" />
    <ClInclude Include="BackupAgent.h" />
    <ClInclude Include="ClientDBInfo.h" />
    <ClInclude Include="ClientLogEvents.h" />
    <ClInclude Include="ClientWorkerInterface.h" />
    <ClInclude Include="ClusterInterface.h" />
    <ClInclude Include="CommitTransaction.h" />
    <ClInclude Include="CoordinationInterface.h" />
    <ActorCompiler Include="DatabaseContext.h" />
    <ActorCompiler Include="EventTypes.actor.h">
      <EnableCompile Condition="'$(Configuration)|$(Platform)'=='Debug|X64'">false</EnableCompile>
      <EnableCompile Condition="'$(Configuration)|$(Platform)'=='Release|X64'">false</EnableCompile>
    </ActorCompiler>
    <ClInclude Include="MetricLogger.h" />
    <ActorCompiler Include="MetricLogger.actor.cpp" />
    <ClInclude Include="FailureMonitorClient.h" />
    <ClInclude Include="FDBOptions.g.h" />
    <ClInclude Include="FDBOptions.h" />
    <ClInclude Include="FDBTypes.h" />
    <ClInclude Include="IClientApi.h" />
    <ClInclude Include="json_spirit\json_spirit_error_position.h" />
    <ClInclude Include="json_spirit\json_spirit_reader_template.h" />
    <ClInclude Include="json_spirit\json_spirit_value.h" />
    <ClInclude Include="json_spirit\json_spirit_writer_options.h" />
    <ClInclude Include="json_spirit\json_spirit_writer_template.h" />
    <ClInclude Include="KeyRangeMap.h" />
    <ClInclude Include="Knobs.h" />
    <ClInclude Include="ManagementAPI.h" />
    <ClInclude Include="MasterProxyInterface.h" />
    <ClInclude Include="MonitorLeader.h" />
    <ClInclude Include="MultiVersionAssignmentVars.h" />
    <ClInclude Include="MultiVersionTransaction.h" />
    <ClInclude Include="MutationList.h" />
    <ClInclude Include="NativeAPI.h" />
    <ClInclude Include="Notified.h" />
    <ClInclude Include="ReadYourWrites.h" />
    <ActorCompiler Include="RunTransaction.actor.h" />
    <ClInclude Include="RYWIterator.h" />
    <ClInclude Include="SnapshotCache.h" />
    <ClInclude Include="Status.h" />
    <ClInclude Include="StatusClient.h" />
    <ClInclude Include="StorageServerInterface.h" />
    <ClInclude Include="SystemData.h" />
    <ClInclude Include="TaskBucket.h" />
    <ClInclude Include="ThreadSafeTransaction.h" />
    <ActorCompiler Include="VersionedMap.actor.h">
      <EnableCompile Condition="'$(Configuration)|$(Platform)'=='Debug|X64'">false</EnableCompile>
      <EnableCompile Condition="'$(Configuration)|$(Platform)'=='Release|X64'">false</EnableCompile>
    </ActorCompiler>
    <ClInclude Include="VersionedMap.h" />
    <ClInclude Include="WriteMap.h" />
    <ClInclude Include="Subspace.h" />
    <ClInclude Include="Tuple.h" />
  </ItemGroup>
  <ItemGroup>
    <ActorCompiler Include="FailureMonitorClient.actor.cpp" />
    <ActorCompiler Include="ReadYourWrites.actor.cpp" />
    <ActorCompiler Include="BackupAgentBase.actor.cpp" />
    <ActorCompiler Include="BackupContainer.actor.cpp" />
    <ActorCompiler Include="DatabaseBackupAgent.actor.cpp" />
    <ClCompile Include="AutoPublicAddress.cpp" />
    <ClCompile Include="FDBOptions.g.cpp" />
    <ActorCompiler Include="FileBackupAgent.actor.cpp" />
    <ClCompile Include="Knobs.cpp" />
    <ActorCompiler Include="MonitorLeader.actor.cpp" />
    <ActorCompiler Include="ManagementAPI.actor.cpp" />
    <ActorCompiler Include="MultiVersionTransaction.actor.cpp" />
    <ClCompile Include="RYWIterator.cpp" />
    <ActorCompiler Include="StatusClient.actor.cpp" />
    <ClCompile Include="SystemData.cpp" />
    <ActorCompiler Include="ThreadSafeTransaction.actor.cpp" />
    <ActorCompiler Include="TaskBucket.actor.cpp" />
    <ClCompile Include="Subspace.cpp" />
    <ClCompile Include="Tuple.cpp" />
  </ItemGroup>
  <PropertyGroup Label="Globals">
    <ProjectGUID>{E2939DAA-238E-4970-96C4-4C57980F93BD}</ProjectGUID>
    <TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
    <Keyword>Win32Proj</Keyword>
    <RootNamespace>flow</RootNamespace>
  </PropertyGroup>
  <PropertyGroup>
    <OutDir>$(SolutionDir)bin\$(Configuration)\</OutDir>
    <IntDir>$(SystemDrive)\temp\msvcfdb\$(Platform)$(Configuration)\$(MSBuildProjectName)\</IntDir>
    <BuildLogFile>$(IntDir)\$(MSBuildProjectName).log</BuildLogFile>
  </PropertyGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|X64'" Label="Configuration">
    <ConfigurationType>StaticLibrary</ConfigurationType>
    <CharacterSet>MultiByte</CharacterSet>
    <PlatformToolset>v140_xp</PlatformToolset>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|X64'" Label="Configuration">
    <ConfigurationType>StaticLibrary</ConfigurationType>
    <CharacterSet>MultiByte</CharacterSet>
    <PlatformToolset>v140_xp</PlatformToolset>
  </PropertyGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
  <ImportGroup Label="ExtensionSettings">
  </ImportGroup>
  <ImportGroup Label="PropertySheets">
    <Import Project="$(LocalAppData)\Microsoft\VisualStudio\10.0\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(LocalAppData)\Microsoft\VisualStudio\10.0\Microsoft.Cpp.$(Platform).user.props')" />
  </ImportGroup>
  <PropertyGroup Label="UserMacros" />
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|X64'">
    <LinkIncremental>true</LinkIncremental>
    <IncludePath>$(IncludePath);../;C:\Program Files\boost_1_52_0</IncludePath>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|X64'">
    <LinkIncremental>false</LinkIncremental>
    <IncludePath>$(IncludePath);../;C:\Program Files\boost_1_52_0</IncludePath>
  </PropertyGroup>
  <ItemDefinitionGroup>
    <ClCompile>
      <PreprocessorDefinitions>FDB_VT_VERSION="$(Version)$(PreReleaseDecoration)";FDB_VT_PACKAGE_NAME="$(PackageName)";%(PreprocessorDefinitions)</PreprocessorDefinitions>
    </ClCompile>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|X64'">
    <ClCompile>
      <PrecompiledHeader>
      </PrecompiledHeader>
      <WarningLevel>Level3</WarningLevel>
      <MinimalRebuild>false</MinimalRebuild>
      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
      <Optimization>Disabled</Optimization>
      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
      <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
      <PreprocessorDefinitions>WIN32;_WIN32_WINNT=0x0502;WINVER=0x0502;NTDDI_VERSION=0x05020000;_DEBUG;_HAS_ITERATOR_DEBUGGING=0;_CONSOLE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
      <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
      <MultiProcessorCompilation>true</MultiProcessorCompilation>
      <AdditionalOptions>/bigobj @../flow/no_intellisense.opt %(AdditionalOptions)</AdditionalOptions>
    </ClCompile>
    <Link>
      <SubSystem>Console</SubSystem>
      <GenerateDebugInformation>true</GenerateDebugInformation>
      <AdditionalDependencies>Advapi32.lib</AdditionalDependencies>
    </Link>
    <Lib>
      <AdditionalDependencies>$(TargetDir)flow.lib;$(TargetDir)fdbrpc.lib;winmm.lib</AdditionalDependencies>
    </Lib>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|X64'">
    <ClCompile>
      <WarningLevel>Level3</WarningLevel>
      <PrecompiledHeader>
      </PrecompiledHeader>
      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
      <Optimization>Full</Optimization>
      <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
      <IntrinsicFunctions>true</IntrinsicFunctions>
      <PreprocessorDefinitions>WIN32;_WIN32_WINNT=0x0502;WINVER=0x0502;NTDDI_VERSION=0x05020000;NDEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
      <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
      <EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
      <EnablePREfast>false</EnablePREfast>
      <AdditionalOptions>/bigobj @../flow/no_intellisense.opt %(AdditionalOptions)</AdditionalOptions>
      <MultiProcessorCompilation>true</MultiProcessorCompilation>
      <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
      <MinimalRebuild>false</MinimalRebuild>
    </ClCompile>
    <Link>
      <SubSystem>Console</SubSystem>
      <GenerateDebugInformation>true</GenerateDebugInformation>
      <EnableCOMDATFolding>false</EnableCOMDATFolding>
      <OptimizeReferences>false</OptimizeReferences>
      <LinkTimeCodeGeneration>Default</LinkTimeCodeGeneration>
      <AdditionalDependencies>Advapi32.lib</AdditionalDependencies>
      <AdditionalOptions>/LTCG %(AdditionalOptions)</AdditionalOptions>
    </Link>
    <Lib>
      <AdditionalDependencies>$(TargetDir)flow.lib;$(TargetDir)fdbrpc.lib;winmm.lib</AdditionalDependencies>
    </Lib>
  </ItemDefinitionGroup>
  <ImportGroup Label="ExtensionTargets">
    <Import Project="..\flow\actorcompiler\ActorCompiler.targets" />
  </ImportGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
  <Target Name="MyPreCompileSteps" AfterTargets="CLCompile">
    <Exec Command="&quot;$(SolutionDir)bin\$(Configuration)\coveragetool.exe&quot; &quot;$(OutDir)coverage.$(TargetName).xml&quot; @(ActorCompiler -> '%(RelativeDir)%(Filename)%(Extension)', ' ') @(CLInclude -> '%(RelativeDir)%(Filename)%(Extension)', ' ') @(CLCompile -> '%(RelativeDir)%(Filename)%(Extension)', ' ')" />
  </Target>
</Project>
