Imported Upstream version 5.2.0.175

Former-commit-id: bb0468d0f257ff100aa895eb5fe583fb5dfbf900
This commit is contained in:
Xamarin Public Jenkins (auto-signing)
2017-06-07 13:16:24 +00:00
parent 4bdbaf4a88
commit 966bba02bb
8776 changed files with 346420 additions and 149650 deletions

View File

@@ -35,6 +35,7 @@
<ToolsDir Condition="'$(UseToolRuntimeForToolsDir)'=='true'">$(ToolRuntimePath)</ToolsDir>
<ToolsDir Condition="'$(ToolsDir)'==''">$(ProjectDir)Tools/</ToolsDir>
<ToolRuntimePath Condition="'$(ToolRuntimePath)'==''">$(ToolsDir)</ToolRuntimePath>
<IlasmToolPath>$(ToolsDir)ilasm/ilasm</IlasmToolPath>
<!-- needs to be defined all the time to avoid indexing every file from the root -->
<GeneratedProjectJsonDir>$(ObjDir)generated</GeneratedProjectJsonDir>
@@ -47,47 +48,34 @@
<Import Project="$(ToolRuntimePath)BuildVersion.targets" Condition="Exists('$(ToolRuntimePath)BuildVersion.targets')" />
<PropertyGroup>
<GenFacadesArgs>-ignoreBuildAndRevisionMismatch</GenFacadesArgs>
</PropertyGroup>
<!-- Import Build tools common props file where repo-independent properties are found -->
<Import Project="$(ToolsDir)Build.Common.props" Condition="Exists('$(ToolsDir)Build.Common.props')" />
<PropertyGroup>
<BuildToolsTargets45 Condition="'$(OsEnvironment)'=='Windows_NT'">true</BuildToolsTargets45>
<BuildToolsTargetsDesktop Condition="'$(RunningOnCore)' != 'true'">true</BuildToolsTargetsDesktop>
</PropertyGroup>
<Import Project="$(MSBuildThisFileDirectory)targetingpacks.props" />
<!-- Enable the analyzers for this repo -->
<PropertyGroup>
<EnableDotnetAnalyzers Condition="'$(EnableDotnetAnalyzers)'==''">true</EnableDotnetAnalyzers>
</PropertyGroup>
<!-- Provides package dependency version properties and verification/auto-upgrade configuration -->
<Import Project="$(MSBuildThisFileDirectory)dependencies.props" />
<!-- Explicitly setting
- SupportsUWP to true when TargetGroup is uap101*. This will enable the correct pinvoke checker to be picked
- BlockReflectionAttribute to true. This will enable injecting BlockReflectionAttribute.cs into the compile target.
TODO: Both of these properties are being set in buildtools targets, however they need to be updated to reflect uap101 changes.
-->
<PropertyGroup Condition="'$(TargetGroup)' == 'uap101' or '$(TargetGroup)' == 'uap101aot'">
<SupportsUWP>true</SupportsUWP>
<BlockReflectionAttribute>true</BlockReflectionAttribute>
<!-- Default properties for CI builds -->
<PropertyGroup Condition="'$(IsCIBuild)' == 'true'">
<WithoutCategories>IgnoreForCI</WithoutCategories>
<EnableDumpling>true</EnableDumpling>
<CrashDumpFolder Condition="'$(RunningOnUnix)' != 'true'">%TMP%\CoreRunCrashDumps</CrashDumpFolder>
</PropertyGroup>
<!-- Import packaging props -->
<Import Project="$(MSBuildThisFileDirectory)Packaging.props"/>
<!-- Provides package dependency version properties and verification/auto-upgrade configuration -->
<Import Project="$(MSBuildThisFileDirectory)dependencies.props" />
<!-- list of nuget package sources passed to dnu -->
<ItemGroup Condition="'$(ExcludeInternetFeeds)' != 'true'">
<!-- Example to consume local CoreCLR package:
/t:BatchRestorePackages /p:OverridePackageSource=C:\coreclr\bin\Product\Windows_NT.x64.Debug\.nuget\pkg
/p:OverridePackageSource=C:\coreclr\bin\Product\Windows_NT.x64.Debug\.nuget\pkg
-->
<DnuSourceList Include="$(OverridePackageSource)" />
<DnuSourceList Condition="'$(BuildTestsAgainstPackages)' == 'true'" Include="$(PackagesDrops)" />
<!-- Need to escape double forward slash (%2F) or MSBuild will normalize to one slash on Unix. -->
<!-- Including buildtools to pull in TestSuite packages and repackaged xunit dependencies-->
<DnuSourceList Include="https:%2F%2Fdotnet.myget.org/F/dotnet-buildtools/api/v3/index.json" />
@@ -95,18 +83,11 @@
<DnuSourceList Include="https:%2F%2Fapi.nuget.org/v3/index.json" />
</ItemGroup>
<!-- This is the directory where we dynamically generate project.json's for our test build package dependencies -->
<PropertyGroup Condition="'$(BuildTestsAgainstPackages)' == 'true'">
<BuildTestsAgainstPackagesIdentityRegex>$(CoreFxVersionsIdentityRegex)</BuildTestsAgainstPackagesIdentityRegex>
<SkipVerifyPackageVersions>true</SkipVerifyPackageVersions>
</PropertyGroup>
<!-- list of directories to perform batch restore -->
<ItemGroup>
<DnuRestoreDir Include="$(MSBuildThisFileDirectory)src" />
<DnuRestoreDir Include="$(MSBuildThisFileDirectory)pkg" />
<DnuRestoreDir Include="$(MSBuildThisFileDirectory)layout" />
<DnuRestoreDir Condition="'$(BuildTestsAgainstPackages)' == 'true'" Include="$(GeneratedProjectJsonDir)" />
</ItemGroup>
<PropertyGroup>
@@ -150,7 +131,7 @@
See Documentation/coding-guidelines/project-guidelines.md for more details on our configurations.
-->
<TargetGroup Condition="'$(TargetGroup)' == ''">netcoreapp</TargetGroup>
<OSGroup Condition="'$(OSGroup)' == ''">$(OSEnvironment)</OSGroup>
<OSGroup Condition="'$(OSGroup)' == ''">$(DefaultOSGroup)</OSGroup>
<ConfigurationGroup Condition="'$(ConfigurationGroup)' == ''">Debug</ConfigurationGroup>
<ArchGroup Condition="'$(ArchGroup)' == ''">x64</ArchGroup>
@@ -158,12 +139,26 @@
<BuildConfiguration Condition="'$(BuildConfiguration)' == ''">$(TargetGroup)-$(OSGroup)-$(ConfigurationGroup)-$(ArchGroup)</BuildConfiguration>
<BuildConfigurationImportFile>$(ToolsDir)/configuration/configuration.props</BuildConfigurationImportFile>
<!-- if PKGPROJ doesn't set BuildConfigurations, make sure it only builds for TargetGroup=package or BuildAllConfigurations -->
<BuildConfigurations Condition="'$(MSBuildProjectExtension)' == '.pkgproj' AND '$(BuildConfigurations)' == ''">package</BuildConfigurations>
<!-- Need to try and keep the same logic as the native builds as we need this for packaging -->
<NativeBinDir>$(BinDir)$(OSGroup).$(ArchGroup).$(ConfigurationGroup)/native</NativeBinDir>
</PropertyGroup>
<Import Project="$(BuildConfigurationImportFile)" Condition="Exists('$(BuildConfigurationImportFile)')" />
<!-- Import packaging props -->
<Import Project="$(MSBuildThisFileDirectory)Packaging.props"/>
<!-- set properties for each vertical -->
<PropertyGroup>
<BuildingNETCoreAppVertical Condition="'$(BuildingNETCoreAppVertical)' == '' AND ('$(_bc_TargetGroup)'=='netcoreapp' OR '$(BuildAllConfigurations)' == 'true')">true</BuildingNETCoreAppVertical>
<BuildingNETFxVertical Condition="'$(BuildingNETCoreAppVertical)' == '' AND ('$(_bc_TargetGroup)'=='netfx' OR '$(BuildAllConfigurations)' == 'true')">true</BuildingNETFxVertical>
<BuildingUAPVertical Condition="'$(BuildingUAPVertical)' == '' AND ('$(_bc_TargetGroup)'=='uap' OR '$(BuildAllConfigurations)' == 'true')">true</BuildingUAPVertical>
<BuildingUAPAOTVertical Condition="'$(BuildingUAPAOTVertical)' == '' AND ('$(_bc_TargetGroup)'=='uapaot' OR '$(BuildAllConfigurations)' == 'true')">true</BuildingUAPAOTVertical>
</PropertyGroup>
<!-- Set up Default symbol and optimization for Configuration -->
<Choose>
<When Condition="'$(ConfigurationGroup)'=='Debug'">
@@ -184,14 +179,6 @@
</When>
</Choose>
<!-- Default Test platform to deploy the netstandard compiled tests to -->
<PropertyGroup>
<DefaultTestTFM>netcoreapp1.1</DefaultTestTFM>
<TestTFM Condition="'$(TestTFM)'==''">$(DefaultTestTFM)</TestTFM>
<!-- we default FilterToTestTFM to DefaultTestTFM if it is not explicity defined -->
<FilterToTestTFM Condition="'$(FilterToTestTFM)'==''">$(DefaultTestTFM)</FilterToTestTFM>
</PropertyGroup>
<PropertyGroup>
<IsRedistAssembly Condition="'$(IsRedistAssembly)'=='' AND ($(MSBuildProjectFullPath.Contains('\redist\')) OR $(MSBuildProjectFullPath.Contains('/redist/')))">true</IsRedistAssembly>
</PropertyGroup>
@@ -199,7 +186,7 @@
<NuGetRuntimeIdentifier Condition="'$(TargetGroup)' == 'netcore50'">win8</NuGetRuntimeIdentifier>
<NuGetRuntimeIdentifier Condition="'$(TargetGroup)' == 'netcore50aot'">win8-aot</NuGetRuntimeIdentifier>
<!-- workaround Dev14 issue with nuget targets -->
<!-- workaround Dev14 issue with nuget targets, misspelling is intentional to align with Dev14 RTM targets -->
<RuntimeIndentifier>$(NuGetRuntimeIdentifier)</RuntimeIndentifier>
</PropertyGroup>
@@ -235,8 +222,6 @@
<PropertyGroup>
<OSPlatformConfig>$(OSGroup).$(Platform).$(ConfigurationGroup)</OSPlatformConfig>
<TargetOutputRelPath Condition="'$(TargetGroup)'!=''">$(TargetGroup)/</TargetOutputRelPath>
<TestTargetOutputRelPath Condition="'$(TestTargetOutputRelPath)'=='' And '$(TargetGroup)'!='' And '$(TestTFM)'!=''">$(TargetGroup).$(TestTFM)/</TestTargetOutputRelPath>
<TestTargetOutputRelPath Condition="'$(TestTargetOutputRelPath)'=='' And '$(TargetGroup)'=='' And '$(TestTFM)'!=''">default.$(TestTFM)/</TestTargetOutputRelPath>
<BaseOutputPath Condition="'$(BaseOutputPath)'==''">$(BinDir)</BaseOutputPath>
@@ -249,18 +234,40 @@
<RuntimePath Condition="'$(RuntimePath)' == ''">$(BinDir)runtime/$(BuildConfiguration)/</RuntimePath>
<RefRootPath>$(BinDir)ref/</RefRootPath>
<BuildConfigurationRefPath>$(RefRootPath)$(_bc_TargetGroup)/</BuildConfigurationRefPath>
<BuildConfigurationRefPath Condition="$(_bc_TargetGroup.EndsWith('aot'))">$(RefRootPath)$(_bc_TargetGroup.TrimEnd('aot'))/</BuildConfigurationRefPath>
<RefPath>$(RefRootPath)$(TargetGroup)/</RefPath>
<!-- tests don't yet set appropriate configurations -->
<RefPath Condition="'$(IsTestProject)' == 'true'">$(BuildConfigurationRefPath)</RefPath>
<RefPath Condition="$(TargetGroup.EndsWith('aot'))">$(RefRootPath)$(TargetGroup.TrimEnd('aot'))/</RefPath>
<NetStandardRefPath>$(RefRootPath)netstandard/</NetStandardRefPath>
<NetFxRefPath>$(RefRootPath)netfx/</NetFxRefPath>
<!-- project file to use when resolving ReferenceFromRuntime items -->
<RuntimeProjectFile Condition="'$(RuntimeProjectFile)' == ''">$(ProjectDir)\external\runtime\runtime.depproj</RuntimeProjectFile>
<!-- Paths to binplace package content -->
<NETCoreAppPackageRefPath>$(BinDir)netcoreapp\pkg\ref</NETCoreAppPackageRefPath>
<NETCoreAppPackageRuntimePath>$(BinDir)netcoreapp\pkg\lib</NETCoreAppPackageRuntimePath>
<NETCoreAppPackageRefPath>$(BinDir)pkg\netcoreapp\ref</NETCoreAppPackageRefPath>
<NETCoreAppPackageRuntimePath>$(BinDir)pkg\netcoreapp\lib</NETCoreAppPackageRuntimePath>
<UAPPackageRefPath>$(BinDir)pkg\uap\ref</UAPPackageRefPath>
<UAPPackageRuntimePath>$(BinDir)pkg\uap\lib</UAPPackageRuntimePath>
<UAPAOTPackageRuntimePath>$(BinDir)pkg\uapaot\lib</UAPAOTPackageRuntimePath>
<!-- We add extra binplacing for the test shared framework until we can get hardlinking with the runtime directory working on all platforms -->
<BinPlaceTestSharedFramework Condition="'$(_bc_TargetGroup)' == 'netcoreapp'">true</BinPlaceTestSharedFramework>
<BinPlaceILCInputFolder Condition="'$(_bc_TargetGroup)' == 'uapaot' And '$(BinPlaceILCInputFolder)' == ''">true</BinPlaceILCInputFolder>
<BinPlaceUAPFramework Condition="'$(_bc_TargetGroup)' == 'uap'">true</BinPlaceUAPFramework>
<NETCoreAppTestSharedFxVersion>9.9.9</NETCoreAppTestSharedFxVersion>
<NETCoreAppTestRootPath>$(BinDir)testhost/$(BuildConfiguration)/</NETCoreAppTestRootPath>
<NETCoreAppTestHostFxrPath>$(NETCoreAppTestRootPath)host/fxr/$(NETCoreAppTestSharedFxVersion)/</NETCoreAppTestHostFxrPath>
<NETCoreAppTestSharedFrameworkPath>$(NETCoreAppTestRootPath)shared/Microsoft.NETCore.App/$(NETCoreAppTestSharedFxVersion)/</NETCoreAppTestSharedFrameworkPath>
<ILCFXInputFolder>$(NETCoreAppTestRootPath)ILCInputFolder</ILCFXInputFolder>
<!-- For UAP, we'll produce the layout and hard-link this into each test's directory -->
<UAPTestSharedFrameworkPath>$(NETCoreAppTestRootPath)UAPLayout</UAPTestSharedFrameworkPath>
<!-- Constructed shared fx path for testing -->
<TestSharedFxDir>$(ToolsDir)testdotnetcli</TestSharedFxDir>
<TestSharedFxDir Condition="'$(BinPlaceTestSharedFramework)' == 'true' or '$(BinPlaceUAPFramework)'=='true'">$(NETCoreAppTestRootPath)</TestSharedFxDir>
<TestSharedFxDir Condition="'$(BuildingUAPAOTVertical)' == 'true'">$(ILCFXInputFolder)</TestSharedFxDir>
<UseDotNetNativeToolchain Condition="'$(BuildingUAPAOTVertical)' == 'true' And '$(TestILCFolder)' != ''">true</UseDotNetNativeToolchain>
<PackagesBasePath Condition="'$(PackagesBasePath)'==''">$(BinDir)$(OSPlatformConfig)</PackagesBasePath>
<PackageOutputPath Condition="'$(PackageOutputPath)'==''">$(PackageOutputRoot)$(ConfigurationGroup)/</PackageOutputPath>