summaryrefslogtreecommitdiff
path: root/dir.props
blob: 50af3a30ceb41c9af5c0780e6e2d72559d9aef27 (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
<?xml version="1.0" encoding="utf-8"?>
<Project>
  <Import Project="dir.common.props" />

  <PropertyGroup>
    <LangVersion>8.0</LangVersion>
    <UseSharedCompilation>true</UseSharedCompilation>
  </PropertyGroup>

  <!-- Set the kind of PDB to Portable -->
  <PropertyGroup>
    <DebugType Condition="'$(DebugType)' == ''">Portable</DebugType>
  </PropertyGroup>

  <!--
     Switching to the .NET Core version of the BuildTools tasks seems to break numerous scenarios, such as VS intellisense and resource designer
     as well as running the build on mono. Until we can get these sorted out we will continue using the .NET 4.5 version of the tasks.
     -->
  <PropertyGroup>
    <RunningOnCore>false</RunningOnCore>
    <RunningOnCore Condition="'$(MSBuildRuntimeType)' == 'core'">true</RunningOnCore>
    <BuildToolsTargetsDesktop>false</BuildToolsTargetsDesktop>
    <BuildToolsTargetsDesktop Condition="'$(RunningOnCore)' != 'true'">true</BuildToolsTargetsDesktop>
    <BuildToolsTargets45>$(BuildToolsTargetsDesktop)</BuildToolsTargets45>
  </PropertyGroup>

  <!-- Common properties -->
  <PropertyGroup>

    <!-- This name is used to create a GIT repository URL https://github.com/dotnet/$(GitHubRepositoryName) used to find source code for debugging -->
    <GitHubRepositoryName Condition="'$(GitHubRepositoryName)' == ''">coreclr</GitHubRepositoryName>

    <ToolsDir Condition="'$(ToolsDir)'==''">$(ProjectDir)Tools\</ToolsDir>
    <DotnetCliPath Condition="'$(DotnetCliPath)'==''">$(ProjectDir).dotnet\</DotnetCliPath>
    <OverrideToolHost>$(DotnetCliPath)dotnet</OverrideToolHost>
    <BuildToolsSemaphore Condition="'$(BuildToolsSemaphore)' == ''">$(ToolsDir)Microsoft.DotNet.Build.Tasks.dll</BuildToolsSemaphore>

    <TestWorkingDir>$(__TestWorkingDir)\</TestWorkingDir>
    <TestWorkingDir Condition="'$(__TestWorkingDir)'==''">$(RootBinDir)tests\$(PlatformConfigPathPart)\</TestWorkingDir>

    <Platform Condition="'$(Platform)' == ''">$(BuildArch)</Platform>
    <Platform Condition="'$(Platform)' == 'amd64'">x64</Platform>

    <!-- Default to portable build if not explicitly set -->
    <PortableBuild Condition="'$(PortableBuild)' == ''">true</PortableBuild>

    <OverrideRestoreOutputPath>true</OverrideRestoreOutputPath>

    <!-- If true, indicates that this is not an officially supported release -->
    <!-- It is important to flip this to false in official release branches -->
    <!-- Keep it in sync with PRERELEASE in clrdefinitions.cmake -->
    <IsPrerelease>true</IsPrerelease>
  </PropertyGroup>

  <!-- Output paths -->
  <PropertyGroup>
    <BaseIntermediateOutputPath Condition="'$(BaseIntermediateOutputPath)' == ''">$(RootBinDir)obj\</BaseIntermediateOutputPath>

    <AppendTargetFrameworkToOutputPath Condition="'$(ArcadeBuild)' == 'true'">false</AppendTargetFrameworkToOutputPath>
    <IntermediateOutputPath>$(__IntermediatesDir)\$(MSBuildProjectName)\</IntermediateOutputPath>
    <IntermediateOutputPath Condition="'$(__IntermediatesDir)' == ''">$(RootBinDir)obj/$(PlatformConfigPathPart)/$(MSBuildProjectName)/</IntermediateOutputPath>

    <OutputPath Condition="'$(OutputPath)' == ''">$(BinDir)</OutputPath>
  </PropertyGroup>

  <!-- Import Build tools common props file where repo-independent properties are found -->
  <Import Condition="Exists('$(ToolsDir)Build.Common.props')" Project="$(ToolsDir)Build.Common.props" />

  <!-- Provides properties for dependency versions and configures dependency verification/auto-upgrade. -->
  <Import Project="$(ProjectDir)dependencies.props" />

  <!-- Use Roslyn Compilers to build -->
  <Import Project="$(RoslynPropsFile)" Condition="Exists('$(RoslynPropsFile)')" />
</Project>