summaryrefslogtreecommitdiff
path: root/Tizen.Runtime/Tizen.Runtime.Coreclr.csproj
blob: 6bf57545ce05d72c9060dd48933be57b48fb77a6 (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
85
86
87
88
89
90
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" InitialTargets="CheckConfig" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
	
	<PropertyGroup>
		<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
		<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
		<OutputType>library</OutputType>
		<AssemblyName>Tizen.Runtime.Coreclr</AssemblyName>
	</PropertyGroup>

  <PropertyGroup>
    <TargetFrameworkIdentifier>.NETStandard</TargetFrameworkIdentifier>
    <TargetFrameworkVersion>v1.5</TargetFrameworkVersion>
    <NuGetTargetMoniker>.NETStandard,Version=v1.5</NuGetTargetMoniker>
    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>
    <NoStdLib>true</NoStdLib>
    <NoWarn>$(NoWarn);1701;1702</NoWarn>
  </PropertyGroup>

	<PropertyGroup Condition=" '$(Configuration)' == 'Debug'">
		<DebugSymbols>true</DebugSymbols>
		<DebugType>full</DebugType>
		<OutputPath>bin/</OutputPath>
		<DefineConstants>DEBUG;TRACE</DefineConstants>
	</PropertyGroup>

	<PropertyGroup Condition=" '$(Configuration)' == 'Release'">
		<DebugType>pdbonly</DebugType>
		<Optimize>true</Optimize>
		<OutputPath>bin/</OutputPath>
    <DefineConstants>TRACE</DefineConstants>
	</PropertyGroup>

<!-- Roslyn Not Support Assembly Signing yet.
	<PropertyGroup>
		<SignAssembly>true</SignAssembly>
		<AssemblyOriginatorKeyFile>Tizen.Runtime.snk</AssemblyOriginatorKeyFile>
	</PropertyGroup>
-->

	<PropertyGroup>
		<DefineConstants Condition=" '$(CLOG)' != '' ">$(DefineConstants);CLOG</DefineConstants>
	</PropertyGroup>

	<ItemGroup>
		<Compile Include="Tizen.Runtime.Coreclr/AssemblyManager.cs" />
		<Compile Include="Tizen.Runtime.Coreclr/AssemblyLoader.cs" />
		<Compile Include="Tizen.Runtime/Log.cs" />
		<Compile Include="Tizen.Runtime/DefaultConfigAttribute.cs" />
	</ItemGroup>

	<Target Name="CheckConfig">
		<Message Text="MSBuildProjectDirectory = $(MSBuildProjectDirectory)"/>
	</Target>

  <ItemGroup>
    <None Include="Tizen.Runtime.Coreclr.project.json" />
  </ItemGroup>

	<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

  <PropertyGroup>
    <!-- https://github.com/dotnet/corefxlab/tree/master/samples/NetCoreSample and
       https://docs.microsoft.com/en-us/dotnet/articles/core/tutorials/target-dotnetcore-with-msbuild
    -->
    <!-- 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 GetReferenceAssemblyPaths task (not target) and
       to prevent it from outputting a warning (MSB3644).
    -->
    <_TargetFrameworkDirectories>$(MSBuildThisFileDirectory)</_TargetFrameworkDirectories>
    <_FullFrameworkReferenceAssemblyPaths>$(MSBuildThisFileDirectory)</_FullFrameworkReferenceAssemblyPaths>
    <AutoUnifyAssemblyReferences>true</AutoUnifyAssemblyReferences>
  </PropertyGroup>

	<Target Name="BeforeCompile">
		<ItemGroup>
			<AssemblyAttributes Include="DefaultConfigAttribute" Condition=" $(PreloadPath) != '' ">
				<_Parameter1>PreloadPath=$(PreloadPath)</_Parameter1>
			</AssemblyAttributes>
		</ItemGroup>

		<WriteCodeFragment AssemblyAttributes="@(AssemblyAttributes)"
			Language="C#"
			OutputDirectory="$(IntermediateOutputPath)"
			OutputFile="Config.cs">
			<Output TaskParameter="OutputFile" ItemName="Compile" />
		</WriteCodeFragment>

	</Target>
</Project>