This repository has been archived by the owner on Dec 1, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Directory.Build.props
124 lines (107 loc) · 9.06 KB
/
Directory.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
113
114
115
116
117
118
119
120
121
122
123
124
<Project>
<PropertyGroup>
<Authors>Michael W. Powell</Authors>
<Company>Kingdom Software</Company>
<Product>Kingdom.OrTools</Product>
<Copyright>Copyright © 2015-2019</Copyright>
<!--<Copyright>Copyright (c) 2015-2019</Copyright>-->
<LangVersion>7.3</LangVersion>
<NoWarn>$(NoWarn);NU1603</NoWarn>
</PropertyGroup>
<PropertyGroup Condition="'$(Platform)' == 'AnyCPU'">
<WarningLevel>2</WarningLevel>
</PropertyGroup>
<PropertyGroup>
<PackageProjectUrl>http://github.com/mwpowellhtx/Kingdom.OrTools</PackageProjectUrl>
</PropertyGroup>
<PropertyGroup>
<RootNamespace>Kingdom.OrTools</RootNamespace>
<BumpAssemblyVersionsVersion>1.4.0</BumpAssemblyVersionsVersion>
</PropertyGroup>
<PropertyGroup>
<!-- We can probably most likely track the Google version numbers according to their
Major.Minor only and not worry about the Build or Patch numbers themselves. Additionally,
except in places where we must adopt the Protobuf dependency directly, we could otherwise
leave that out as well, as this depedency tracks seamlessly with the OrTools, or its runtime
surrogate, dependencies. -->
<GoogleProtobufVersions>[3.10,4)</GoogleProtobufVersions>
<GoogleProtobufVersion>3.10.0</GoogleProtobufVersion>
<!-- Well, I thought we could get away with the Major.Minor here, but we kind of do need to
know the full version in order to know the precise path of the Protocol Buffer specification
files in which to embed. The danger here is that this is a Greater Than Or Equal To (>=),
right? So we may need to be more precise in our dependencies, but we will start here, and
cross future bridges should they arise when they arise. -->
<GoogleOrToolsDependency>Google.OrTools</GoogleOrToolsDependency>
<GoogleOrToolsVersions>[7.4,8)</GoogleOrToolsVersions>
<GoogleOrToolsVersion>7.4.7247</GoogleOrToolsVersion>
</PropertyGroup>
<PropertyGroup>
<MicrosoftBuildVersions>[15.9.20,16)</MicrosoftBuildVersions>
<MicrosoftBuildVersion>15.9.20</MicrosoftBuildVersion>
<MicrosoftCodeAnalysisVersions>[2.10.0,3)</MicrosoftCodeAnalysisVersions>
<MicrosoftCodeAnalysisVersion>2.10.0</MicrosoftCodeAnalysisVersion>
<MicrosoftCodeAnalysisCSharpVersions>[2.10.0,3)</MicrosoftCodeAnalysisCSharpVersions>
<MicrosoftCodeAnalysisCSharpVersion>2.10.0</MicrosoftCodeAnalysisCSharpVersion>
</PropertyGroup>
<PropertyGroup>
<ValidationVersions>[2.4.22,3)</ValidationVersions>
<ValidationVersion>2.4.22</ValidationVersion>
</PropertyGroup>
<ImportGroup>
<!-- Pathing is always relative to the $(ProjectDir). -->
<Import Project="Licensing.props" />
</ImportGroup>
<ItemGroup>
<PackageReference Include="BumpAssemblyVersions" Version="$(BumpAssemblyVersionsVersion)">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
</ItemGroup>
<!-- ReSharper disable UnknownProperty -->
<ItemGroup Condition="'$(ReleaseVersionStrategy)' == '' And Exists('..\packages\BumpAssemblyVersions\$(BumpAssemblyVersionsVersion)\build\BumpAssemblyVersions.targets')">
<BumpVersionSpec Include="Version" BuildProviderTemplate="Increment" Condition="'$(Configuration)' == 'Release'" />
<BumpVersionSpec Include="AssemblyVersion" BuildProviderTemplate="Increment" Condition="'$(Configuration)' == 'Release'" />
<BumpVersionSpec Include="FileVersion" BuildProviderTemplate="Increment" Condition="'$(Configuration)' == 'Release'" />
<BumpVersionSpec Include="PackageVersion" BuildProviderTemplate="Increment" Condition="'$(Configuration)' == 'Release'" />
</ItemGroup>
<ItemGroup Condition="'$(ReleaseVersionStrategy)' == 'patch' And Exists('..\packages\BumpAssemblyVersions\$(BumpAssemblyVersionsVersion)\build\BumpAssemblyVersions.targets')">
<BumpVersionSpec Include="Version" PatchProviderTemplate="Increment" BuildProviderTemplate="SecondsSinceMidnight" Condition="'$(Configuration)' == 'Release'" />
<BumpVersionSpec Include="AssemblyVersion" PatchProviderTemplate="Increment" BuildProviderTemplate="SecondsSinceMidnight" Condition="'$(Configuration)' == 'Release'" />
<BumpVersionSpec Include="FileVersion" PatchProviderTemplate="Increment" BuildProviderTemplate="SecondsSinceMidnight" Condition="'$(Configuration)' == 'Release'" />
<BumpVersionSpec Include="PackageVersion" PatchProviderTemplate="Increment" BuildProviderTemplate="SecondsSinceMidnight" Condition="'$(Configuration)' == 'Release'" />
</ItemGroup>
<ItemGroup Condition="'$(ReleaseVersionStrategy)' == 'minor' And Exists('..\packages\BumpAssemblyVersions\$(BumpAssemblyVersionsVersion)\build\BumpAssemblyVersions.targets')">
<BumpVersionSpec Include="Version" MinorProviderTemplate="Increment" PatchProviderTemplate="Increment" PatchProviderTemplateMayReset="true" BuildProviderTemplate="SecondsSinceMidnight" Condition="'$(Configuration)' == 'Release'" />
<BumpVersionSpec Include="AssemblyVersion" MinorProviderTemplate="Increment" PatchProviderTemplate="Increment" PatchProviderTemplateMayReset="true" BuildProviderTemplate="SecondsSinceMidnight" Condition="'$(Configuration)' == 'Release'" />
<BumpVersionSpec Include="FileVersion" MinorProviderTemplate="Increment" PatchProviderTemplate="Increment" PatchProviderTemplateMayReset="true" BuildProviderTemplate="SecondsSinceMidnight" Condition="'$(Configuration)' == 'Release'" />
<BumpVersionSpec Include="PackageVersion" MinorProviderTemplate="Increment" PatchProviderTemplate="Increment" PatchProviderTemplateMayReset="true" BuildProviderTemplate="SecondsSinceMidnight" Condition="'$(Configuration)' == 'Release'" />
</ItemGroup>
<!-- We want a consistent Debug Configuration versioning strategy.
See individual Solution Directory Build properties for Release Configuration strategies. -->
<ItemGroup Condition="'$(DebugVersionStrategy)' == '' And Exists('..\packages\BumpAssemblyVersions\$(BumpAssemblyVersionsVersion)\build\BumpAssemblyVersions.targets')">
<BumpVersionSpec Include="Version" BuildProviderTemplate="Increment" Condition="'$(Configuration)' == 'Debug'" />
<BumpVersionSpec Include="AssemblyVersion" BuildProviderTemplate="Increment" Condition="'$(Configuration)' == 'Debug'" />
<BumpVersionSpec Include="FileVersion" BuildProviderTemplate="Increment" Condition="'$(Configuration)' == 'Debug'" />
<BumpVersionSpec Include="PackageVersion" BuildProviderTemplate="Increment" Condition="'$(Configuration)' == 'Debug'" />
</ItemGroup>
<ItemGroup Condition="'$(DebugVersionStrategy)' == 'patch' And Exists('..\packages\BumpAssemblyVersions\$(BumpAssemblyVersionsVersion)\build\BumpAssemblyVersions.targets')">
<BumpVersionSpec Include="Version" PatchProviderTemplate="Increment" BuildProviderTemplate="SecondsSinceMidnight" Condition="'$(Configuration)' == 'Debug'" />
<BumpVersionSpec Include="AssemblyVersion" PatchProviderTemplate="Increment" BuildProviderTemplate="SecondsSinceMidnight" Condition="'$(Configuration)' == 'Debug'" />
<BumpVersionSpec Include="FileVersion" PatchProviderTemplate="Increment" BuildProviderTemplate="SecondsSinceMidnight" Condition="'$(Configuration)' == 'Debug'" />
<BumpVersionSpec Include="PackageVersion" PatchProviderTemplate="Increment" BuildProviderTemplate="SecondsSinceMidnight" Condition="'$(Configuration)' == 'Debug'" />
</ItemGroup>
<ItemGroup Condition="'$(DebugVersionStrategy)' == 'minor' And Exists('..\packages\BumpAssemblyVersions\$(BumpAssemblyVersionsVersion)\build\BumpAssemblyVersions.targets')">
<BumpVersionSpec Include="Version" MinorProviderTemplate="Increment" PatchProviderTemplate="Increment" PatchProviderTemplateMayReset="true" BuildProviderTemplate="Increment" Condition="'$(Configuration)' == 'Debug'" />
<BumpVersionSpec Include="AssemblyVersion" MinorProviderTemplate="Increment" PatchProviderTemplate="Increment" PatchProviderTemplateMayReset="true" BuildProviderTemplate="Increment" Condition="'$(Configuration)' == 'Debug'" />
<BumpVersionSpec Include="FileVersion" MinorProviderTemplate="Increment" PatchProviderTemplate="Increment" PatchProviderTemplateMayReset="true" BuildProviderTemplate="Increment" Condition="'$(Configuration)' == 'Debug'" />
<BumpVersionSpec Include="PackageVersion" MinorProviderTemplate="Increment" PatchProviderTemplate="Increment" PatchProviderTemplateMayReset="true" BuildProviderTemplate="Increment" Condition="'$(Configuration)' == 'Debug'" />
</ItemGroup>
<!-- ReSharper restore UnknownProperty -->
<!-- ReSharper disable UnknownProperty -->
<Target Name="PreBuild" BeforeTargets="PreBuildEvent">
<!-- Depending on `PackageOutputPath´ is still the right thing to do, as is `PackageId´.
Where we run into difficulty is when we try to deliver into a single location, especially for similarly named packages. -->
<Exec Command="if exist "$(PackageOutputPath)$(PackageId).*.nupkg" del /f "$(PackageOutputPath)$(PackageId).*.nupkg"" />
</Target>
<!-- ReSharper restore UnknownProperty -->
</Project>