2
0

Common.Build.Default.props 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  3. <!-- Constants -->
  4. <PropertyGroup>
  5. <NtTargetVersion_Win7 >0x601</NtTargetVersion_Win7>
  6. <NtTargetVersion_Win8 >0x602</NtTargetVersion_Win8>
  7. <NtTargetVersion_WinBlue>0x603</NtTargetVersion_WinBlue>
  8. <NtTargetVersion_Win10>0xA00</NtTargetVersion_Win10>
  9. <NtTargetVersion_Latest>$(NtTargetVersion_Win10)</NtTargetVersion_Latest>
  10. </PropertyGroup>
  11. <!-- Auto tool set selection -->
  12. <PropertyGroup>
  13. <BuildToolVersion>$(VisualStudioVersion)</BuildToolVersion>
  14. <BuildToolVersion Condition="'$(BuildToolVersion)'==''">$(MSBuildToolsVersion)</BuildToolVersion>
  15. <PlatformToolset Condition="'$(BuildToolVersion)'=='11.0'">v110</PlatformToolset>
  16. <PlatformToolset Condition="'$(BuildToolVersion)'=='12.0'">v120</PlatformToolset>
  17. <PlatformToolset Condition="'$(BuildToolVersion)'=='14.0'">v140</PlatformToolset>
  18. <PlatformToolset Condition="'$(BuildToolVersion)'=='15.0'">v141</PlatformToolset>
  19. <PlatformToolset Condition="'$(BuildToolVersion)'=='16.0'">v142</PlatformToolset>
  20. <PlatformToolset Condition="'$(BuildToolVersion)'=='17.0'">v143</PlatformToolset>
  21. <PlatformToolset Condition="'$(BuildToolVersion)'=='18.0'">v145</PlatformToolset>
  22. </PropertyGroup>
  23. <!-- Default ChakraDevConfigDir -->
  24. <PropertyGroup>
  25. <ChakraDevConfigDir Condition="'$(ChakraDevConfigDir)'==''">$(USERPROFILE)\ChakraDevConfig</ChakraDevConfigDir>
  26. </PropertyGroup>
  27. <!-- Import user settings, can be used to override OutBaseDir/IntBaseDir-->
  28. <ImportGroup>
  29. <Import Project="$(ChakraDevConfigDir)\Chakra.Build.user.props" Condition="exists('$(ChakraDevConfigDir)\Chakra.Build.user.props')"/>
  30. </ImportGroup>
  31. <!-- Configurations -->
  32. <PropertyGroup Condition="'$(BuildLite)'=='true'">
  33. <BuildJIT>false</BuildJIT>
  34. <BuildScriptDebug>false</BuildScriptDebug>
  35. </PropertyGroup>
  36. <!-- Common build settings -->
  37. <PropertyGroup>
  38. <DebugBuild />
  39. <DebugBuild Condition="'$(Configuration)'!='Release' and '$(Configuration)'!='Test'">true</DebugBuild>
  40. <OptimizedBuild Condition="'$(OptimizedBuild)'=='' and '$(DebugBuild)'!='true'">true</OptimizedBuild>
  41. <WindowsSDKDesktopARMSupport Condition="'$(Platform)'=='ARM'">true</WindowsSDKDesktopARMSupport>
  42. </PropertyGroup>
  43. <PropertyGroup Label="Configuration">
  44. <CharacterSet>Unicode</CharacterSet>
  45. </PropertyGroup>
  46. <!-- Change configuration name to output to a different folder -->
  47. <!-- POGO instrumentation -->
  48. <PropertyGroup>
  49. <IsPogoBuild Condition="('$(POGO_TYPE)'=='PGO' OR '$(POGO_TYPE)'=='PGI')">true</IsPogoBuild>
  50. <OutDirName Condition="'$(IsPogoBuild)'=='true'">$(Configuration.ToLower())_pogo</OutDirName>
  51. </PropertyGroup>
  52. <!-- Alternate platform names -->
  53. <PropertyGroup>
  54. <!-- PlatformPathName is used in OutDir/IntDir name-->
  55. <PlatformPathName>$(Platform)</PlatformPathName>
  56. <PlatformPathName Condition="'$(Platform)'=='Win32'">x86</PlatformPathName>
  57. <!-- PlatformPathNameAlt is used by Backend for architecture directory -->
  58. <PlatformPathNameAlt>$(Platform)</PlatformPathNameAlt>
  59. <PlatformPathNameAlt Condition="'$(Platform)'=='Win32'">i386</PlatformPathNameAlt>
  60. <PlatformPathNameAlt Condition="'$(Platform)'=='x64'">amd64</PlatformPathNameAlt>
  61. </PropertyGroup>
  62. <!-- Default output directories -->
  63. <PropertyGroup>
  64. <OutBaseDir Condition="'$(OutBaseDir)'!=''">$(OutBaseDir)\$(SolutionName)</OutBaseDir>
  65. <OutBaseDir Condition="'$(OutBaseDir)'==''">$(SolutionDir)VcBuild</OutBaseDir>
  66. <OutBaseDir Condition="'$(Clang)'!=''">$(OutBaseDir).$(Clang)</OutBaseDir>
  67. <OutBaseDir Condition="'$(BuildLite)'=='true'">$(OutBaseDir).Lite</OutBaseDir>
  68. <OutBaseDir Condition="'$(BuildLite)'!='true' and '$(BuildJIT)'=='false'">$(OutBaseDir).NoJIT</OutBaseDir>
  69. <OutBaseDir Condition="'$(BuildLite)'!='true' and '$(BuildScriptDebug)'=='false'">$(OutBaseDir).NoScriptDebug</OutBaseDir>
  70. <OutBaseDir Condition="'$(ForceSWB)'=='true'">$(OutBaseDir).SWB</OutBaseDir>
  71. <IntBaseDir Condition="'$(IntBaseDir)'==''">$(OutBaseDir)</IntBaseDir>
  72. </PropertyGroup>
  73. <!-- Import generated build info -->
  74. <PropertyGroup>
  75. <ObjectDirectory Condition="'$(TF_BUILD_BUILDDIRECTORY)'!=''">$(TF_BUILD_BUILDDIRECTORY)</ObjectDirectory>
  76. <ObjectDirectory Condition="'$(TF_BUILD_BUILDDIRECTORY)'==''">$(IntBaseDir)\obj\$(PlatformPathName.ToLower())_$(Configuration.ToLower())</ObjectDirectory>
  77. </PropertyGroup>
  78. <Import Project="$(ObjectDirectory)\Chakra.Generated.BuildInfo.props" Condition="'$(ObjectDirectory)'!='' AND exists('$(ObjectDirectory)\Chakra.Generated.BuildInfo.props')" />
  79. <!-- Output directories -->
  80. <PropertyGroup>
  81. <OutDirName Condition="'$(ENABLE_CODECOVERAGE)'=='true'">codecoverage</OutDirName>
  82. <OutDirName Condition="'$(OutDirName)'==''">$(Configuration.ToLower())</OutDirName>
  83. <OutDir>$(OutBaseDir)\bin\$(PlatformPathName.ToLower())_$(OutDirName)\</OutDir>
  84. <IntDir>$(IntBaseDir)\obj\$(PlatformPathName.ToLower())_$(Configuration.ToLower())\$(MSBuildProjectName)\</IntDir>
  85. <OutDir Condition="'$(ConfigurationType)'=='StaticLibrary'">$(IntDir)</OutDir>
  86. <OutputPath>$(OutDir)</OutputPath>
  87. <ChakraParserIntDir>$(IntDir)..\Chakra.Parser</ChakraParserIntDir>
  88. <ChakraJITIDLIntDir>$(IntDir)..\Chakra.JITIDL</ChakraJITIDLIntDir>
  89. </PropertyGroup>
  90. <!-- Determine if the build should include wabt -->
  91. <PropertyGroup>
  92. <BuildWabt>true</BuildWabt>
  93. <!-- Only build wabt on x64/x86, the only platform supporting WebAssembly at this time -->
  94. <BuildWabt Condition="'$(Platform)'!='x64' and '$(Platform)'!='win32'">false</BuildWabt>
  95. <!-- Wabt is a test tool, do not include it in the Release build -->
  96. <BuildWabt Condition="'$(Configuration)'!='Debug' and '$(Configuration)'!='Test'">false</BuildWabt>
  97. <!-- Wabt uses c++11 features only available in recent toolset (v140 and above) -->
  98. <BuildWabt Condition="'$(BuildToolVersion)'&lt;'14.0'">false</BuildWabt>
  99. </PropertyGroup>
  100. </Project>