Chakra.Build.props 4.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  3. <Import Project="Common.Build.props"/>
  4. <PropertyGroup>
  5. <Win32_WinNTVersion Condition="'$(NtTargetVersion)'=='$(NtTargetVersion_Win7)'">0x0601</Win32_WinNTVersion>
  6. <Win32_WinNTVersion Condition="'$(NtTargetVersion)'=='$(NtTargetVersion_Win8)'">0x0602</Win32_WinNTVersion>
  7. <Win32_WinNTVersion Condition="'$(NtTargetVersion)'=='$(NtTargetVersion_WinBlue)'">0x0603</Win32_WinNTVersion>
  8. <Win32_WinNTVersion Condition="'$(NtTargetVersion)'=='$(NtTargetVersion_Win10)'">0x0A00</Win32_WinNTVersion>
  9. <!-- Always use Platform SDK for core builds -->
  10. <EventManifestXmlPath Condition="'$(TargetPlatformVersion)'=='8.1'">$(WindowsSdkDir)Include\um</EventManifestXmlPath>
  11. <EventManifestXmlPath Condition="'$(TargetPlatformVersion)'!='8.1'">$(WindowsSdkDir)Include\$(TargetPlatformVersion)\um</EventManifestXmlPath>
  12. </PropertyGroup>
  13. <PropertyGroup>
  14. <NoThrowNewLib>nothrownew.obj</NoThrowNewLib>
  15. </PropertyGroup>
  16. <PropertyGroup Condition="'$(RunCodeAnalysis)'=='' AND '$(Configuration)'=='Release'">
  17. <RunCodeAnalysis>$(BuildWithCodeAnalysis)</RunCodeAnalysis>
  18. </PropertyGroup>
  19. <ItemDefinitionGroup>
  20. <ClCompile>
  21. <PreprocessorDefinitions>
  22. %(PreprocessorDefinitions);
  23. _CHAKRACOREBUILD;
  24. _WIN32_WINNT=$(Win32_WinNTVersion);
  25. WINVER=$(Win32_WinNTVersion);
  26. WIN32_LEAN_AND_MEAN=1
  27. </PreprocessorDefinitions>
  28. <PreprocessorDefinitions Condition="'$(BuildJIT)'=='false'">
  29. %(PreprocessorDefinitions);
  30. DISABLE_JIT=1
  31. </PreprocessorDefinitions>
  32. <PreprocessorDefinitions Condition="'$(BuildScriptDebug)'=='false'">
  33. %(PreprocessorDefinitions);
  34. BUILD_WITHOUT_SCRIPT_DEBUG=1
  35. </PreprocessorDefinitions>
  36. <PreprocessorDefinitions Condition="'$(BuildLite)'=='true'">
  37. %(PreprocessorDefinitions);
  38. CHAKRACORE_LITE
  39. </PreprocessorDefinitions>
  40. <PreprocessorDefinitions Condition="'$(IntlICU)'=='true'">
  41. %(PreprocessorDefinitions);
  42. INTL_ICU=1
  43. </PreprocessorDefinitions>
  44. <PreprocessorDefinitions Condition="'$(ForceSWB)'=='true'">
  45. %(PreprocessorDefinitions);
  46. GLOBAL_ENABLE_WRITE_BARRIER=1
  47. </PreprocessorDefinitions>
  48. <PreprocessorDefinitions Condition="'$(NTDDIVersion)'!=''" >%(PreprocessorDefinitions);NTDDI_VERSION=$(NTDDIVersion)</PreprocessorDefinitions>
  49. <!-- REVIEW: These warnings are introduced when moving to VS2015 tools, may want to clean these up -->
  50. <DisableSpecificWarnings>
  51. %(DisableSpecificWarnings);
  52. 4458; <!-- declaration of '' hides class member -->
  53. 4312; <!-- 'type cast': conversion from '' to '' of greater size -->
  54. 4800; <!-- type' : forcing value to bool 'true' or 'false' (performance warning) [always off in 2017 by default, but warns in 2015 -->
  55. </DisableSpecificWarnings>
  56. <!-- Use the debug CRT in debug build -->
  57. <RuntimeLibrary Condition="'$(Configuration)'=='Debug' AND '$(RuntimeLib)'!='static_library'">MultiThreadedDebugDLL</RuntimeLibrary>
  58. <RuntimeLibrary Condition="'$(Configuration)'=='Debug' AND '$(RuntimeLib)'=='static_library'">MultiThreadedDebug</RuntimeLibrary>
  59. <AdditionalIncludeDirectories>
  60. $(ChakraCoreRootDirectory)\lib\common\placeholder;
  61. $(IntDir)..\CoreManifests;
  62. %(AdditionalIncludeDirectories)
  63. </AdditionalIncludeDirectories>
  64. <AdditionalIncludeDirectories Condition="'$(IntlICU)'=='true'">
  65. $(IcuIncludeDir)\common;
  66. $(IcuIncludeDir)\i18n;
  67. %(AdditionalIncludeDirectories)
  68. </AdditionalIncludeDirectories>
  69. </ClCompile>
  70. <ResourceCompile>
  71. <PreprocessorDefinitions>%(PreprocessorDefinitions);_CHAKRACOREBUILD</PreprocessorDefinitions>
  72. </ResourceCompile>
  73. </ItemDefinitionGroup>
  74. <!-- Link dependencies for projects that link with Chakra libraries -->
  75. <PropertyGroup>
  76. <ChakraCommonLinkDependencies>
  77. oleaut32.lib;
  78. version.lib;
  79. bcrypt.lib
  80. </ChakraCommonLinkDependencies>
  81. <RLCommonLinkDependencies>
  82. kernel32.lib;
  83. ole32.lib
  84. </RLCommonLinkDependencies>
  85. </PropertyGroup>
  86. <PropertyGroup Condition="'$(DebugBuild)'=='true'">
  87. <ChakraCommonLinkDependencies>
  88. $(ChakraCommonLinkDependencies);
  89. dbghelp.lib;
  90. user32.lib
  91. </ChakraCommonLinkDependencies>
  92. </PropertyGroup>
  93. <Import Condition="'$(Clang)'!=''" Project="Chakra.Build.Clang.props"/>
  94. </Project>