Update dotnet/sdk to 2.0.0-preview2-006497
[platform/core/dotnet/build-tools.git] / dotnet / sdk / 2.0.0-preview2-006497 / Sdks / Microsoft.NET.Sdk / build / Microsoft.NET.DefaultOutputPaths.targets
1 <!--\r
2 ***********************************************************************************************\r
3 Microsoft.NET.DefaultOutputPaths.targets\r
4 \r
5 WARNING:  DO NOT MODIFY this file unless you are knowledgeable about MSBuild and have\r
6           created a backup copy.  Incorrect changes to this file will make it\r
7           impossible to load or build your projects from the command-line or the IDE.\r
8 \r
9 Copyright (c) .NET Foundation. All rights reserved. \r
10 ***********************************************************************************************\r
11 -->\r
12 <Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
13 \r
14    <!--\r
15     Apply the same default output paths as Microsoft.Common.targets now since we're running before them,\r
16     but need to adjust them and/or make decisions in terms of them.\r
17 \r
18     Also note that common targets only set a default OutputPath if neither configuration nor \r
19     platform were set by the user. This was used to validate that a valid configuration is passed, \r
20     assuming the convention maintained by VS that every Configuration|Platform combination had \r
21     an explicit OutputPath. Since we now want to support leaner project files with less \r
22     duplication and more automatic defaults, we always set a default OutputPath and can no\r
23     longer depend on that convention for validation. Getting validation re-enabled with a \r
24     different mechanism is tracked by https://github.com/dotnet/sdk/issues/350\r
25    -->\r
26   <PropertyGroup>\r
27     <MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>\r
28     \r
29     <Configuration Condition="'$(Configuration)'==''">Debug</Configuration>\r
30     <Platform Condition="'$(Platform)'==''">AnyCPU</Platform>\r
31     <PlatformName Condition="'$(PlatformName)' == ''">$(Platform)</PlatformName>\r
32     \r
33     <BaseOutputPath Condition="'$(BaseOutputPath)' == ''">bin\</BaseOutputPath>\r
34     <BaseOutputPath Condition="!HasTrailingSlash('$(BaseOutputPath)')">$(BaseOutputPath)\</BaseOutputPath>\r
35     <OutputPath Condition="'$(OutputPath)' == '' and '$(PlatformName)' == 'AnyCPU'">$(BaseOutputPath)$(Configuration)\</OutputPath>\r
36     <OutputPath Condition="'$(OutputPath)' == '' and '$(PlatformName)' != 'AnyCPU'">$(BaseOutputPath)$(PlatformName)\$(Configuration)\</OutputPath>\r
37     <OutputPath Condition="!HasTrailingSlash('$(OutputPath)')">$(OutputPath)\</OutputPath>\r
38 \r
39     <BaseIntermediateOutputPath Condition="'$(BaseIntermediateOutputPath)' == ''">obj\</BaseIntermediateOutputPath>\r
40     <BaseIntermediateOutputPath Condition="!HasTrailingSlash('$(BaseIntermediateOutputPath)')">$(BaseIntermediateOutputPath)\</BaseIntermediateOutputPath>\r
41     <IntermediateOutputPath Condition=" $(IntermediateOutputPath) == '' and '$(PlatformName)' == 'AnyCPU' ">$(BaseIntermediateOutputPath)$(Configuration)\</IntermediateOutputPath>\r
42     <IntermediateOutputPath Condition=" $(IntermediateOutputPath) == '' and '$(PlatformName)' != 'AnyCPU' ">$(BaseIntermediateOutputPath)$(PlatformName)\$(Configuration)\</IntermediateOutputPath>\r
43     <IntermediateOutputPath Condition="!HasTrailingSlash('$(IntermediateOutputPath)')">$(IntermediateOutputPath)\</IntermediateOutputPath>\r
44   </PropertyGroup>\r
45   \r
46   <!-- Set the package output path (for nuget pack target) now, before the TargetFramework is appended -->\r
47   <PropertyGroup>\r
48     <PackageOutputPath Condition="'$(PackageOutputPath)' == ''">$(OutputPath)</PackageOutputPath>\r
49   </PropertyGroup>\r
50   \r
51 </Project>\r