1<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
2  <Import Project="..\dir.props" />
3
4 <!-- Set default Configuration and Platform -->
5  <PropertyGroup>
6    <__BuildArch Condition="'$(__BuildArch)' == ''">x64</__BuildArch>
7    <__BuildType Condition="'$(__BuildType)' == ''">Debug</__BuildType>
8    <__BuildOS Condition="'$(__BuildOS)' == ''">Windows_NT</__BuildOS>
9    <BuildArch>$(__BuildArch)</BuildArch>
10    <BuildType>$(__BuildType)</BuildType>
11    <BuildOS>$(__BuildOS)</BuildOS>
12    <Configuration Condition="'$(Configuration)' ==''">$(BuildType)</Configuration>
13    <Platform Condition="'$(Platform)'==''">$(BuildArch)</Platform>
14  </PropertyGroup>
15
16  <!-- Setup Default symbol and optimization for Configuration -->
17  <PropertyGroup Condition="'$(Configuration)' == 'Debug'">
18    <DebugSymbols Condition="'$(DebugSymbols)' == ''">true</DebugSymbols>
19    <Optimize Condition="'$(Optimize)' == ''">false</Optimize>
20    <DebugType Condition="'$(DebugType)' == ''">full</DebugType>
21    <DefineConstants>$(DefineConstants);DEBUG;TRACE;XUNIT_PERF</DefineConstants>
22  </PropertyGroup>
23  <PropertyGroup Condition="'$(Configuration)' == 'Release'">
24    <DebugSymbols Condition="'$(DebugSymbols)' == ''">true</DebugSymbols>
25    <Optimize Condition="'$(Optimize)' == ''">true</Optimize>
26    <DebugType Condition="'$(DebugType)' == ''">pdbonly</DebugType>
27    <DefineConstants>$(DefineConstants);TRACE;XUNIT_PERF</DefineConstants>
28  </PropertyGroup>
29  <PropertyGroup Condition="'$(Configuration)' == 'Checked'">
30    <DebugSymbols Condition="'$(DebugSymbols)' == ''">true</DebugSymbols>
31    <Optimize Condition="'$(Optimize)' == ''">true</Optimize>
32    <DebugType Condition="'$(DebugType)' == ''">full</DebugType>
33    <DefineConstants>$(DefineConstants);DEBUG;TRACE;XUNIT_PERF</DefineConstants>
34  </PropertyGroup>
35
36<!-- Setup the default output and intermediate paths -->
37  <PropertyGroup>
38    <OSPlatformConfig>$(BuildOS).$(Platform).$(Configuration)</OSPlatformConfig>
39    <BaseOutputPath>$(ProjectDir)\..\bin\tests</BaseOutputPath>
40    <BaseOutputPath Condition="'$(__TestRootDir)' != ''">$(__TestRootDir)\</BaseOutputPath>
41    <BaseOutputPathWithConfig>$(BaseOutputPath)\$(OSPlatformConfig)\</BaseOutputPathWithConfig>
42    <BinDir>$(BaseOutputPathWithConfig)</BinDir>
43    <BaseIntermediateOutputPath>$(ProjectDir)\..\bin\tests\obj\$(OSPlatformConfig)\Managed\</BaseIntermediateOutputPath>
44    <BaseIntermediateOutputPath Condition="'$(__ManagedTestIntermediatesDir)' != ''">$(__ManagedTestIntermediatesDir)\</BaseIntermediateOutputPath>
45    <__NativeTestIntermediatesDir Condition="'$(__NativeTestIntermediatesDir)' == ''">$([System.IO.Path]::GetFullPath($(BaseOutputPathWithConfig)..\obj\$(BuildOS).$(Platform).$(Configuration)\Native\))</__NativeTestIntermediatesDir>
46    <BuildProjectRelativeDir>$(MSBuildProjectName)\</BuildProjectRelativeDir>
47    <BuildProjectRelativeDir Condition="'$(MSBuildProjectDirectory.Contains($(SourceDir)))'">$([System.String]::Copy('$(MSBuildProjectDirectory)').Replace($(SourceDir),''))\$(MSBuildProjectName)</BuildProjectRelativeDir>
48    <IntermediateOutputPath>$(BaseIntermediateOutputPath)$(BuildProjectRelativeDir)</IntermediateOutputPath>
49    <OutputPath>$(BaseOutputPathWithConfig)$(BuildProjectRelativeDir)\</OutputPath>
50    <TestWorkingDir Condition="'$(TestWorkingDir)'==''">$(BaseOutputPath)\testStagingDir\</TestWorkingDir>
51    <TestPath Condition="'$(TestPath)'==''">$(TestWorkingDir)$(OSPlatformConfig)\$(MSBuildProjectName)/</TestPath>
52  </PropertyGroup>
53
54  <!-- Setup the output location for the project.json generated for the local CoreCLR build. -->
55  <PropertyGroup>
56    <TestRuntimeProjectJsonDir>$(BaseOutputPath)\test_runtime</TestRuntimeProjectJsonDir>
57    <TestRuntimeProjectJson>$(TestRuntimeProjectJsonDir)\project.json</TestRuntimeProjectJson>
58    <TestRuntimeProjectLockJson>$(TestRuntimeProjectJsonDir)\project.lock.json</TestRuntimeProjectLockJson>
59  </PropertyGroup>
60
61
62</Project>
63
64