summaryrefslogtreecommitdiff
path: root/buildscripts/vcxproj.header
blob: bfaf2d1502fd69a02fd2df5126fa14f9b402f3b0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
<?xml version="1.0" encoding="utf-8"?>

<!-- header for use with make_vcxproj.py

     Note that once you generate the vcxproj file, if you change it in visual studio, when it
     writes it back out you will use the comments and semi-neat formatting below.
-->

<Project DefaultTargets="Build" ToolsVersion="%ToolsVersion%" 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>%ToolsVersion%</VCProjectVersion>
    <ProjectName>%_TARGET_%</ProjectName>
    <RootNamespace>mongod</RootNamespace>
    <PlatformToolset>%PlatformToolset%</PlatformToolset>
    <UseNativeEnvironment>true</UseNativeEnvironment>
    <!-- <ProjectGuid>{215B2D68-0A70-4D10-8E75-B31010C62A91}</ProjectGuid> -->
    <Keyword>MakeFileProj</Keyword>
    <RootNamespace>%_TARGET_%</RootNamespace>
    <WindowsTargetPlatformVersion>%WindowsTargetPlatformVersion%</WindowsTargetPlatformVersion>
  </PropertyGroup>

  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />

  <PropertyGroup Label="Configuration">
    <ConfigurationType>Makefile</ConfigurationType>
    <CharacterSet>Unicode</CharacterSet>
  </PropertyGroup>

  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
  <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>$(ProjectDir)$(Platform)\$(Configuration)\</OutDir>
    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
    <CodeAnalysisRuleSet >AllRules.ruleset</CodeAnalysisRuleSet>
  </PropertyGroup>

  <!-- GLOBAL SETTINGS ALL BUILD STYLES -->
  <ItemDefinitionGroup>
    <ClCompile>
      <ObjectFileName>Build/%(RelativeDir)/</ObjectFileName>
      <AdditionalIncludeDirectories>%AdditionalIncludeDirectories%</AdditionalIncludeDirectories>
      <PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
      <DisableSpecificWarnings>4290;4355;4800;4267;4244;4351</DisableSpecificWarnings>
      <MultiProcessorCompilation>true</MultiProcessorCompilation>
      <MinimalRebuild>No</MinimalRebuild>
      <WarningLevel>Level3</WarningLevel>
      <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
      <IntrinsicFunctions>true</IntrinsicFunctions>
    </ClCompile>
    <Link>
      <SubSystem>Console</SubSystem>
      <GenerateDebugInformation>true</GenerateDebugInformation>
      <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
      <AdditionalDependencies>winmm.lib;ws2_32.lib;psapi.lib;dbghelp.lib;%(AdditionalDependencies)</AdditionalDependencies>
    </Link>
  </ItemDefinitionGroup>

  <!-- DEBUG -->
  <ItemDefinitionGroup Condition="'$(Configuration)'=='Debug'">
    <ClCompile>
      <Optimization>Disabled</Optimization>
      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
      <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
      <PreprocessorDefinitions>_DEBUG;DEBUG;OBJECT_PRINT;ENABLE_DISASSEMBLER;%(PreprocessorDefinitions)</PreprocessorDefinitions>
      <!--<DebugInformationFormat>EditAndContinue</DebugInformationFormat>-->
    </ClCompile>
  </ItemDefinitionGroup>

 <!-- RELEASE -->
  <ItemDefinitionGroup Condition="'$(Configuration)'=='Release'">
    <ClCompile>
      <Optimization>MaxSpeed</Optimization>
      <FunctionLevelLinking>true</FunctionLevelLinking>
      <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
    </ClCompile>
  </ItemDefinitionGroup>

  <!-- X64 -->
  <ItemDefinitionGroup Condition="'$(Platform)'=='x64'">
    <ClCompile>
      <PreprocessorDefinitions>V8_TARGET_ARCH_X64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
    </ClCompile>
  </ItemDefinitionGroup>

  <!-- 4.0 - change to a Makefile project to allow invocation of external build system -->
  <PropertyGroup Condition="'$(Configuration)'=='Debug'">
    <NMakeBuildCommandLine>ninja.exe -k 0 core</NMakeBuildCommandLine>
    <NMakeOutput>mongod.exe</NMakeOutput>
    <NMakeCleanCommandLine>ninja.exe -t clean</NMakeCleanCommandLine>
    <NMakeReBuildCommandLine>not_supported</NMakeReBuildCommandLine>
    <NMakePreprocessorDefinitions>MONGO_SSL;WIN32;_DEBUG;$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions>
    <NMakeIncludeSearchPath>$(NMakeIncludeSearchPath)</NMakeIncludeSearchPath>
    <AdditionalOptions>/std:c++latest</AdditionalOptions>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)'=='Release'">
    <NMakeBuildCommandLine>ninja.exe -k 0 core</NMakeBuildCommandLine>
    <NMakeOutput>mongod.exe</NMakeOutput>
    <NMakeCleanCommandLine>ninja.exe -t clean</NMakeCleanCommandLine>
    <NMakeReBuildCommandLine>not_supported</NMakeReBuildCommandLine>
    <NMakePreprocessorDefinitions>not_supported;WIN32;NDEBUG;$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions>
    <NMakeIncludeSearchPath>$(NMakeIncludeSearchPath)</NMakeIncludeSearchPath>
    <AdditionalOptions>/std:c++latest</AdditionalOptions>
  </PropertyGroup>

   <!-- SPECIFICS -->
  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
  </ItemDefinitionGroup>