forked from OData/odata.net
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Build.props
112 lines (87 loc) · 6.73 KB
/
Build.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
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
<Project>
<PropertyGroup>
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
</PropertyGroup>
<PropertyGroup>
<!-- Global settings that apply unconditionally. -->
<EnlistmentRoot>$(MSBuildThisFileDirectory.TrimEnd('\'))</EnlistmentRoot>
</PropertyGroup>
<PropertyGroup>
<!--Default generated assembly attributes-->
<AssemblyAttributeClsCompliant Condition="'$(AssemblyAttributeClsCompliant)' == ''">true</AssemblyAttributeClsCompliant>
<SecurityMigration Condition="'$(SecurityMigration)' == ''">true</SecurityMigration>
<AssemblyAttributeComVisible Condition="'$(AssemblyAttributeComVisible)' == ''">false</AssemblyAttributeComVisible>
<AssemblyAttributeComCompatibleSideBySide Condition="'$(AssemblyAttributeComCompatibleSideBySide)' == ''">false</AssemblyAttributeComCompatibleSideBySide>
<UseOwnAssemblyVersion Condition="'$(UseOwnAssemblyVersion)' == ''">false</UseOwnAssemblyVersion>
<NoRuntimeCompatibilityAttribute Condition="'$(NoRuntimeCompatibilityAttribute)' == ''">false</NoRuntimeCompatibilityAttribute>
<AssemblyAttributeSkipVerificationInFullTrust Condition="'$(AssemblyAttributeSkipVerificationInFullTrust)' == ''">true</AssemblyAttributeSkipVerificationInFullTrust>
</PropertyGroup>
<PropertyGroup>
<!--Define constants that are used in ...\src\AssemblyInfo\AssemblyInfoCommon.cs to generate assembly attributes-->
<DefineConstants Condition="'$(UseVsVersion)' == 'true'">$(DefineConstants);ASSEMBLY_ATTRIBUTE_PRODUCT_VS</DefineConstants>
<DefineConstants Condition="'$(AssemblyAttributeSuppressSecurityRules)' == 'true'">$(DefineConstants);SUPPRESS_SECURITY_RULES</DefineConstants>
<DefineConstants Condition="'$(AssemblyAttributeClsCompliant)' == 'true'">$(DefineConstants);ASSEMBLY_ATTRIBUTE_CLS_COMPLIANT</DefineConstants>
<DefineConstants Condition="'$(SecurityMigration)' == 'true'">$(DefineConstants);SECURITY_MIGRATION</DefineConstants>
<DefineConstants Condition="'$(AssemblyAttributeComVisible)' == 'true'">$(DefineConstants);ASSEMBLY_ATTRIBUTE_COM_VISIBLE</DefineConstants>
<DefineConstants Condition="'$(AssemblyAttributeComCompatibleSideBySide)' == 'true'">$(DefineConstants);ASSEMBLY_ATTRIBUTE_COM_COMPATIBLE_SIDEBYSIDE</DefineConstants>
<DefineConstants Condition="'$(TransparentAssembly)' == 'true'">$(DefineConstants);ASSEMBLY_ATTRIBUTE_TRANSPARENT_ASSEMBLY</DefineConstants>
<DefineConstants Condition="'$(AllowPartialTrustedCalls)' == 'true'">$(DefineConstants);ASSEMBLY_ATTRIBUTE_ALLOW_PARTIALLY_TRUSTED_CALLERS</DefineConstants>
<DefineConstants Condition="'$(ConditionalAPTCA_L2)' == 'true'">$(DefineConstants);ASSEMBLY_ATTRIBUTE_CONDITIONAL_APTCA_L2</DefineConstants>
<DefineConstants Condition="'$(AssemblyAttributeSkipVerificationInFullTrust)' == 'true'">$(DefineConstants);ASSEMBLY_ATTRIBUTE_SKIP_VERIFICATION_IN_FULLTRUST</DefineConstants>
<DefineConstants Condition="'$(TargetFrameworkVersion)' == 'v4.5'">$(DefineConstants);ASSEMBLY_ATTRIBUTE_NO_BUILD_NUM_IN_VERSION</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition ="'$(TargetFrameworkIdentifier)' == 'netstandard2.1'">
<DefineConstants>$(DefineConstants);SUPPRESS_SECURITY_RULES;</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition ="'$(TargetFrameworkIdentifier)' == 'netstandard2.0'">
<DefineConstants>$(DefineConstants);SUPPRESS_SECURITY_RULES;</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition ="'$(TargetFrameworkIdentifier)' == 'net45'">
<DefineConstants>$(DefineConstants);SUPPRESS_SECURITY_RULES;</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition ="'$(TargetFrameworkVersion)' == 'v4.5'">
<DefineConstants>$(DefineConstants);SUPPRESS_SECURITY_RULES</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition ="'$(TargetFramework)' == 'net45'">
<DefineConstants>$(DefineConstants);SUPPRESS_SECURITY_RULES</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition="'$(MSBuildProjectExtension)' == '.csproj'">
<NoWarn>$(NoWarn);1699;1570;1572;1573;1591;1607</NoWarn>
<WarningsNotAsErrors>$(WarningsNotAsErrors);1058</WarningsNotAsErrors>
</PropertyGroup>
<Import Project="$(EnlistmentRoot)\tools\CustomMSBuild\Build.props" />
<!-- NuGet packages settings -->
<PropertyGroup>
<SolutionDir>$(EnlistmentRoot)\sln</SolutionDir>
<NugetPack>$(SolutionDir)\packages</NugetPack>
<NuGetToolsPath>$(SolutionDir)\.nuget</NuGetToolsPath>
<NuGetExePath>$(NuGetToolsPath)\NuGet.exe</NuGetExePath>
<PackagesConfig>$(NuGetToolsPath)\packages.config</PackagesConfig>
</PropertyGroup>
<PropertyGroup Condition="'$(TargetFramework)' == 'netstandard1.1'">
<DefineConstants>$(DefineConstants);ASSEMBLY_ATTRIBUTE_ON_NETSTANDARD_11</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition="'$(TargetFramework)' == 'netcoreapp1.0'">
<DefineConstants>$(DefineConstants);ASSEMBLY_ATTRIBUTE_ON_NETCORE_10</DefineConstants>
</PropertyGroup>
<!--StyleCop settings-->
<PropertyGroup>
<StyleCopTargets>$(NuGetPack)\StyleCop.MSBuild.5.0.0\build\StyleCop.MSBuild.Targets</StyleCopTargets>
</PropertyGroup>
<PropertyGroup>
<!--OData has some project files with the same name that are targeted for different framework platforms. Isolate their intermediate output folders-->
<IntermediateOutputPath Condition="$(TargetFrameworkFolderName) != ''">$(IntermediateOutputPath.TrimEnd('\'))\$(TargetFrameworkFolderName)\</IntermediateOutputPath>
<!-- Scrub src/AssemblyInfo/AssemblyRefs.cs and .vb for conflicts and merge with AssemblyInfoCommon files. -->
<DataFxIncPath>$(EnlistmentRoot)\src\AssemblyInfo</DataFxIncPath>
<!-- Define where our AssemblyKeys.cs file which defines public keys for InternalsVisibleTo attributes is -->
<AssemblyKeysCSharpFilePath>$(DataFxIncPath)\AssemblyKeys.cs</AssemblyKeysCSharpFilePath>
<!--Install directory of Visual Studio e.g. C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\-->
<VisualStudioInstallLocation Condition="'$(VisualStudioVersion)' == '12.0'">$(VS120COMNTOOLS)..\IDE\</VisualStudioInstallLocation>
<VisualStudioInstallLocation Condition="'$(VisualStudioVersion)' == '14.0'">$(VS140COMNTOOLS)..\IDE\</VisualStudioInstallLocation>
<VisualStudioInstallLocation Condition="'$(VisualStudioVersion)' == '16.0'">$(VS160COMNTOOLS)..\IDE\</VisualStudioInstallLocation>
</PropertyGroup>
<!--C# uses ';' as a delimiter, but VB uses ',', so we need to swap them-->
<PropertyGroup>
<DefineConstants Condition="'$([System.IO.Path]::GetExtension($(MSBuildProjectFile)))' == '.vbproj'">$(DefineConstants.Replace(";", ","))</DefineConstants>
</PropertyGroup>
</Project>