forked from dotnet/wcf
-
Notifications
You must be signed in to change notification settings - Fork 0
/
TargetFramework.props
64 lines (54 loc) · 4.29 KB
/
TargetFramework.props
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
<Project>
<!-- The 'Microsoft.NET.Sdk' does not support targetFrameworks,
therefore we have to decode the NuGet TFM to set the MSBuild Target* properties . -->
<PropertyGroup>
<_targetFrameworkIdentifier>$(TargetFramework.TrimEnd('.0123456789'))</_targetFrameworkIdentifier>
<_targetFrameworkVersion>$(TargetFramework.Substring($(_targetFrameworkIdentifier.Length)))</_targetFrameworkVersion>
</PropertyGroup>
<PropertyGroup Condition="'$(_targetFrameworkIdentifier)' == 'uap' ">
<!-- UAP encodes TargetPlatform in the NuGet-TFM and uses .NETCore,v5.0 for TargetFrameworkMoniker-->
<TargetFrameworkIdentifier>.NETCore</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
<TargetPlatformIdentifier>UAP</TargetPlatformIdentifier>
<!-- derive platform settings from TFM -->
<TargetPlatformVersion Condition="'$(TargetPlatformVersion)' == '' AND '$(_targetFrameworkVersion)' == '10.0'">10.0.17763.0</TargetPlatformVersion>
<TargetPlatformVersion Condition="'$(TargetPlatformVersion)' == ''">$([System.Version]::Parse('$(_targetFrameworkVersion)')).0</TargetPlatformVersion>
<TargetPlatformMinVersion Condition="'$(TargetPlatformMinVersion)' == '' AND '$(_targetFrameworkVersion)' == '10.0'">10.0.15063.0</TargetPlatformMinVersion>
<TargetPlatformMinVersion Condition="'$(TargetPlatformMinVersion)' == ''">$([System.Version]::Parse('$(_targetFrameworkVersion)')).0</TargetPlatformMinVersion>
<!-- UAP specific build properties-->
<NoStdLib>true</NoStdLib>
<TargetsUAP>true</TargetsUAP>
<UwpPackageVersion>6.2.8</UwpPackageVersion>
</PropertyGroup>
<!-- the following are minimal mappings of TFMs to enable restore and packaging without necessarily compiling -->
<PropertyGroup Condition="$(_targetFrameworkIdentifier.StartsWith('portable'))">
<TargetFrameworkIdentifier>.NETPortable</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v0.0</TargetFrameworkVersion>
<!-- There's no easy mapping from NuGet's portable TFM back to profile number, add more cases here as needed. -->
<TargetFrameworkProfile Condition="$(TargetFramework.EndsWith('-net45+win8+wp8'))">Profile78</TargetFrameworkProfile>
<TargetFrameworkProfile Condition="$(TargetFramework.EndsWith('-net45+win8'))">Profile7</TargetFrameworkProfile>
<!-- Don't require a targeting pack -->
<DisableStandardFrameworkResolution>true</DisableStandardFrameworkResolution>
</PropertyGroup>
<PropertyGroup Condition="$(_targetFrameworkIdentifier.StartsWith('Mono')) OR
$(_targetFrameworkIdentifier.StartsWith('xamarin')) OR
'$(_targetFrameworkIdentifier)' == 'netcore' OR
'$(_targetFrameworkIdentifier)' == 'win' OR
'$(_targetFrameworkIdentifier)' == 'wp'
">
<TargetFrameworkIdentifier>$(_targetFrameworkIdentifier)</TargetFrameworkIdentifier>
<TargetFrameworkVersion Condition="$(_targetFrameworkVersion.Contains('.'))">v$(_targetFrameworkVersion)</TargetFrameworkVersion>
<TargetFrameworkVersion Condition="'$(TargetFrameworkVersion)' == '' AND $(_targetFrameworkVersion.Length) == 1">v$(_targetFrameworkVersion[0]).0</TargetFrameworkVersion>
<TargetFrameworkVersion Condition="'$(TargetFrameworkVersion)' == '' AND $(_targetFrameworkVersion.Length) == 2">v$(_targetFrameworkVersion[0]).$(_targetFrameworkVersion[1])</TargetFrameworkVersion>
<TargetFrameworkVersion Condition="'$(TargetFrameworkVersion)' == '' AND $(_targetFrameworkVersion.Length) == 3">v$(_targetFrameworkVersion[0]).$(_targetFrameworkVersion[1]).$(_targetFrameworkVersion[2])</TargetFrameworkVersion>
<DisableStandardFrameworkResolution>true</DisableStandardFrameworkResolution>
</PropertyGroup>
<PropertyGroup Condition="'$(TargetFramework)' == 'net45' OR
'$(TargetFramework)' == 'net46' OR
'$(TargetFramework)' == 'net461'
">
<!-- [todo:arcade] This is a workaround for the incorrect casing of the reference to System.Xml.dll in package Microsoft.NETFramework.ReferenceAssemblies. -->
<!-- Remove it once the ref package is fixed. -->
<DisableImplicitFrameworkReferences>true</DisableImplicitFrameworkReferences>
</PropertyGroup>
</Project>