summaryrefslogtreecommitdiff
path: root/src/ToolBox/SOS/NETCore/SOS.NETCore.csproj
blob: c579b59dc0650f8ddcb399229af79b07c1a4dc9b (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
75
76
77
78
79
80
81
82
83
84
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />

  <PropertyGroup>
    <AssemblyName>SOS.NETCore</AssemblyName>
    <AssemblyVersion>1.0.0.0</AssemblyVersion>
    <ProjectGuid>{20513BA2-A156-4A17-4C70-5AC2DBD4F833}</ProjectGuid>
    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
    <OutputType>Library</OutputType>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    <NoStdLib>true</NoStdLib>
    <NoCompilerStandardLib>true</NoCompilerStandardLib>
    <IsDotNetFrameworkProductAssembly>true</IsDotNetFrameworkProductAssembly>
    <AssemblyKey>Open</AssemblyKey>
    <ExcludeMscorlibFacade>true</ExcludeMscorlibFacade>
    <ContainsPackageReferences>true</ContainsPackageReferences>

    <!-- We don't use any of MSBuild's resolution logic for resolving the framework, so just set these two properties to any folder that exists to skip
         the GenerateReferenceAssemblyPaths task (not target) and to prevent it from outputting a warning (MSB3644). -->
    <_TargetFrameworkDirectories>$(MSBuildThisFileDirectory)/Documentation</_TargetFrameworkDirectories>
    <_FullFrameworkReferenceAssemblyPaths>$(MSBuildThisFileDirectory)/Documentation</_FullFrameworkReferenceAssemblyPaths>
  </PropertyGroup>

  <!-- Default configurations to help VS understand the options -->
  <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'" />
  <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU'" />

  <!-- Configuration specific properties -->
  <PropertyGroup Condition="'$(Configuration)' == 'Debug' or '$(Configuration)' == 'Checked'">
    <DebugSymbols>true</DebugSymbols>
    <DebugType>full</DebugType>
    <DefineConstants>_DEBUG;DEBUG;TRACE;$(DefineConstants)</DefineConstants>
  </PropertyGroup>

  <PropertyGroup Condition="'$(OsEnvironment)' == 'Unix'">
    <DebugType>portable</DebugType>
  </PropertyGroup>

  <ItemGroup>
    <Compile Include="SymbolReader.cs" />
  </ItemGroup>

  <PropertyGroup>
    <TargetFramework>netcoreapp1.0</TargetFramework>
    <TargetFrameworkIdentifier>.NETCoreApp</TargetFrameworkIdentifier>
    <PackageTargetFallback>$(PackageTargetFallback);portable-net45+win8</PackageTargetFallback>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.NETCore.Platforms">
      <Version>$(RuntimeIdGraphDefinitionVersion)</Version>
    </PackageReference>
    <PackageReference Include="System.IO.FileSystem">
      <Version>4.0.1</Version>
    </PackageReference>
    <PackageReference Include="System.Runtime.InteropServices">
      <Version>4.1.0</Version>
    </PackageReference>
    <PackageReference Include="System.Reflection.Metadata">
      <Version>1.4.1</Version>
    </PackageReference>
  </ItemGroup>

  <Target Name="CopyItemsToDirectory" AfterTargets="Build">
    <Copy
      SourceFiles="$(OutputPath)$(AssemblyName).dll"
      DestinationFolder="$(BinDir)"
      SkipUnchangedFiles="false"
      OverwriteReadOnlyFiles="false"
      UseHardlinksIfPossible="false">
    </Copy>

    <Copy
      SourceFiles="$(OutputPath)$(AssemblyName).pdb"
      DestinationFolder="$(BinDir)\PDB"
      SkipUnchangedFiles="false"
      OverwriteReadOnlyFiles="false"
      UseHardlinksIfPossible="false">
    </Copy>
  </Target>

  <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
</Project>