|
28 | 28 | <TargetNetCoreVersion Condition="$(TargetGroup) == 'netcoreapp' AND $(TargetNetCoreVersion) == ''">$(TF)</TargetNetCoreVersion> |
29 | 29 | <TargetNetFxVersion Condition="$(TargetGroup) == 'netfx' AND $(TargetNetFxVersion) == ''">$(TF)</TargetNetFxVersion> |
30 | 30 | <GenerateNuget Condition="'$(GenerateNuget)' == '' AND '$(IsEnabledWindows)' == 'true'">true</GenerateNuget> |
31 | | - <SqlServerLibProperties>Configuration=$(Configuration);AssemblyVersion=$(SqlServerAssemblyVersion);AssemblyFileVersion=$(SqlServerAssemblyFileVersion);Version=$(SqlServerPackageVersion);</SqlServerLibProperties> |
32 | | - <ProjectProperties>Configuration=$(Configuration);AssemblyFileVersion=$(AssemblyFileVersion);TargetsWindows=$(TargetsWindows);TargetsUnix=$(TargetsUnix);</ProjectProperties> |
| 31 | + |
| 32 | + <CommonProperties>Configuration=$(Configuration);ReferenceType=$(ReferenceType)</CommonProperties> |
| 33 | + <SqlServerLibProperties>$(CommonProperties);AssemblyVersion=$(SqlServerAssemblyVersion);AssemblyFileVersion=$(SqlServerAssemblyFileVersion);Version=$(SqlServerPackageVersion);</SqlServerLibProperties> |
| 34 | + <ProjectProperties>$(CommonProperties);AssemblyFileVersion=$(AssemblyFileVersion);TargetsWindows=$(TargetsWindows);TargetsUnix=$(TargetsUnix);</ProjectProperties> |
33 | 35 | <TestProjectProperties>$(ProjectProperties);BuildForRelease=false;TargetNetCoreVersion=$(TargetNetCoreVersion);TargetNetFxVersion=$(TargetNetFxVersion)</TestProjectProperties> |
34 | 36 | <ResultsDirectory Condition="$(ResultsDirectory) == ''">TestResults</ResultsDirectory> |
| 37 | + |
35 | 38 | <!-- |
36 | 39 | Path to a `dotnet` version like a x86 or any especific versions in addition to a default installed version. |
37 | 40 | This property is empty by default to use the default path of the system's path variable. |
|
52 | 55 |
|
53 | 56 | <!-- Populate all managed projects --> |
54 | 57 | <ItemGroup> |
| 58 | + <Tools Include="tools/GenAPI/Microsoft.DotNet.GenAPI/Microsoft.DotNet.GenAPI.csproj" /> |
55 | 59 | <Abstractions Include="src/Microsoft.Data.SqlClient.Extensions/Abstractions/src/Abstractions.csproj" /> |
56 | 60 | <AbstractionsTest Include="src/Microsoft.Data.SqlClient.Extensions/Abstractions/test/Abstractions.Test.csproj" /> |
| 61 | + <Azure Include="src/Microsoft.Data.SqlClient.Extensions/Azure/src/Azure.csproj" /> |
| 62 | + <AzureTest Include="src/Microsoft.Data.SqlClient.Extensions/Azure/test/Azure.Test.csproj" /> |
57 | 63 | <SqlServerLib Include="**/Microsoft.SqlServer.Server.csproj" /> |
58 | 64 | <NetFxDriver Include="**/netfx/**/Microsoft.Data.SqlClient*.csproj" Condition="'$(IsEnabledWindows)' == 'true'" /> |
59 | 65 | <NetCoreDriver Include="**/netcore/**/Microsoft.Data.SqlClient*.csproj" /> |
|
101 | 107 |
|
102 | 108 | <!-- Abstractions Targets --> |
103 | 109 | <PropertyGroup> |
| 110 | + <AbstractionsProperties>$(CommonProperties)</AbstractionsProperties> |
| 111 | + |
104 | 112 | <!-- |
105 | 113 | If the AbstractionsPackageVersion property was supplied on the |
106 | 114 | command-line, then pass it along to the Abstractions build. Otherwise, |
|
116 | 124 | --> |
117 | 125 | <AbstractionsProperties |
118 | 126 | Condition="'$(AbstractionsPackageVersion)' != ''"> |
119 | | - AbstractionsPackageVersion=$(AbstractionsPackageVersion) |
| 127 | + $(AbstractionsProperties);AbstractionsPackageVersion=$(AbstractionsPackageVersion) |
120 | 128 | </AbstractionsProperties> |
121 | 129 |
|
122 | 130 | <!-- Do the same for the AbstractionsAssemblyFileVersion property. --> |
|
133 | 141 | Properties="$(AbstractionsProperties)" /> |
134 | 142 | </Target> |
135 | 143 |
|
136 | | - <Target Name="BuildAbstractions"> |
| 144 | + <Target Name="BuildAbstractions" DependsOnTargets="RestoreAbstractions"> |
137 | 145 | <MSBuild |
138 | 146 | Projects="@(Abstractions)" |
139 | 147 | Targets="Build;Pack" |
|
147 | 155 | Properties="$(AbstractionsProperties)" /> |
148 | 156 | </Target> |
149 | 157 |
|
150 | | - <Target Name="BuildAbstractionsTest"> |
| 158 | + <Target Name="BuildAbstractionsTest" DependsOnTargets="RestoreAbstractionsTest"> |
151 | 159 | <MSBuild |
152 | 160 | Projects="@(AbstractionsTest)" |
153 | 161 | Targets="Build" |
154 | 162 | Properties="$(AbstractionsProperties)" /> |
155 | 163 | </Target> |
156 | 164 |
|
| 165 | + <!-- Azure Targets --> |
| 166 | + <PropertyGroup> |
| 167 | + <AzureProperties>$(CommonProperties)</AzureProperties> |
| 168 | + |
| 169 | + <!-- |
| 170 | + If the AzurePackageVersion property was supplied on the command-line, then |
| 171 | + pass it along to the Azure build. Otherwise, omit it entirely to avoid it |
| 172 | + expanding as empty here and thus overriding the default behaviour in the |
| 173 | + Azure project. Command-line properties take precedence over project |
| 174 | + defaults, even if their value is empty. For example: |
| 175 | +
|
| 176 | + dotnet build -p:AzurePackageVersion= |
| 177 | +
|
| 178 | + That results in $(AzurePackageVersion) being defined as empty, and cannot |
| 179 | + be overridden by the project. |
| 180 | + --> |
| 181 | + <AzureProperties |
| 182 | + Condition="'$(AzurePackageVersion)' != ''"> |
| 183 | + $(AzureProperties);AzurePackageVersion=$(AzurePackageVersion) |
| 184 | + </AzureProperties> |
| 185 | + |
| 186 | + <!-- Do the same for the AzureAssemblyFileVersion property. --> |
| 187 | + <AzureProperties |
| 188 | + Condition="'$(AzureAssemblyFileVersion)' != ''"> |
| 189 | + $(AzureProperties);AzureAssemblyFileVersion=$(AzureAssemblyFileVersion) |
| 190 | + </AzureProperties> |
| 191 | + </PropertyGroup> |
| 192 | + |
| 193 | + <Target Name="RestoreAzure"> |
| 194 | + <MSBuild |
| 195 | + Projects="@(Azure)" |
| 196 | + Targets="Restore" |
| 197 | + Properties="$(AzureProperties)" /> |
| 198 | + </Target> |
| 199 | + |
| 200 | + <Target Name="BuildAzure" DependsOnTargets="RestoreAzure"> |
| 201 | + <MSBuild |
| 202 | + Projects="@(Azure)" |
| 203 | + Targets="Build;Pack" |
| 204 | + Properties="$(AzureProperties)" /> |
| 205 | + </Target> |
| 206 | + |
| 207 | + <Target Name="RestoreAzureTest"> |
| 208 | + <MSBuild |
| 209 | + Projects="@(AzureTest)" |
| 210 | + Targets="Restore" |
| 211 | + Properties="$(AzureProperties)" /> |
| 212 | + </Target> |
| 213 | + |
| 214 | + <Target Name="BuildAzureTest" DependsOnTargets="RestoreAzureTest"> |
| 215 | + <MSBuild |
| 216 | + Projects="@(AzureTest)" |
| 217 | + Targets="Build" |
| 218 | + Properties="$(AzureProperties)" /> |
| 219 | + </Target> |
| 220 | + |
157 | 221 | <!-- Other Targets --> |
158 | 222 | <Target Name="RestoreSqlServerLib"> |
159 | | - <MSBuild Projects="@(SqlServerLib)" Targets="restore" /> |
| 223 | + <MSBuild Projects="@(SqlServerLib)" Targets="restore" Properties="$(SqlServerLibProperties)" /> |
160 | 224 | </Target> |
161 | 225 |
|
162 | 226 | <Target |
163 | 227 | Name="RestoreNetCore" |
164 | 228 | DependsOnTargets="RestoreSqlServerLib;RestoreAbstractions"> |
165 | | - <MSBuild Projects="@(NetCoreDriver)" Targets="restore" /> |
| 229 | + <MSBuild Projects="@(NetCoreDriver)" Targets="restore" Properties="$(ProjectProperties)" /> |
166 | 230 | </Target> |
167 | 231 |
|
168 | 232 | <Target Name="RestoreTestsNetCore" DependsOnTargets="RestoreNetCore"> |
|
175 | 239 | Name="RestoreNetFx" |
176 | 240 | DependsOnTargets="RestoreSqlServerLib;RestoreAbstractions" |
177 | 241 | Condition="'$(IsEnabledWindows)' == 'true'"> |
178 | | - <MSBuild Projects="@(NetFxDriver)" Targets="restore" /> |
| 242 | + <MSBuild Projects="@(NetFxDriver)" Targets="restore" Properties="$(ProjectProperties)" /> |
179 | 243 | </Target> |
180 | 244 |
|
181 | 245 | <Target |
|
187 | 251 | <MSBuild Projects="@(UnitTests)" Targets="restore" Properties="$(TestProjectProperties)"/> |
188 | 252 | </Target> |
189 | 253 |
|
190 | | - <Target Name="BuildTools" Condition="'$(BuildTools)' == 'true'"> |
191 | | - <PropertyGroup> |
192 | | - <DotnetBuildCmd>dotnet build -c Release -p:ReferenceType=$(ReferenceType)</DotnetBuildCmd> |
193 | | - </PropertyGroup> |
194 | | - <Exec Command="$(DotnetBuildCmd)" WorkingDirectory="$(GenAPISrcDir)Microsoft.DotNet.GenAPI\" /> |
| 254 | + <Target Name="RestoreTools" Condition="'$(BuildTools)' == 'true'"> |
| 255 | + <MSBuild Projects="@(Tools)" Targets="restore" Properties="$(CommonProperties)" /> |
| 256 | + </Target> |
| 257 | + |
| 258 | + <Target Name="BuildTools" DependsOnTargets="RestoreTools" Condition="'$(BuildTools)' == 'true'"> |
| 259 | + <MSBuild Projects="@(Tools)" Properties="$(CommonProperties)" /> |
195 | 260 | </Target> |
196 | 261 |
|
197 | 262 | <Target |
|
206 | 271 | </Target> |
207 | 272 |
|
208 | 273 | <Target Name="BuildSqlServerLib" DependsOnTargets="RestoreSqlServerLib"> |
209 | | - <Message Text=">>> Building SqlServerLib [$(CI);$(SqlServerLibProperties);Platform=AnyCPU;ReferenceType=$(ReferenceType);] ..." Condition="!$(ReferenceType.Contains('Package'))" /> |
| 274 | + <Message Text=">>> Building SqlServerLib [$(CI);$(SqlServerLibProperties);Platform=AnyCPU] ..." Condition="!$(ReferenceType.Contains('Package'))" /> |
210 | 275 | <MSBuild Projects="@(SqlServerLib)" Properties="$(CI);$(SqlServerLibProperties);Platform=AnyCPU;" RemoveProperties="TargetsWindows;TargetsUnix;" Condition="!$(ReferenceType.Contains('Package'))" /> |
211 | 276 |
|
212 | 277 | <!-- Only build platform specific builds for Package reference types --> |
213 | | - <Message Text=">>> Building SqlServerLib [$(CI);$(SqlServerLibProperties);Platform=$(Platform);ReferenceType=$(ReferenceType);] ..." Condition="$(ReferenceType.Contains('Package'))" /> |
| 278 | + <Message Text=">>> Building SqlServerLib [$(CI);$(SqlServerLibProperties);Platform=$(Platform)] ..." Condition="$(ReferenceType.Contains('Package'))" /> |
214 | 279 | <MSBuild Projects="@(SqlServerLib)" Properties="$(CI);$(SqlServerLibProperties);Platform=$(Platform);" Condition="$(ReferenceType.Contains('Package'))" /> |
215 | 280 | </Target> |
216 | 281 |
|
|
238 | 303 | Name="BuildUnitTestsNetCore" |
239 | 304 | DependsOnTargets="RestoreTestsNetCore;BuildNetCore" |
240 | 305 | Condition="$(ReferenceType.Contains('Project'))"> |
241 | | - <Message Text=">>> Building UnitTestsNetCore [TestTargetOS=$(TestOS)netcoreapp;$(TestProjectProperties);Platform=AnyCPU;ReferenceType=$(ReferenceType);] ..." Condition="!$(ReferenceType.Contains('Package'))"/> |
| 306 | + <Message Text=">>> Building UnitTestsNetCore [TestTargetOS=$(TestOS)netcoreapp;$(TestProjectProperties);Platform=AnyCPU] ..." Condition="!$(ReferenceType.Contains('Package'))"/> |
242 | 307 | <MSBuild Projects="@(UnitTests)" Properties="TestTargetOS=$(TestOS)netcoreapp;$(TestProjectProperties);Platform=AnyCPU;" Condition="!$(ReferenceType.Contains('Package'))" /> |
243 | 308 | </Target> |
244 | 309 |
|
245 | 310 | <Target |
246 | 311 | Name="BuildFunctionalTestsNetCore" |
247 | 312 | DependsOnTargets="RestoreTestsNetCore;BuildNetCore;BuildAKVNetCore"> |
248 | | - <Message Text=">>> Building FunctionalTestsNetCore [TestTargetOS=$(TestOS)netcoreapp;$(TestProjectProperties);Platform=AnyCPU;ReferenceType=$(ReferenceType);] ..." Condition="!$(ReferenceType.Contains('Package'))" /> |
| 313 | + <Message Text=">>> Building FunctionalTestsNetCore [TestTargetOS=$(TestOS)netcoreapp;$(TestProjectProperties);Platform=AnyCPU] ..." Condition="!$(ReferenceType.Contains('Package'))" /> |
249 | 314 | <MSBuild Projects="@(FunctionalTests)" Properties="TestTargetOS=$(TestOS)netcoreapp;$(TestProjectProperties);Platform=AnyCPU;" Condition="!$(ReferenceType.Contains('Package'))" /> |
250 | 315 |
|
251 | 316 | <!-- Only build platform specific builds for Package reference types --> |
252 | | - <Message Text=">>> Building FunctionalTestsNetCore [TestTargetOS=$(TestOS)netcoreapp;$(TestProjectProperties);Platform=$(Platform);ReferenceType=$(ReferenceType);] ..." Condition="$(ReferenceType.Contains('Package'))" /> |
| 317 | + <Message Text=">>> Building FunctionalTestsNetCore [TestTargetOS=$(TestOS)netcoreapp;$(TestProjectProperties);Platform=$(Platform)] ..." Condition="$(ReferenceType.Contains('Package'))" /> |
253 | 318 | <MSBuild Projects="@(FunctionalTests)" Properties="TestTargetOS=$(TestOS)netcoreapp;$(TestProjectProperties);Platform=$(Platform);" Condition="$(ReferenceType.Contains('Package'))" /> |
254 | 319 | </Target> |
255 | 320 |
|
256 | 321 | <Target |
257 | 322 | Name="BuildManualTestsNetCore" |
258 | 323 | DependsOnTargets="RestoreTestsNetCore;BuildNetCore;BuildAKVNetCore"> |
259 | | - <Message Text=">>> Building ManualTestsNetCore [TestTargetOS=$(TestOS)netcoreapp;$(TestProjectProperties);Platform=AnyCPU;ReferenceType=$(ReferenceType);] ..." Condition="!$(ReferenceType.Contains('Package'))" /> |
| 324 | + <Message Text=">>> Building ManualTestsNetCore [TestTargetOS=$(TestOS)netcoreapp;$(TestProjectProperties);Platform=AnyCPU] ..." Condition="!$(ReferenceType.Contains('Package'))" /> |
260 | 325 | <MSBuild Projects="@(ManualTests)" Properties="TestTargetOS=$(TestOS)netcoreapp;$(TestProjectProperties);Platform=AnyCPU;" Condition="!$(ReferenceType.Contains('Package'))" /> |
261 | 326 |
|
262 | 327 | <!-- Only build platform specific builds for Package reference types --> |
263 | | - <Message Text=">>> Building ManualTestsNetCore [TestTargetOS=$(TestOS)netcoreapp;$(TestProjectProperties);Platform=$(Platform);ReferenceType=$(ReferenceType);] ..." Condition="$(ReferenceType.Contains('Package'))" /> |
| 328 | + <Message Text=">>> Building ManualTestsNetCore [TestTargetOS=$(TestOS)netcoreapp;$(TestProjectProperties);Platform=$(Platform)] ..." Condition="$(ReferenceType.Contains('Package'))" /> |
264 | 329 | <MSBuild Projects="@(ManualTests)" Properties="TestTargetOS=$(TestOS)netcoreapp;$(TestProjectProperties);Platform=$(Platform);" Condition="$(ReferenceType.Contains('Package'))" /> |
265 | 330 | </Target> |
266 | 331 |
|
|
0 commit comments