common-build-settings.vcxproj 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  3. <PropertyGroup Label="UserMacros">
  4. <!-- Target minimum OS version: WinXP = 0; Vista = 1; Win7 = 2; Win8 = 3...
  5. Only 0, 1 and 3 are used currently -->
  6. <TargetOSLevel Condition="$(Platform.StartsWith('ARM'))">3</TargetOSLevel>
  7. <TargetOSLevel Condition="! $(Platform.StartsWith('ARM')) And $(PlatformToolset.EndsWith('_xp'))">0</TargetOSLevel>
  8. <TargetOSLevel Condition="! $(Platform.StartsWith('ARM')) And ! $(PlatformToolset.EndsWith('_xp'))">1</TargetOSLevel>
  9. <MhdNumBits Condition="$(Platform.EndsWith('64'))">64</MhdNumBits>
  10. <MhdNumBits Condition="! $(Platform.EndsWith('64'))">32</MhdNumBits>
  11. </PropertyGroup>
  12. <PropertyGroup>
  13. <IncludePath>$(SolutionDir);$(MhdW32Common);$(MhdSrc)include;$(IncludePath)</IncludePath>
  14. </PropertyGroup>
  15. <PropertyGroup>
  16. <IntDir>$(SolutionDir)$(ProjectName)\$(Configuration)\$(Platform)\</IntDir>
  17. <OutDir>$(SolutionDir)Output\$(Platform)\</OutDir>
  18. </PropertyGroup>
  19. <PropertyGroup Condition="'$(UseDebugLibraries)'=='true'">
  20. <LinkIncremental>true</LinkIncremental>
  21. </PropertyGroup>
  22. <PropertyGroup Condition="'$(UseDebugLibraries)'!='true'">
  23. <LinkIncremental>false</LinkIncremental>
  24. </PropertyGroup>
  25. <ItemDefinitionGroup>
  26. <ClCompile>
  27. <PrecompiledHeader>NotUsing</PrecompiledHeader>
  28. <WarningLevel Condition="'%(ClCompile.ExternalWarningLevel)' != ''">EnableAllWarnings</WarningLevel>
  29. <WarningLevel Condition="'%(ClCompile.ExternalWarningLevel)' == ''">Level4</WarningLevel>
  30. <ExternalWarningLevel>Level3</ExternalWarningLevel>
  31. <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  32. <DisableSpecificWarnings>4996;4820;4127;5045</DisableSpecificWarnings>
  33. <TreatSpecificWarningsAsErrors>4013</TreatSpecificWarningsAsErrors>
  34. <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>
  35. <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
  36. <LanguageStandard_C Condition="'%(ClCompile.LanguageStandard_C)' != ''">stdc17</LanguageStandard_C>
  37. </ClCompile>
  38. <Link>
  39. <GenerateDebugInformation>true</GenerateDebugInformation>
  40. </Link>
  41. </ItemDefinitionGroup>
  42. <ItemDefinitionGroup Condition="'$(MhdNumBits)' == '32'">
  43. <ClCompile>
  44. <PreprocessorDefinitions>WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  45. </ClCompile>
  46. </ItemDefinitionGroup>
  47. <ItemDefinitionGroup Condition="'$(TargetOSLevel)'&gt;='3'">
  48. <ClCompile>
  49. <PreprocessorDefinitions>_WIN32_WINNT=0x0602;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  50. </ClCompile>
  51. <Link>
  52. <MinimumRequiredVersion>6.02</MinimumRequiredVersion>
  53. </Link>
  54. <Lib>
  55. <MinimumRequiredVersion>6.02</MinimumRequiredVersion>
  56. </Lib>
  57. </ItemDefinitionGroup>
  58. <ItemDefinitionGroup Condition="'$(TargetOSLevel)'&gt;'0' And '$(TargetOSLevel)'&lt;'3'">
  59. <ClCompile>
  60. <PreprocessorDefinitions>_WIN32_WINNT=0x0600;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  61. </ClCompile>
  62. <Link>
  63. <MinimumRequiredVersion>6.00</MinimumRequiredVersion>
  64. </Link>
  65. <Lib>
  66. <MinimumRequiredVersion>6.00</MinimumRequiredVersion>
  67. </Lib>
  68. </ItemDefinitionGroup>
  69. <ItemDefinitionGroup Condition="'$(TargetOSLevel)'=='0' And '$(Platform)'=='Win32'">
  70. <ClCompile>
  71. <PreprocessorDefinitions>_WIN32_WINNT=0x0501;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  72. </ClCompile>
  73. <Link>
  74. <MinimumRequiredVersion>5.01</MinimumRequiredVersion>
  75. </Link>
  76. <Lib>
  77. <MinimumRequiredVersion>5.01</MinimumRequiredVersion>
  78. </Lib>
  79. </ItemDefinitionGroup>
  80. <ItemDefinitionGroup Condition="'$(TargetOSLevel)'=='0' And '$(Platform)'=='x64'">
  81. <ClCompile>
  82. <PreprocessorDefinitions>_WIN32_WINNT=0x0502;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  83. </ClCompile>
  84. <Link>
  85. <MinimumRequiredVersion>5.02</MinimumRequiredVersion>
  86. </Link>
  87. <Lib>
  88. <MinimumRequiredVersion>5.02</MinimumRequiredVersion>
  89. </Lib>
  90. </ItemDefinitionGroup>
  91. <ItemDefinitionGroup Condition="'$(UseDebugLibraries)'=='true'">
  92. <ClCompile>
  93. <Optimization>Disabled</Optimization>
  94. <SmallerTypeCheck>true</SmallerTypeCheck>
  95. <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  96. </ClCompile>
  97. <ResourceCompile>
  98. <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  99. </ResourceCompile>
  100. </ItemDefinitionGroup>
  101. <ItemDefinitionGroup Condition="'$(UseDebugLibraries)'!='true'">
  102. <ClCompile>
  103. <Optimization>Full</Optimization>
  104. <FunctionLevelLinking>true</FunctionLevelLinking>
  105. <IntrinsicFunctions>true</IntrinsicFunctions>
  106. <InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
  107. <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
  108. <OmitFramePointers>true</OmitFramePointers>
  109. <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  110. </ClCompile>
  111. <Link>
  112. <EnableCOMDATFolding>true</EnableCOMDATFolding>
  113. <OptimizeReferences>true</OptimizeReferences>
  114. <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
  115. </Link>
  116. <ResourceCompile>
  117. <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  118. </ResourceCompile>
  119. </ItemDefinitionGroup>
  120. <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
  121. <Link>
  122. <TargetMachine>MachineX86</TargetMachine>
  123. </Link>
  124. <Lib>
  125. <TargetMachine>MachineX86</TargetMachine>
  126. </Lib>
  127. </ItemDefinitionGroup>
  128. <ItemDefinitionGroup Condition="'$(Platform)'=='x64'">
  129. <Link>
  130. <TargetMachine>MachineX64</TargetMachine>
  131. </Link>
  132. <Lib>
  133. <TargetMachine>MachineX64</TargetMachine>
  134. </Lib>
  135. </ItemDefinitionGroup>
  136. </Project>