Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/dotnet/runtime.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorViktor Hofer <viktor.hofer@microsoft.com>2020-12-28 19:33:57 +0300
committerGitHub <noreply@github.com>2020-12-28 19:33:57 +0300
commit75d5cc3df4dde3b37d75f289b5a90e358da838aa (patch)
treeed75d388304564efae902a969fb526876471ec9a
parentc142f162854185ba45f0fab678f8b28d1add3968 (diff)
Avoid deferred Arcade importing (#46397)
* General cleanup and mono import Arcade in root * More cleanup and coreclr import Arcade root * Import Arcade root from libraries * Set informationversion for corelib * BuildArchitecture cleanup * Fix property name * Fix default target invocation of runtime.proj * specify tfm correctly * Remove unnecessary TestStrongNameKeyId * Revert TestStrongNameKeyId removal * Fix entrypoint target by using M.B.NoTargets * Fix reference assembly paths * PR feedback * Set Platform correctly * PR feedback and more cleanup * Move BaselineMicrosoftNetCoreAppPackageVersion * Fix reference to CoreLib * Fix OS calculation * Fix targets importing * Remove *TargetOS * Add RuntimeConfiguration doc * Change conditions in root msbuild files * installer test fixes * Cleanup * More cleanup because of well defined entrypoint * Don't import D.B.* from installer tests at all * Rename fix * Include explicit reference to mscorlib in ilproj * Update eng/restore/docs.targets Co-authored-by: Jan Kotas <jkotas@microsoft.com> * Revert some installer test changes * Installer test fix again * Disable EOL tfm check for installer tests * Set platform later for installer Co-authored-by: Jan Kotas <jkotas@microsoft.com>
-rw-r--r--Directory.Build.props256
-rw-r--r--Directory.Build.targets10
-rw-r--r--eng/Configurations.props186
-rw-r--r--eng/Signing.props17
-rw-r--r--eng/Versions.props29
-rw-r--r--eng/liveBuilds.targets6
-rw-r--r--eng/restore/docs.targets4
-rw-r--r--eng/restore/optimizationData.targets8
-rw-r--r--eng/versioning.targets7
-rw-r--r--src/coreclr/Directory.Build.props28
-rw-r--r--src/coreclr/Directory.Build.targets12
-rw-r--r--src/coreclr/System.Private.CoreLib/System.Private.CoreLib.csproj7
-rw-r--r--src/coreclr/crossgen-corelib.proj17
-rw-r--r--src/coreclr/dependencies.props44
-rw-r--r--src/coreclr/dir.common.props56
-rw-r--r--src/coreclr/runtime.proj18
-rw-r--r--src/installer/Directory.Build.props20
-rw-r--r--src/installer/managed/CommonManaged.props1
-rw-r--r--src/installer/publish/Directory.Build.props6
-rw-r--r--src/installer/tests/Assets/TestUtils/TestProjects.props15
-rw-r--r--src/installer/tests/Assets/TestUtils/TestProjects.targets4
-rw-r--r--src/libraries/Directory.Build.props68
-rw-r--r--src/libraries/Directory.Build.targets30
-rw-r--r--src/libraries/NetCoreAppLibrary.props3
-rw-r--r--src/libraries/System.Private.DataContractSerialization/src/System.Private.DataContractSerialization.csproj1
-rw-r--r--src/libraries/System.Runtime.CompilerServices.Unsafe/src/System.Runtime.CompilerServices.Unsafe.ilproj7
-rw-r--r--src/libraries/shims/manual/Directory.Build.props5
-rw-r--r--src/mono/Directory.Build.props38
-rw-r--r--src/mono/Directory.Build.targets11
-rw-r--r--src/mono/llvm/llvm-init.proj32
-rw-r--r--src/mono/mono.proj2
-rw-r--r--src/mono/netcore/System.Private.CoreLib/System.Private.CoreLib.csproj7
-rw-r--r--src/mono/netcore/sample/iOS/Program.csproj1
-rw-r--r--src/mono/wasm/debugger/tests/debugger-test/debugger-test.csproj2
-rw-r--r--src/mono/wasm/debugger/tests/lazy-debugger-test/lazy-debugger-test.csproj1
-rw-r--r--src/mono/wasm/wasm.proj2
-rw-r--r--src/tasks/WasmAppBuilder/WasmAppBuilder.csproj1
-rw-r--r--src/tasks/tasks.proj2
-rw-r--r--src/tests/Common/external/external.csproj4
-rw-r--r--src/tests/Common/helixpublishwitharcade.proj2
-rw-r--r--src/tests/Common/scripts/scripts.csproj2
-rw-r--r--src/tests/Common/xunitconsolerunner.depproj2
-rw-r--r--src/tests/Directory.Build.props9
-rw-r--r--src/tests/performance/Scenario/JitBench/JitBench.csproj2
-rw-r--r--src/tests/performance/Scenario/JitBench/unofficial_dotnet/JitBench.csproj2
-rw-r--r--src/tests/run.proj2
46 files changed, 332 insertions, 657 deletions
diff --git a/Directory.Build.props b/Directory.Build.props
index d654ceb8757..3d391c4b443 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -1,63 +1,74 @@
-<Project TreatAsLocalProperty="RepoRoot">
-
+<Project>
<PropertyGroup>
- <!--
- For non-SDK projects that import this file and then import Microsoft.Common.props,
- tell Microsoft.Common.props not to import Directory.Build.props again
- -->
+ <!-- For non-SDK projects that import this file and then import Microsoft.Common.props,
+ tell Microsoft.Common.props not to import Directory.Build.props again. -->
<ImportDirectoryBuildProps>false</ImportDirectoryBuildProps>
</PropertyGroup>
- <!--
- Import the arcade sdk with these requirements.
- After:
- Configuration setup
- Before:
- DebugType needs to be not be set to embedded at least for facades
- OutputPath setup
- -->
- <Import Project="Sdk.props" Sdk="Microsoft.DotNet.Arcade.Sdk" Condition="'$(SkipImportArcadeSdkFromRoot)' != 'true'" />
-
- <!-- Set these properties early enough for libraries as they import the Arcade SDK not early enough. -->
- <PropertyGroup Condition="'$(SkipImportArcadeSdkFromRoot)' == 'true'">
- <RepoRoot>$([MSBuild]::EnsureTrailingSlash('$(MSBuildThisFileDirectory)'))</RepoRoot>
- <RepositoryEngineeringDir>$([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'eng'))</RepositoryEngineeringDir>
- <ArtifactsDir>$([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'artifacts'))</ArtifactsDir>
- <ArtifactsBinDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsDir)', 'bin'))</ArtifactsBinDir>
- <ArtifactsObjDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsDir)', 'obj'))</ArtifactsObjDir>
+ <PropertyGroup Label="CalculateTargetOS">
+ <TargetOS Condition="'$(TargetOS)' == '' and $([MSBuild]::IsOSPlatform('OSX'))">OSX</TargetOS>
+ <TargetOS Condition="'$(TargetOS)' == '' and $([MSBuild]::IsOSPlatform('FREEBSD'))">FreeBSD</TargetOS>
+ <TargetOS Condition="'$(TargetOS)' == '' and $([MSBuild]::IsOSPlatform('NETBSD'))">NetBSD</TargetOS>
+ <TargetOS Condition="'$(TargetOS)' == '' and $([MSBuild]::IsOSPlatform('ILLUMOS'))">illumos</TargetOS>
+ <TargetOS Condition="'$(TargetOS)' == '' and $([MSBuild]::IsOSPlatform('SOLARIS'))">Solaris</TargetOS>
+ <TargetOS Condition="'$(TargetOS)' == '' and $([MSBuild]::IsOSUnixLike())">Linux</TargetOS>
+ <TargetOS Condition="'$(TargetOS)' == '' and $([MSBuild]::IsOSPlatform('WINDOWS'))">windows</TargetOS>
+ <TargetsMobile Condition="'$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'Android' or '$(TargetOS)' == 'tvOS' or '$(TargetOS)' == 'Browser'">true</TargetsMobile>
</PropertyGroup>
- <!-- Configuration properties which are needed in both the (isolated) restore and build phases. -->
- <Import Project="$(RepositoryEngineeringDir)Configurations.props" />
+ <!-- Platform property is required by RepoLayout.props in Arcade SDK. -->
+ <PropertyGroup Label="CalculateArch">
+ <_hostArch>$([System.Runtime.InteropServices.RuntimeInformation]::ProcessArchitecture.ToString().ToLowerInvariant)</_hostArch>
+ <BuildArchitecture Condition="'$(BuildArchitecture)' == ''">$(_hostArch)</BuildArchitecture>
+ <TargetArchitecture Condition="'$(TargetArchitecture)' == '' and '$(_hostArch)' == 'arm'">arm</TargetArchitecture>
+ <TargetArchitecture Condition="'$(TargetArchitecture)' == '' and '$(_hostArch)' == 'arm64'">arm64</TargetArchitecture>
+ <TargetArchitecture Condition="'$(TargetArchitecture)' == '' and '$(TargetOS)' == 'Browser'">wasm</TargetArchitecture>
+ <TargetArchitecture Condition="'$(TargetArchitecture)' == '' and '$(TargetsMobile)' == 'true'">x64</TargetArchitecture>
+ <TargetArchitecture Condition="'$(TargetArchitecture)' == ''">x64</TargetArchitecture>
+ <Platform Condition="'$(Platform)' == '' and '$(InferPlatformFromTargetArchitecture)' == 'true'">$(TargetArchitecture)</Platform>
+ </PropertyGroup>
- <!--
- Get '<subset>Project' items. Using the items lets projects handle
- $(Subset) automatically when creating project-to-project dependencies.
- -->
- <Import Project="$(RepositoryEngineeringDir)Subsets.props" />
+ <!-- Import the Arcade SDK -->
+ <Import Project="Sdk.props" Sdk="Microsoft.DotNet.Arcade.Sdk" />
+ <!-- The TFMs to build and test against. -->
<PropertyGroup>
- <!-- Installer specific, required during restore. -->
- <InstallerTasksOutputPath>$([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'installer.tasks'))</InstallerTasksOutputPath>
- <InstallerTasksAssemblyPath Condition="'$(MSBuildRuntimeType)' == 'Core'">$([MSBuild]::NormalizePath('$(InstallerTasksOutputPath)', 'Debug', 'netstandard2.0', 'installer.tasks.dll'))</InstallerTasksAssemblyPath>
- <InstallerTasksAssemblyPath Condition="'$(MSBuildRuntimeType)' != 'Core'">$([MSBuild]::NormalizePath('$(InstallerTasksOutputPath)', 'Debug', 'net461', 'installer.tasks.dll'))</InstallerTasksAssemblyPath>
-
- <DocsDir>$([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'docs'))</DocsDir>
- <ManPagesDir>$([MSBuild]::NormalizeDirectory('$(DocsDir)', 'manpages'))</ManPagesDir>
-
- <!-- System.Private.CoreLib -->
- <CoreLibSharedDir>$([MSBuild]::NormalizeDirectory('$(LibrariesProjectRoot)', 'System.Private.CoreLib', 'src'))</CoreLibSharedDir>
- <CoreLibProject Condition="'$(RuntimeFlavor)' == 'CoreCLR'">$([MSBuild]::NormalizePath('$(CoreClrProjectRoot)', 'System.Private.CoreLib', 'System.Private.CoreLib.csproj'))</CoreLibProject>
- <CoreLibProject Condition="'$(RuntimeFlavor)' == 'Mono'">$([MSBuild]::NormalizePath('$(MonoProjectRoot)', 'netcore', 'System.Private.CoreLib', 'System.Private.CoreLib.csproj'))</CoreLibProject>
+ <NetCoreAppCurrentVersion>$(MajorVersion).$(MinorVersion)</NetCoreAppCurrentVersion>
+ <AspNetCoreAppCurrentVersion>5.0</AspNetCoreAppCurrentVersion>
+ <NetCoreAppToolCurrentVersion>5.0</NetCoreAppToolCurrentVersion>
+ <NetCoreAppCurrentIdentifier>.NETCoreApp</NetCoreAppCurrentIdentifier>
+ <NetCoreAppCurrentTargetFrameworkMoniker>$(NetCoreAppCurrentIdentifier),Version=v$(NetCoreAppCurrentVersion)</NetCoreAppCurrentTargetFrameworkMoniker>
+ <NetCoreAppCurrent>net$(NetCoreAppCurrentVersion)</NetCoreAppCurrent>
+ <AspNetCoreAppCurrent>net$(AspNetCoreAppCurrentVersion)</AspNetCoreAppCurrent>
+ <NetCoreAppToolCurrent>net$(NetCoreAppToolCurrentVersion)</NetCoreAppToolCurrent>
+ <NetCoreAppCurrentToolTargetFrameworkMoniker>$(NetCoreAppCurrentIdentifier),Version=v$(NetCoreAppToolCurrentVersion)</NetCoreAppCurrentToolTargetFrameworkMoniker>
+ <!-- Used by Microsoft.DotNet.Build.Tasks.SharedFramework.Sdk. -->
+ <NETCoreAppFramework>$(NetCoreAppCurrent)</NETCoreAppFramework>
+ <SharedFrameworkName>Microsoft.NETCore.App</SharedFrameworkName>
+ <NetCoreAppCurrentBrandName>.NET $(NetCoreAppCurrentVersion)</NetCoreAppCurrentBrandName>
</PropertyGroup>
<PropertyGroup>
+ <LibrariesProjectRoot>$([MSBuild]::NormalizeDirectory('$(MSBuildThisFileDirectory)', 'src', 'libraries'))</LibrariesProjectRoot>
+ <CoreClrProjectRoot>$([MSBuild]::NormalizeDirectory('$(MSBuildThisFileDirectory)', 'src', 'coreclr'))</CoreClrProjectRoot>
+ <MonoProjectRoot>$([MSBuild]::NormalizeDirectory('$(MSBuildThisFileDirectory)', 'src', 'mono'))</MonoProjectRoot>
+ <InstallerProjectRoot>$([MSBuild]::NormalizeDirectory('$(MSBuildThisFileDirectory)', 'src', 'installer'))</InstallerProjectRoot>
+ <RepoToolsLocalDir>$([MSBuild]::NormalizeDirectory('$(MSBuildThisFileDirectory)', 'tools-local'))</RepoToolsLocalDir>
+ <RepoTasksDir>$([MSBuild]::NormalizeDirectory('$(MSBuildThisFileDirectory)', 'src', 'tasks'))</RepoTasksDir>
+ <IbcOptimizationDataDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsDir)', 'ibc'))</IbcOptimizationDataDir>
+ <XmlDocDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'docs'))</XmlDocDir>
+ <XmlDocFileRoot>$([MSBuild]::NormalizeDirectory('$(NuGetPackageRoot)', 'microsoft.private.intellisense', '$(MicrosoftPrivateIntellisenseVersion)', 'IntellisenseFiles', 'net'))</XmlDocFileRoot>
+ <DocsDir>$([MSBuild]::NormalizeDirectory('$(MSBuildThisFileDirectory)', 'docs'))</DocsDir>
+ <ManPagesDir>$([MSBuild]::NormalizeDirectory('$(DocsDir)', 'manpages'))</ManPagesDir>
+
<AppleAppBuilderDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'AppleAppBuilder', 'Debug', '$(NetCoreAppToolCurrent)'))</AppleAppBuilderDir>
<AndroidAppBuilderDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'AndroidAppBuilder', 'Debug', '$(NetCoreAppToolCurrent)', 'publish'))</AndroidAppBuilderDir>
<WasmAppBuilderDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'WasmAppBuilder', 'Debug', '$(NetCoreAppToolCurrent)', 'publish'))</WasmAppBuilderDir>
<WasmBuildTasksDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'WasmBuildTasks', 'Debug', '$(NetCoreAppToolCurrent)', 'publish'))</WasmBuildTasksDir>
<MonoAOTCompilerDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'MonoAOTCompiler', 'Debug', '$(NetCoreAppToolCurrent)'))</MonoAOTCompilerDir>
+ <InstallerTasksAssemblyPath Condition="'$(MSBuildRuntimeType)' == 'Core'">$([MSBuild]::NormalizePath('$(ArtifactsBinDir)', 'installer.tasks', 'Debug', 'netstandard2.0', 'installer.tasks.dll'))</InstallerTasksAssemblyPath>
+ <InstallerTasksAssemblyPath Condition="'$(MSBuildRuntimeType)' != 'Core'">$([MSBuild]::NormalizePath('$(ArtifactsBinDir)', 'installer.tasks', 'Debug', 'net461', 'installer.tasks.dll'))</InstallerTasksAssemblyPath>
<AppleAppBuilderTasksAssemblyPath>$([MSBuild]::NormalizePath('$(AppleAppBuilderDir)', 'AppleAppBuilder.dll'))</AppleAppBuilderTasksAssemblyPath>
<AndroidAppBuilderTasksAssemblyPath>$([MSBuild]::NormalizePath('$(AndroidAppBuilderDir)', 'AndroidAppBuilder.dll'))</AndroidAppBuilderTasksAssemblyPath>
<WasmAppBuilderTasksAssemblyPath>$([MSBuild]::NormalizePath('$(WasmAppBuilderDir)', 'WasmAppBuilder.dll'))</WasmAppBuilderTasksAssemblyPath>
@@ -65,39 +76,155 @@
<MonoAOTCompilerTasksAssemblyPath>$([MSBuild]::NormalizePath('$(MonoAOTCompilerDir)', 'MonoAOTCompiler.dll'))</MonoAOTCompilerTasksAssemblyPath>
</PropertyGroup>
- <!-- Packaging properties -->
+ <PropertyGroup Label="CalculateConfiguration">
+ <!-- The RuntimeConfiguration property allows to pass in/specify a configuration that applies to both CoreCLR and Mono. -->
+ <RuntimeConfiguration Condition="'$(RuntimeConfiguration)' == ''">$(Configuration)</RuntimeConfiguration>
+ <RuntimeConfiguration Condition="'$(RuntimeConfiguration)' == '' and ('$(Configuration)' == 'Debug' or '$(Configuration)' == 'Release')">$(Configuration)</RuntimeConfiguration>
+ <RuntimeConfiguration Condition="'$(RuntimeConfiguration)' == ''">Debug</RuntimeConfiguration>
+ <CoreCLRConfiguration Condition="'$(CoreCLRConfiguration)' == ''">$(RuntimeConfiguration)</CoreCLRConfiguration>
+ <MonoConfiguration Condition="'$(MonoConfiguration)' == '' and '$(RuntimeConfiguration.ToLower())' != 'checked'">$(RuntimeConfiguration)</MonoConfiguration>
+ <!-- There's no checked configuration on Mono. -->
+ <MonoConfiguration Condition="'$(MonoConfiguration)' == '' and '$(RuntimeConfiguration.ToLower())' == 'checked'">Debug</MonoConfiguration>
+ <LibrariesConfiguration Condition="'$(LibrariesConfiguration)' == ''">$(Configuration)</LibrariesConfiguration>
+ </PropertyGroup>
+
+ <PropertyGroup Label="CalculateOS">
+ <!-- Default to portable build if not explicitly set -->
+ <PortableBuild Condition="'$(PortableBuild)' == ''">true</PortableBuild>
+
+ <_parseDistroRid>$(__DistroRid)</_parseDistroRid>
+ <_parseDistroRid Condition="'$(_parseDistroRid)' == '' and '$(MSBuildRuntimeType)' == 'core'">$([System.Runtime.InteropServices.RuntimeInformation]::RuntimeIdentifier)</_parseDistroRid>
+ <_parseDistroRid Condition="'$(_parseDistroRid)' == '' and '$(MSBuildRuntimeType)' != 'core'">win-$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture.ToString().ToLowerInvariant)</_parseDistroRid>
+ <_distroRidIndex>$(_parseDistroRid.LastIndexOfAny("-"))</_distroRidIndex>
+
+ <_runtimeOS>$(RuntimeOS)</_runtimeOS>
+ <_runtimeOS Condition="'$(_runtimeOS)' == ''">$(_parseDistroRid.SubString(0, $(_distroRidIndex)))</_runtimeOS>
+
+ <!-- _runtimeOS is calculated based on the build system OS, however if building for Browser/iOS/Android we need to let
+ the build system to use browser/ios/android as the _runtimeOS for produced package RIDs. -->
+ <_runtimeOS Condition="'$(TargetsMobile)' == 'true'">$(TargetOS.ToLowerInvariant())</_runtimeOS>
+
+ <_runtimeOSVersionIndex>$(_runtimeOS.IndexOfAny(".-0123456789"))</_runtimeOSVersionIndex>
+ <_runtimeOSFamily Condition="'$(_runtimeOSVersionIndex)' != '-1'">$(_runtimeOS.SubString(0, $(_runtimeOSVersionIndex)))</_runtimeOSFamily>
+
+ <_portableOS>linux</_portableOS>
+ <_portableOS Condition="'$(_runtimeOS)' == 'linux-musl'">linux-musl</_portableOS>
+ <_portableOS Condition="$([MSBuild]::IsOSPlatform('OSX'))">osx</_portableOS>
+ <_portableOS Condition="'$(_runtimeOSFamily)' == 'win' or '$(_runtimeOS)' == 'win' or '$(TargetOS)' == 'windows'">win</_portableOS>
+ <_portableOS Condition="'$(_runtimeOSFamily)' == 'FreeBSD'">freebsd</_portableOS>
+ <_portableOS Condition="'$(_runtimeOSFamily)' == 'illumos'">illumos</_portableOS>
+ <_portableOS Condition="'$(_runtimeOSFamily)' == 'Solaris'">solaris</_portableOS>
+ <_portableOS Condition="'$(_runtimeOS)' == 'Browser'">browser</_portableOS>
+ <_portableOS Condition="'$(_runtimeOS)' == 'ios'">ios</_portableOS>
+ <_portableOS Condition="'$(_runtimeOS)' == 'tvos'">tvos</_portableOS>
+ <_portableOS Condition="'$(_runtimeOS)' == 'android'">android</_portableOS>
+
+ <_runtimeOS Condition="$(_runtimeOS.StartsWith('tizen'))">linux</_runtimeOS>
+ <_runtimeOS Condition="'$(PortableBuild)' == 'true'">$(_portableOS)</_runtimeOS>
+
+ <!-- support cross-targeting by choosing a RID to restore when running on a different machine that what we're build for -->
+ <_portableOS Condition="'$(TargetOS)' == 'Unix' and '$(_runtimeOSFamily)' != 'osx' and '$(_runtimeOSFamily)' != 'FreeBSD' and '$(_runtimeOS)' != 'linux-musl' and '$(_runtimeOSFamily)' != 'illumos' and '$(_runtimeOSFamily)' != 'Solaris'">linux</_portableOS>
+ </PropertyGroup>
+
+ <PropertyGroup Label="CalculateRID">
+ <_toolRuntimeRID Condition="'$(BuildingInsideVisualStudio)' == 'true'">$(_runtimeOS)-x64</_toolRuntimeRID>
+ <_toolRuntimeRID Condition="'$(_toolRuntimeRID)' == ''">$(_runtimeOS)-$(_hostArch)</_toolRuntimeRID>
+ <!-- We build linux-musl-arm on a ubuntu container, so we can't use the toolset build for alpine runtime. We need to use portable linux RID for our toolset in order to be able to use it. -->
+ <_toolRuntimeRID Condition="'$(_runtimeOS)' == 'linux-musl' and $(TargetArchitecture.StartsWith('arm')) and !$(_hostArch.StartsWith('arm'))">linux-x64</_toolRuntimeRID>
+
+ <!-- There are no WebAssembly tools, so use the default ones -->
+ <_toolRuntimeRID Condition="'$(_runtimeOS)' == 'browser'">linux-x64</_toolRuntimeRID>
+ <_toolRuntimeRID Condition="'$(_runtimeOS)' == 'browser' and $([MSBuild]::IsOSPlatform('WINDOWS'))">win-x64</_toolRuntimeRID>
+ <_toolRuntimeRID Condition="'$(_runtimeOS)' == 'browser' and $([MSBuild]::IsOSPlatform('OSX'))">osx-x64</_toolRuntimeRID>
+
+ <!-- There are no Android tools, so use the default ones -->
+ <_toolRuntimeRID Condition="'$(_runtimeOS)' == 'android'">linux-x64</_toolRuntimeRID>
+ <_toolRuntimeRID Condition="'$(_runtimeOS)' == 'android' and $([MSBuild]::IsOSPlatform('WINDOWS'))">win-x64</_toolRuntimeRID>
+ <_toolRuntimeRID Condition="'$(_runtimeOS)' == 'android' and $([MSBuild]::IsOSPlatform('OSX'))">osx-x64</_toolRuntimeRID>
+
+ <!-- There are no iOS or tvOS tools and it can be built on OSX only, so use that -->
+ <_toolRuntimeRID Condition="'$(_runtimeOS)' == 'ios' or '$(_runtimeOS)' == 'tvos'">osx-x64</_toolRuntimeRID>
+
+ <MicrosoftNetCoreIlasmPackageRuntimeId>$(_toolRuntimeRID)</MicrosoftNetCoreIlasmPackageRuntimeId>
+
+ <_packageRID Condition="'$(PortableBuild)' == 'true'">$(_portableOS)-$(TargetArchitecture)</_packageRID>
+ <PackageRID Condition="'$(PackageRID)' == ''">$(_packageRID)</PackageRID>
+ <PackageRID Condition="'$(PackageRID)' == ''">$(_runtimeOS)-$(TargetArchitecture)</PackageRID>
+
+ <_outputRID Condition="'$(TargetOS)' == 'windows'">win-$(TargetArchitecture)</_outputRID>
+ <_outputRID Condition="'$(TargetOS)' == 'OSX'">osx-$(TargetArchitecture)</_outputRID>
+ <_outputRID Condition="'$(TargetOS)' == 'Linux'">linux-$(TargetArchitecture)</_outputRID>
+ <_outputRID Condition="'$(TargetOS)' == 'FreeBSD'">freebsd-$(TargetArchitecture)</_outputRID>
+ <_outputRID Condition="'$(TargetOS)' == 'NetBSD'">netbsd-$(TargetArchitecture)</_outputRID>
+ <_outputRID Condition="'$(TargetOS)' == 'illumos'">illumos-$(TargetArchitecture)</_outputRID>
+ <_outputRID Condition="'$(TargetOS)' == 'Solaris'">solaris-$(TargetArchitecture)</_outputRID>
+ <_outputRID Condition="'$(TargetOS)' == 'iOS'">ios-$(TargetArchitecture)</_outputRID>
+ <_outputRID Condition="'$(TargetOS)' == 'tvOS'">tvos-$(TargetArchitecture)</_outputRID>
+ <_outputRID Condition="'$(TargetOS)' == 'Android'">android-$(TargetArchitecture)</_outputRID>
+ <_outputRID Condition="'$(TargetOS)' == 'Browser'">browser-$(TargetArchitecture)</_outputRID>
+
+ <OutputRid Condition="'$(OutputRid)' == ''">$(PackageRID)</OutputRid>
+ <OutputRid Condition="'$(PortableBuild)' == 'true'">$(_outputRID)</OutputRid>
+ </PropertyGroup>
+
+ <PropertyGroup Label="CalculateTargetOSName" Condition="'$(SkipInferTargetOSName)' != 'true'">
+ <TargetsFreeBSD Condition="'$(TargetOS)' == 'FreeBSD'">true</TargetsFreeBSD>
+ <Targetsillumos Condition="'$(TargetOS)' == 'illumos'">true</Targetsillumos>
+ <TargetsSolaris Condition="'$(TargetOS)' == 'Solaris'">true</TargetsSolaris>
+ <TargetsLinux Condition="'$(TargetOS)' == 'Linux' or '$(TargetOS)' == 'Android'">true</TargetsLinux>
+ <TargetsNetBSD Condition="'$(TargetOS)' == 'NetBSD'">true</TargetsNetBSD>
+ <TargetsOSX Condition="'$(TargetOS)' == 'OSX'">true</TargetsOSX>
+ <TargetsiOS Condition="'$(TargetOS)' == 'iOS'">true</TargetsiOS>
+ <TargetstvOS Condition="'$(TargetOS)' == 'tvOS'">true</TargetstvOS>
+ <TargetsiOSSimulator Condition="'$(TargetsiOS)' == 'true' and ('$(TargetArchitecture)' == 'x64' or '$(TargetArchitecture)' == 'x86')">true</TargetsiOSSimulator>
+ <TargetstvOSSimulator Condition="'$(TargetstvOS)' == 'true' and '$(TargetArchitecture)' == 'x64'">true</TargetstvOSSimulator>
+ <TargetsAndroid Condition="'$(TargetOS)' == 'Android'">true</TargetsAndroid>
+ <TargetsBrowser Condition="'$(TargetOS)' == 'Browser'">true</TargetsBrowser>
+ <TargetsWindows Condition="'$(TargetOS)' == 'windows'">true</TargetsWindows>
+ <TargetsUnix Condition="'$(TargetsFreeBSD)' == 'true' or '$(Targetsillumos)' == 'true' or '$(TargetsSolaris)' == 'true' or '$(TargetsLinux)' == 'true' or '$(TargetsNetBSD)' == 'true' or '$(TargetsOSX)' == 'true' or '$(TargetstvOS)' == 'true' or '$(TargetsiOS)' == 'true' or '$(TargetsAndroid)' == 'true'">true</TargetsUnix>
+ </PropertyGroup>
+
+ <!--Feature switches -->
+ <PropertyGroup>
+ <EnableNgenOptimization Condition="'$(EnableNgenOptimization)' == '' and '$(Configuration)' == 'Release'">true</EnableNgenOptimization>
+ <!-- Enable NuGet static graph evaluation to optimize incremental restore -->
+ <RestoreUseStaticGraphEvaluation>true</RestoreUseStaticGraphEvaluation>
+ <!-- Turn off end of life target framework checks as we intentionally build older .NETCoreApp configurations. -->
+ <CheckEolTargetFramework>false</CheckEolTargetFramework>
+ </PropertyGroup>
+
+ <!-- RepositoryEngineeringDir isn't set when Installer tests import this file. -->
+ <Import Project="$(RepositoryEngineeringDir)native\naming.props" />
+ <Import Project="$(RepositoryEngineeringDir)Subsets.props" />
+ <Import Project="$(RepositoryEngineeringDir)Analyzers.props" />
+
+ <PropertyGroup>
+ <CoreLibSharedDir>$([MSBuild]::NormalizeDirectory('$(LibrariesProjectRoot)', 'System.Private.CoreLib', 'src'))</CoreLibSharedDir>
+ <CoreLibProject Condition="'$(RuntimeFlavor)' == 'CoreCLR'">$([MSBuild]::NormalizePath('$(CoreClrProjectRoot)', 'System.Private.CoreLib', 'System.Private.CoreLib.csproj'))</CoreLibProject>
+ <CoreLibProject Condition="'$(RuntimeFlavor)' == 'Mono'">$([MSBuild]::NormalizePath('$(MonoProjectRoot)', 'netcore', 'System.Private.CoreLib', 'System.Private.CoreLib.csproj'))</CoreLibProject>
+ </PropertyGroup>
+
+ <!-- Packaging -->
<PropertyGroup>
- <!--
- This name is used to create a GIT repository URL https://github.com/dotnet/$(GitHubRepositoryName) used
- to find source code for debugging. It is also used to name the build output manifest for orchestrated builds.
- -->
<GitHubRepositoryName>runtime</GitHubRepositoryName>
<RepositoryUrl>git://github.com/dotnet/runtime</RepositoryUrl>
<ProjectUrl>https://github.com/dotnet/runtime</ProjectUrl>
<LicenseUrl>https://github.com/dotnet/runtime/blob/master/LICENSE.TXT</LicenseUrl>
<RuntimeIdGraphDefinitionFile>$([MSBuild]::NormalizePath('$(LibrariesProjectRoot)', 'pkg', 'Microsoft.NETCore.Platforms', 'runtime.json'))</RuntimeIdGraphDefinitionFile>
- <LicenseFile>$(RepoRoot)LICENSE.TXT</LicenseFile>
+ <LicenseFile>$(MSBuildThisFileDirectory)LICENSE.TXT</LicenseFile>
<PackageLicenseExpression>MIT</PackageLicenseExpression>
<Copyright>$(CopyrightNetFoundation)</Copyright>
- <PackageThirdPartyNoticesFile>$(RepoRoot)THIRD-PARTY-NOTICES.TXT</PackageThirdPartyNoticesFile>
+ <PackageThirdPartyNoticesFile>$(MSBuildThisFileDirectory)THIRD-PARTY-NOTICES.TXT</PackageThirdPartyNoticesFile>
<ReleaseNotes>https://go.microsoft.com/fwlink/?LinkID=799421</ReleaseNotes>
-
<!-- Indicates this is not an officially supported release. Release branches should set this to false. -->
<!-- Keep it in sync with PRERELEASE in eng/native/configureplatform.cmake -->
<IsPrerelease>true</IsPrerelease>
-
<IsExperimentalAssembly>$(MSBuildProjectName.Contains('Experimental'))</IsExperimentalAssembly>
-
<!-- Experimental packages should not be stable -->
<SuppressFinalPackageVersion Condition="'$(SuppressFinalPackageVersion)' == '' and $(IsExperimentalAssembly)">true</SuppressFinalPackageVersion>
<IsShippingAssembly Condition="$(IsExperimentalAssembly)">false</IsShippingAssembly>
-
<!-- We don't want Private packages to be shipped to NuGet.org -->
<IsShippingPackage Condition="($(MSBuildProjectName.Contains('Private')) or $(IsExperimentalAssembly)) and '$(MSBuildProjectExtension)' == '.pkgproj'">false</IsShippingPackage>
-
- <!-- By default the SDK produces ref assembly for 5.0 or later -->
- <ProduceReferenceAssembly>false</ProduceReferenceAssembly>
-
<!-- Set IsPackable true for all pkgproj as Arcade unconditionally overrides the value. -->
<IsPackable Condition="'$(MSBuildProjectExtension)' == '.pkgproj'">true</IsPackable>
</PropertyGroup>
@@ -107,19 +234,18 @@
<!-- default to allowing all language features -->
<LangVersion>preview</LangVersion>
<LangVersion Condition="'$(MSBuildProjectExtension)' == '.vbproj'">latest</LangVersion>
+ <!-- Enables Strict mode for Roslyn compiler -->
+ <Features>strict;nullablePublicOnly</Features>
<Deterministic>true</Deterministic>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
- </PropertyGroup>
-
- <PropertyGroup>
+ <!-- Always pass portable to override arcade sdk which uses embedded for local builds -->
+ <DebugType>portable</DebugType>
+ <DebugSymbols>true</DebugSymbols>
<!-- Default to discarding symbols if not explicitly set -->
<KeepNativeSymbols Condition="'$(KeepNativeSymbols)' == ''">false</KeepNativeSymbols>
<!-- Used for launchSettings.json and runtime config files. -->
<AppDesignerFolder>Properties</AppDesignerFolder>
- <!-- Determine what architecture we are building on. -->
- <BuildArchitecture Condition="'$(BuildArchitecture)' == ''">$([System.Runtime.InteropServices.RuntimeInformation]::ProcessArchitecture.ToString().ToLowerInvariant())</BuildArchitecture>
+ <!-- By default the SDK produces ref assembly for 5.0 or later -->
+ <ProduceReferenceAssembly>false</ProduceReferenceAssembly>
</PropertyGroup>
-
- <Import Project="$(RepositoryEngineeringDir)Analyzers.props" />
-
</Project>
diff --git a/Directory.Build.targets b/Directory.Build.targets
index e8bb87918af..764d12bb822 100644
--- a/Directory.Build.targets
+++ b/Directory.Build.targets
@@ -5,13 +5,11 @@
tell Microsoft.Common.targets not to import Directory.Build.targets again
-->
<ImportDirectoryBuildTargets>false</ImportDirectoryBuildTargets>
-
- <EnableNETAnalyzers Condition="'$(EnableAnalyzers)' != 'true'">false</EnableNETAnalyzers>
</PropertyGroup>
+ <Import Project="Sdk.targets" Sdk="Microsoft.DotNet.Arcade.Sdk" />
<Import Project="$(RepositoryEngineeringDir)liveBuilds.targets" />
<Import Project="$(RepositoryEngineeringDir)python.targets" />
- <Import Project="Sdk.targets" Sdk="Microsoft.DotNet.Arcade.Sdk" Condition="'$(SkipImportArcadeSdkFromRoot)' != 'true'" />
<PropertyGroup>
<!--
@@ -19,6 +17,12 @@
unconditionally in Microsoft.NETCoreSdk.BundledVersions.props.
-->
<NETCoreAppMaximumVersion>$(MajorVersion).$(MinorVersion)</NETCoreAppMaximumVersion>
+ <EnableNETAnalyzers Condition="'$(EnableAnalyzers)' != 'true'">false</EnableNETAnalyzers>
+ <!-- SDK sets product to assembly but we want it to be our product name -->
+ <Product>Microsoft%AE .NET</Product>
+ <!-- Use the .NET product branding version for informational version description -->
+ <InformationalVersion Condition="'$(InformationalVersion)' == '' and '$(VersionSuffix)' == ''">$(ProductVersion)</InformationalVersion>
+ <InformationalVersion Condition="'$(InformationalVersion)' == '' and '$(VersionSuffix)' != ''">$(ProductVersion)-$(VersionSuffix)</InformationalVersion>
</PropertyGroup>
<!-- Packaging -->
diff --git a/eng/Configurations.props b/eng/Configurations.props
deleted file mode 100644
index 0cad6e6db72..00000000000
--- a/eng/Configurations.props
+++ /dev/null
@@ -1,186 +0,0 @@
-<Project>
- <!--
- This file contains properties and items which are used in both the Arcade
- steps and in the repository.
- -->
-
- <PropertyGroup>
- <!-- Default to portable build if not explicitly set -->
- <PortableBuild Condition="'$(PortableBuild)' == ''">true</PortableBuild>
- </PropertyGroup>
-
- <PropertyGroup>
- <LibrariesProjectRoot>$([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'src', 'libraries'))</LibrariesProjectRoot>
- <CoreClrProjectRoot>$([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'src', 'coreclr'))</CoreClrProjectRoot>
- <MonoProjectRoot>$([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'src', 'mono'))</MonoProjectRoot>
- <InstallerProjectRoot>$([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'src', 'installer'))</InstallerProjectRoot>
- <RepoToolsLocalDir>$([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'tools-local'))</RepoToolsLocalDir>
- <RepoTasksDir>$([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'src', 'tasks'))</RepoTasksDir>
- <IbcOptimizationDataDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsDir)', 'ibc'))</IbcOptimizationDataDir>
- <XmlDocDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'docs'))</XmlDocDir>
- </PropertyGroup>
-
- <!-- The TFMs to build and test against. -->
- <PropertyGroup>
- <!--
- TODO: Update to $(MajorVersion).$(MinorVersion) when all sub-repos import
- Arcade at the beginning (SkipImportArcadeSdkFromRoot=false).
- -->
- <NetCoreAppCurrentVersion>6.0</NetCoreAppCurrentVersion>
- <AspNetCoreAppCurrentVersion>5.0</AspNetCoreAppCurrentVersion>
- <NetCoreAppToolCurrentVersion>5.0</NetCoreAppToolCurrentVersion>
- <NetCoreAppCurrentIdentifier>.NETCoreApp</NetCoreAppCurrentIdentifier>
- <NetCoreAppCurrentTargetFrameworkMoniker>$(NetCoreAppCurrentIdentifier),Version=v$(NetCoreAppCurrentVersion)</NetCoreAppCurrentTargetFrameworkMoniker>
- <NetCoreAppCurrent>net$(NetCoreAppCurrentVersion)</NetCoreAppCurrent>
- <AspNetCoreAppCurrent>net$(AspNetCoreAppCurrentVersion)</AspNetCoreAppCurrent>
- <NetCoreAppToolCurrent>net$(NetCoreAppToolCurrentVersion)</NetCoreAppToolCurrent>
- <NetCoreAppCurrentToolTargetFrameworkMoniker>$(NetCoreAppCurrentIdentifier),Version=v$(NetCoreAppToolCurrentVersion)</NetCoreAppCurrentToolTargetFrameworkMoniker>
- <!-- Used by Microsoft.DotNet.Build.Tasks.SharedFramework.Sdk. -->
- <NETCoreAppFramework>$(NetCoreAppCurrent)</NETCoreAppFramework>
- <SharedFrameworkName>Microsoft.NETCore.App</SharedFrameworkName>
- <NetCoreAppCurrentBrandName>.NET $(NetCoreAppCurrentVersion)</NetCoreAppCurrentBrandName>
- </PropertyGroup>
-
- <!-- Honor the generic RuntimeConfiguration property. -->
- <PropertyGroup>
- <RuntimeConfiguration Condition="'$(RuntimeConfiguration)' == ''">$(Configuration)</RuntimeConfiguration>
- <RuntimeConfiguration Condition="'$(RuntimeConfiguration)' == '' AND ('$(Configuration)' == 'Debug' OR '$(Configuration)' == 'Release')">$(Configuration)</RuntimeConfiguration>
- <RuntimeConfiguration Condition="'$(RuntimeConfiguration)' == ''">Debug</RuntimeConfiguration>
- <CoreCLRConfiguration Condition="'$(CoreCLRConfiguration)' == ''">$(RuntimeConfiguration)</CoreCLRConfiguration>
- <MonoConfiguration Condition="'$(MonoConfiguration)' == '' and '$(RuntimeConfiguration.ToLower())' != 'checked'">$(RuntimeConfiguration)</MonoConfiguration>
- <!-- There's no checked configuration on Mono. -->
- <MonoConfiguration Condition="'$(MonoConfiguration)' == '' and '$(RuntimeConfiguration.ToLower())' == 'checked'">Debug</MonoConfiguration>
- <LibrariesConfiguration Condition="'$(LibrariesConfiguration)' == ''">$(Configuration)</LibrariesConfiguration>
- </PropertyGroup>
-
- <PropertyGroup>
- <TargetOS Condition="'$(TargetOS)' == '' and $([MSBuild]::IsOSPlatform('OSX'))">OSX</TargetOS>
- <TargetOS Condition="'$(TargetOS)' == '' and $([MSBuild]::IsOSPlatform('FREEBSD'))">FreeBSD</TargetOS>
- <TargetOS Condition="'$(TargetOS)' == '' and $([MSBuild]::IsOSPlatform('NETBSD'))">NetBSD</TargetOS>
- <TargetOS Condition="'$(TargetOS)' == '' and $([MSBuild]::IsOSPlatform('ILLUMOS'))">illumos</TargetOS>
- <TargetOS Condition="'$(TargetOS)' == '' and $([MSBuild]::IsOSPlatform('SOLARIS'))">Solaris</TargetOS>
- <TargetOS Condition="'$(TargetOS)' == '' and $([MSBuild]::IsOSUnixLike())">Linux</TargetOS>
- <TargetOS Condition="'$(TargetOS)' == '' and $([MSBuild]::IsOSPlatform('WINDOWS'))">windows</TargetOS>
- <CoreCLRTargetOS Condition="'$(CoreCLRTargetOS)' == ''">$(TargetOS)</CoreCLRTargetOS>
- <MonoTargetOS Condition="'$(MonoTargetOS)' == ''">$(TargetOS)</MonoTargetOS>
- <LibrariesTargetOS Condition="'$(LibrariesTargetOS)' == ''">$(TargetOS)</LibrariesTargetOS>
- </PropertyGroup>
-
- <PropertyGroup>
- <TargetsMobile Condition="'$(TargetOS)' == 'iOS' or '$(TargetOS)' == 'Android' or '$(TargetOS)' == 'tvOS' or '$(TargetOS)' == 'Browser'">true</TargetsMobile>
- </PropertyGroup>
-
- <PropertyGroup Label="CalculateOS">
- <_runtimeOS>$(RuntimeOS)</_runtimeOS>
-
- <_parseDistroRid>$(__DistroRid)</_parseDistroRid>
- <_parseDistroRid Condition="'$(_parseDistroRid)' == '' and '$(MSBuildRuntimeType)' == 'core'">$([System.Runtime.InteropServices.RuntimeInformation]::RuntimeIdentifier)</_parseDistroRid>
- <_parseDistroRid Condition="'$(_parseDistroRid)' == '' and '$(MSBuildRuntimeType)' != 'core'">win-$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture.ToString().ToLowerInvariant)</_parseDistroRid>
- <_distroRidIndex>$(_parseDistroRid.LastIndexOfAny("-"))</_distroRidIndex>
-
- <_runtimeOS Condition="'$(_runtimeOS)' == ''">$(_parseDistroRid.SubString(0, $(_distroRidIndex)))</_runtimeOS>
-
- <!-- _runtimeOS is calculated based on the build system OS, however if building for Browser/iOS/Android we need to let
- the build system to use browser/ios/android as the _runtimeOS for produced package RIDs. -->
- <_runtimeOS Condition="'$(TargetsMobile)' == 'true'">$(TargetOS.ToLowerInvariant())</_runtimeOS>
-
- <_runtimeOSVersionIndex>$(_runtimeOS.IndexOfAny(".-0123456789"))</_runtimeOSVersionIndex>
- <_runtimeOSFamily Condition="'$(_runtimeOSVersionIndex)' != '-1'">$(_runtimeOS.SubString(0, $(_runtimeOSVersionIndex)))</_runtimeOSFamily>
-
- <_portableOS>linux</_portableOS>
- <_portableOS Condition="'$(_runtimeOS)' == 'linux-musl'">linux-musl</_portableOS>
- <_portableOS Condition="$([MSBuild]::IsOSPlatform('OSX'))">osx</_portableOS>
- <_portableOS Condition="'$(_runtimeOSFamily)' == 'win' or '$(_runtimeOS)' == 'win' or '$(TargetOS)' == 'windows'">win</_portableOS>
- <_portableOS Condition="'$(_runtimeOSFamily)' == 'FreeBSD'">freebsd</_portableOS>
- <_portableOS Condition="'$(_runtimeOSFamily)' == 'illumos'">illumos</_portableOS>
- <_portableOS Condition="'$(_runtimeOSFamily)' == 'Solaris'">solaris</_portableOS>
- <_portableOS Condition="'$(_runtimeOS)' == 'Browser'">browser</_portableOS>
- <_portableOS Condition="'$(_runtimeOS)' == 'ios'">ios</_portableOS>
- <_portableOS Condition="'$(_runtimeOS)' == 'tvos'">tvos</_portableOS>
- <_portableOS Condition="'$(_runtimeOS)' == 'android'">android</_portableOS>
-
- <_runtimeOS Condition="$(_runtimeOS.StartsWith('tizen'))">linux</_runtimeOS>
- <_runtimeOS Condition="'$(PortableBuild)' == 'true'">$(_portableOS)</_runtimeOS>
-
- <!-- support cross-targeting by choosing a RID to restore when running on a different machine that what we're build for -->
- <_portableOS Condition="'$(TargetOS)' == 'Unix' and '$(_runtimeOSFamily)' != 'osx' and '$(_runtimeOSFamily)' != 'FreeBSD' and '$(_runtimeOS)' != 'linux-musl' and '$(_runtimeOSFamily)' != 'illumos' and '$(_runtimeOSFamily)' != 'Solaris'">linux</_portableOS>
- </PropertyGroup>
-
- <PropertyGroup Label="CalculateArch">
- <_hostArch>$([System.Runtime.InteropServices.RuntimeInformation]::ProcessArchitecture.ToString().ToLowerInvariant)</_hostArch>
- <TargetArchitecture Condition="'$(TargetArchitecture)' == '' and '$(_hostArch)' == 'arm'">arm</TargetArchitecture>
- <TargetArchitecture Condition="'$(TargetArchitecture)' == '' and '$(_hostArch)' == 'arm64'">arm64</TargetArchitecture>
- <TargetArchitecture Condition="'$(TargetArchitecture)' == '' and '$(TargetOS)' == 'Browser'">wasm</TargetArchitecture>
- <TargetArchitecture Condition="'$(TargetArchitecture)' == '' and '$(TargetsMobile)' == 'true'">x64</TargetArchitecture>
- <TargetArchitecture Condition="'$(TargetArchitecture)' == ''">x64</TargetArchitecture>
- </PropertyGroup>
-
- <PropertyGroup Label="CalculateRID">
- <_toolRuntimeRID Condition="'$(BuildingInsideVisualStudio)' == 'true'">$(_runtimeOS)-x64</_toolRuntimeRID>
- <_toolRuntimeRID Condition="'$(_toolRuntimeRID)' == ''">$(_runtimeOS)-$(_hostArch)</_toolRuntimeRID>
- <!-- We build linux-musl-arm on a ubuntu container, so we can't use the toolset build for alpine runtime. We need to use portable linux RID for our toolset in order to be able to use it. -->
- <_toolRuntimeRID Condition="'$(_runtimeOS)' == 'linux-musl' and $(TargetArchitecture.StartsWith('arm')) and !$(_hostArch.StartsWith('arm'))">linux-x64</_toolRuntimeRID>
-
- <!-- There are no WebAssembly tools, so use the default ones -->
- <_toolRuntimeRID Condition="'$(_runtimeOS)' == 'browser'">linux-x64</_toolRuntimeRID>
- <_toolRuntimeRID Condition="'$(_runtimeOS)' == 'browser' and $([MSBuild]::IsOSPlatform('WINDOWS'))">win-x64</_toolRuntimeRID>
- <_toolRuntimeRID Condition="'$(_runtimeOS)' == 'browser' and $([MSBuild]::IsOSPlatform('OSX'))">osx-x64</_toolRuntimeRID>
-
- <!-- There are no Android tools, so use the default ones -->
- <_toolRuntimeRID Condition="'$(_runtimeOS)' == 'android'">linux-x64</_toolRuntimeRID>
- <_toolRuntimeRID Condition="'$(_runtimeOS)' == 'android' and $([MSBuild]::IsOSPlatform('WINDOWS'))">win-x64</_toolRuntimeRID>
- <_toolRuntimeRID Condition="'$(_runtimeOS)' == 'android' and $([MSBuild]::IsOSPlatform('OSX'))">osx-x64</_toolRuntimeRID>
-
- <!-- There are no iOS or tvOS tools and it can be built on OSX only, so use that -->
- <_toolRuntimeRID Condition="'$(_runtimeOS)' == 'ios' or '$(_runtimeOS)' == 'tvos'">osx-x64</_toolRuntimeRID>
-
- <MicrosoftNetCoreIlasmPackageRuntimeId>$(_toolRuntimeRID)</MicrosoftNetCoreIlasmPackageRuntimeId>
-
- <_packageRID Condition="'$(PortableBuild)' == 'true'">$(_portableOS)-$(TargetArchitecture)</_packageRID>
- <PackageRID Condition="'$(PackageRID)' == ''">$(_packageRID)</PackageRID>
- <PackageRID Condition="'$(PackageRID)' == ''">$(_runtimeOS)-$(TargetArchitecture)</PackageRID>
-
- <_outputRID Condition="'$(TargetOS)' == 'windows'">win-$(TargetArchitecture)</_outputRID>
- <_outputRID Condition="'$(TargetOS)' == 'OSX'">osx-$(TargetArchitecture)</_outputRID>
- <_outputRID Condition="'$(TargetOS)' == 'Linux'">linux-$(TargetArchitecture)</_outputRID>
- <_outputRID Condition="'$(TargetOS)' == 'FreeBSD'">freebsd-$(TargetArchitecture)</_outputRID>
- <_outputRID Condition="'$(TargetOS)' == 'NetBSD'">netbsd-$(TargetArchitecture)</_outputRID>
- <_outputRID Condition="'$(TargetOS)' == 'illumos'">illumos-$(TargetArchitecture)</_outputRID>
- <_outputRID Condition="'$(TargetOS)' == 'Solaris'">solaris-$(TargetArchitecture)</_outputRID>
- <_outputRID Condition="'$(TargetOS)' == 'iOS'">ios-$(TargetArchitecture)</_outputRID>
- <_outputRID Condition="'$(TargetOS)' == 'tvOS'">tvos-$(TargetArchitecture)</_outputRID>
- <_outputRID Condition="'$(TargetOS)' == 'Android'">android-$(TargetArchitecture)</_outputRID>
- <_outputRID Condition="'$(TargetOS)' == 'Browser'">browser-$(TargetArchitecture)</_outputRID>
-
- <OutputRid Condition="'$(OutputRid)' == ''">$(PackageRID)</OutputRid>
- <OutputRid Condition="'$(PortableBuild)' == 'true'">$(_outputRID)</OutputRid>
- </PropertyGroup>
-
- <PropertyGroup Label="CalculateTargetOSName" Condition="'$(SkipInferTargetOSName)' != 'true'">
- <TargetsFreeBSD Condition="'$(TargetOS)' == 'FreeBSD'">true</TargetsFreeBSD>
- <Targetsillumos Condition="'$(TargetOS)' == 'illumos'">true</Targetsillumos>
- <TargetsSolaris Condition="'$(TargetOS)' == 'Solaris'">true</TargetsSolaris>
- <TargetsLinux Condition="'$(TargetOS)' == 'Linux' or '$(TargetOS)' == 'Android'">true</TargetsLinux>
- <TargetsNetBSD Condition="'$(TargetOS)' == 'NetBSD'">true</TargetsNetBSD>
- <TargetsOSX Condition="'$(TargetOS)' == 'OSX'">true</TargetsOSX>
- <TargetsiOS Condition="'$(TargetOS)' == 'iOS'">true</TargetsiOS>
- <TargetstvOS Condition="'$(TargetOS)' == 'tvOS'">true</TargetstvOS>
- <TargetsiOSSimulator Condition="'$(TargetsiOS)' == 'true' and ('$(TargetArchitecture)' == 'x64' or '$(TargetArchitecture)' == 'x86')">true</TargetsiOSSimulator>
- <TargetstvOSSimulator Condition="'$(TargetstvOS)' == 'true' and '$(TargetArchitecture)' == 'x64'">true</TargetstvOSSimulator>
- <TargetsAndroid Condition="'$(TargetOS)' == 'Android'">true</TargetsAndroid>
- <TargetsBrowser Condition="'$(TargetOS)' == 'Browser'">true</TargetsBrowser>
- <TargetsWindows Condition="'$(TargetOS)' == 'windows'">true</TargetsWindows>
- <TargetsUnix Condition="'$(TargetsFreeBSD)' == 'true' or '$(Targetsillumos)' == 'true' or '$(TargetsSolaris)' == 'true' or '$(TargetsLinux)' == 'true' or '$(TargetsNetBSD)' == 'true' or '$(TargetsOSX)' == 'true' or '$(TargetstvOS)' == 'true' or '$(TargetsiOS)' == 'true' or '$(TargetsAndroid)' == 'true'">true</TargetsUnix>
- </PropertyGroup>
-
- <!--Feature switches -->
- <PropertyGroup>
- <EnableNgenOptimization Condition="'$(EnableNgenOptimization)' == '' and '$(Configuration)' == 'Release'">true</EnableNgenOptimization>
- <!-- Enable NuGet static graph evaluation to optimize incremental restore -->
- <RestoreUseStaticGraphEvaluation>true</RestoreUseStaticGraphEvaluation>
- <!-- Turn off end of life target framework checks as we intentionally build older .NETCoreApp configurations. -->
- <CheckEolTargetFramework>false</CheckEolTargetFramework>
- </PropertyGroup>
-
- <Import Project="$(MSBuildThisFileDirectory)native\naming.props" />
-</Project>
diff --git a/eng/Signing.props b/eng/Signing.props
index 2d29ea85ea4..a0fb8225d1b 100644
--- a/eng/Signing.props
+++ b/eng/Signing.props
@@ -1,10 +1,5 @@
<Project InitialTargets="SetupFilesToSign">
- <!-- If this file was pulled in via prepare-artifacts.proj (a non-SDK project, these files are already
- imported. -->
- <Import Project="$(RepositoryEngineeringDir)Configurations.props" Condition="'$(PrepareArtifacts)' != 'true'" />
- <Import Project="$(RepositoryEngineeringDir)liveBuilds.targets" Condition="'$(PrepareArtifacts)' != 'true'" />
-
<PropertyGroup>
<!--
Windows arm/arm64 jobs don't have MSIs to sign. Keep it simple: allow not finding any matches
@@ -45,10 +40,10 @@
<FileExtensionSignInfo Include=".deb;.rpm" CertificateName="LinuxSign" />
</ItemGroup>
<ItemGroup Condition="'$(PrepareArtifacts)' == 'true' and '$(PostBuildSign)' == 'true'">
- <ItemsToSignWithPaths Include="$(DownloadDirectory)**/*.msi" />
- <ItemsToSignWithPaths Include="$(DownloadDirectory)**/*.exe" />
- <ItemsToSignWithPaths Include="$(DownloadDirectory)**/*.nupkg" />
- <ItemsToSignWithPaths Include="$(DownloadDirectory)**/*.zip" />
+ <ItemsToSignWithPaths Include="$(DownloadDirectory)**\*.msi" />
+ <ItemsToSignWithPaths Include="$(DownloadDirectory)**\*.exe" />
+ <ItemsToSignWithPaths Include="$(DownloadDirectory)**\*.nupkg" />
+ <ItemsToSignWithPaths Include="$(DownloadDirectory)**\*.zip" />
<ItemsToSignWithoutPaths Include="@(ItemsToSignWithPaths->'%(Filename)%(Extension)')" />
<ItemsToSignPostBuild Include="@(ItemsToSignWithoutPaths->Distinct())" />
@@ -61,8 +56,8 @@
</PropertyGroup>
<ItemGroup Condition="'$(SignDiagnostics)' == 'true'">
- <ItemsToSign Include="$(DiagnosticsFilesRoot)/**/mscordaccore*.dll" />
- <ItemsToSign Include="$(DiagnosticsFilesRoot)/**/mscordbi.dll" />
+ <ItemsToSign Include="$(DiagnosticsFilesRoot)\**\mscordaccore*.dll" />
+ <ItemsToSign Include="$(DiagnosticsFilesRoot)\**\mscordbi.dll" />
<!--
The DAC should be signed with the SHA2 cert (both long and short name).
We already add the short-name DAC above, so add the long-name DAC here.
diff --git a/eng/Versions.props b/eng/Versions.props
index ca6dc2805ec..ef177be01be 100644
--- a/eng/Versions.props
+++ b/eng/Versions.props
@@ -18,10 +18,6 @@
<UsingToolMicrosoftNetCompilers>true</UsingToolMicrosoftNetCompilers>
<UsingToolIbcOptimization>true</UsingToolIbcOptimization>
<UsingToolXliff>false</UsingToolXliff>
- <UsingToolNetFrameworkReferenceAssemblies>true</UsingToolNetFrameworkReferenceAssemblies>
- <!-- Blob storage container that has the "Latest" channel to publish to. -->
- <ContainerName>dotnet</ContainerName>
- <ChecksumContainerName>$(ContainerName)</ChecksumContainerName>
<!--
The NETStandard.Library targeting pack uses this patch version, which does not match the
runtime's. After publishing a new version of the NETStandard targeting pack in a servicing
@@ -124,8 +120,13 @@
<!-- Not auto-updated. -->
<MicrosoftDiaSymReaderNativeVersion>1.7.0</MicrosoftDiaSymReaderNativeVersion>
<SystemCommandLineVersion>2.0.0-beta1.20253.1</SystemCommandLineVersion>
+ <CommandLineParserVersion>2.2.0</CommandLineParserVersion>
<NETStandardLibraryRefVersion>2.1.0</NETStandardLibraryRefVersion>
<NetStandardLibraryVersion>2.0.3</NetStandardLibraryVersion>
+ <XunitPerformanceApiPackageVersion>1.0.0-beta-build0015</XunitPerformanceApiPackageVersion>
+ <MicrosoftDiagnosticsTracingTraceEventPackageVersion>2.0.49</MicrosoftDiagnosticsTracingTraceEventPackageVersion>
+ <MicrosoftDiagnosticsToolsRuntimeClientVersion>1.0.4-preview6.19326.1</MicrosoftDiagnosticsToolsRuntimeClientVersion>
+ <MicrosoftDiagnosticsNETCoreClientVersion>0.2.61701</MicrosoftDiagnosticsNETCoreClientVersion>
<!--
These are used as reference assemblies only, so they must not take a ProdCon/source-build
version. Insert "RefOnly" to avoid assignment via PVP.
@@ -164,26 +165,6 @@
<runtimeosx1012x64MicrosoftNETCoreRuntimeMonoLLVMSdkVersion>9.0.1-alpha.1.20621.1</runtimeosx1012x64MicrosoftNETCoreRuntimeMonoLLVMSdkVersion>
<runtimeosx1012x64MicrosoftNETCoreRuntimeMonoLLVMToolsVersion>9.0.1-alpha.1.20621.1</runtimeosx1012x64MicrosoftNETCoreRuntimeMonoLLVMToolsVersion>
</PropertyGroup>
- <!-- Package names -->
- <PropertyGroup>
- <WindowsCoreFxOptimizationDataPackage>optimization.windows_nt-x64.ibc.corefx</WindowsCoreFxOptimizationDataPackage>
- <LinuxCoreFxOptimizationDataPackage>optimization.linux-x64.ibc.corefx</LinuxCoreFxOptimizationDataPackage>
- <MicrosoftPrivateIntellisensePackage>microsoft.private.intellisense</MicrosoftPrivateIntellisensePackage>
- <MicrosoftDotNetXUnitConsoleRunnerPackage>Microsoft.DotNet.XUnitConsoleRunner</MicrosoftDotNetXUnitConsoleRunnerPackage>
- <MicrosoftNETCoreAppPackage>Microsoft.NETCore.App</MicrosoftNETCoreAppPackage>
- <WindowsOptimizationIBCCoreCLRPackage>optimization.windows_nt-x64.IBC.CoreCLR</WindowsOptimizationIBCCoreCLRPackage>
- <LinuxOptimizationIBCCoreCLRPackage>optimization.linux-x64.IBC.CoreCLR</LinuxOptimizationIBCCoreCLRPackage>
- <optimizationPGOCoreCLRPackage>optimization.PGO.CoreCLR</optimizationPGOCoreCLRPackage>
- <MicrosoftDotNetBuildTasksFeedPackage>Microsoft.DotNet.Build.Tasks.Feed</MicrosoftDotNetBuildTasksFeedPackage>
- <MicrosoftNETCoreTargetsPackage>Microsoft.NETCore.Targets</MicrosoftNETCoreTargetsPackage>
- <MicrosoftNETCoreRuntimeCoreCLRPackage>Microsoft.NETCore.Runtime.CoreCLR</MicrosoftNETCoreRuntimeCoreCLRPackage>
- <MicrosoftNETCoreRuntimeICUTransportPackage>Microsoft.NETCore.Runtime.ICU.Transport</MicrosoftNETCoreRuntimeICUTransportPackage>
- <!-- XmlDocFileRoot needs to be defined here since we use it in packaging.props and docs.targets.
- It also uses Arcade defined property NuGetPackageRoot, this is the only codepath shared in between
- packaging.props and docs.targets with arcade properties defined.
- -->
- <XmlDocFileRoot>$([MSBuild]::NormalizeDirectory('$(NuGetPackageRoot)', '$(MicrosoftPrivateIntellisensePackage)', '$(MicrosoftPrivateIntellisenseVersion)', 'IntellisenseFiles', 'net'))</XmlDocFileRoot>
- </PropertyGroup>
<!-- Override isolated build dependency versions with versions from Repo API. -->
<Import Project="$(DotNetPackageVersionPropsPath)" Condition="'$(DotNetPackageVersionPropsPath)' != ''" />
</Project>
diff --git a/eng/liveBuilds.targets b/eng/liveBuilds.targets
index aeee8b277f1..96181b33cfc 100644
--- a/eng/liveBuilds.targets
+++ b/eng/liveBuilds.targets
@@ -9,13 +9,13 @@
<!-- Honor the RuntimeArtifactsPath property. -->
<CoreCLRArtifactsPath Condition="'$(CoreCLRArtifactsPath)' == '' and '$(RuntimeArtifactsPath)' != ''">$([MSBuild]::NormalizeDirectory('$(RuntimeArtifactsPath)'))</CoreCLRArtifactsPath>
<MonoArtifactsPath Condition="'$(MonoArtifactsPath)' == '' and '$(RuntimeArtifactsPath)' != ''">$([MSBuild]::NormalizeDirectory('$(RuntimeArtifactsPath)'))</MonoArtifactsPath>
- <LibrariesTargetOSConfigurationArchitecture Condition="'$(LibrariesTargetOSConfigurationArchitecture)' == ''">$(LibrariesTargetOS)-$(LibrariesConfiguration)-$(TargetArchitecture)</LibrariesTargetOSConfigurationArchitecture>
+ <LibrariesTargetOSConfigurationArchitecture Condition="'$(LibrariesTargetOSConfigurationArchitecture)' == ''">$(TargetOS)-$(LibrariesConfiguration)-$(TargetArchitecture)</LibrariesTargetOSConfigurationArchitecture>
</PropertyGroup>
<!-- Set up default live asset paths if no overrides provided. -->
<PropertyGroup>
- <CoreCLRArtifactsPath Condition="'$(CoreCLRArtifactsPath)' == ''">$([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'artifacts', 'bin', 'coreclr', '$(CoreCLRTargetOS).$(TargetArchitecture).$(CoreCLRConfiguration)'))</CoreCLRArtifactsPath>
- <MonoArtifactsPath Condition="'$(MonoArtifactsPath)' == ''">$([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'artifacts', 'bin', 'mono', '$(MonoTargetOS).$(TargetArchitecture).$(MonoConfiguration)'))</MonoArtifactsPath>
+ <CoreCLRArtifactsPath Condition="'$(CoreCLRArtifactsPath)' == ''">$([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'artifacts', 'bin', 'coreclr', '$(TargetOS).$(TargetArchitecture).$(CoreCLRConfiguration)'))</CoreCLRArtifactsPath>
+ <MonoArtifactsPath Condition="'$(MonoArtifactsPath)' == ''">$([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'artifacts', 'bin', 'mono', '$(TargetOS).$(TargetArchitecture).$(MonoConfiguration)'))</MonoArtifactsPath>
<LibrariesArtifactsPath Condition="'$(LibrariesArtifactsPath)' == ''">$([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'artifacts'))</LibrariesArtifactsPath>
<LibrariesAllConfigurationsArtifactsPath Condition="'$(LibrariesAllConfigurationsArtifactsPath)' == ''">$([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'artifacts'))</LibrariesAllConfigurationsArtifactsPath>
</PropertyGroup>
diff --git a/eng/restore/docs.targets b/eng/restore/docs.targets
index 072564d9ac7..764bc5bbefb 100644
--- a/eng/restore/docs.targets
+++ b/eng/restore/docs.targets
@@ -1,7 +1,7 @@
<Project>
<ItemGroup>
- <PackageDownload Include="$(MicrosoftPrivateIntellisensePackage)" Version="[$(MicrosoftPrivateIntellisenseVersion)]" />
+ <PackageDownload Include="Microsoft.Private.Intellisense" Version="[$(MicrosoftPrivateIntellisenseVersion)]" />
</ItemGroup>
<!-- the intellisense package doesn't use nuget conventions so we need to select manually -->
@@ -43,4 +43,4 @@
</Target>
-</Project> \ No newline at end of file
+</Project>
diff --git a/eng/restore/optimizationData.targets b/eng/restore/optimizationData.targets
index a8466b7cd0c..9b431aa953a 100644
--- a/eng/restore/optimizationData.targets
+++ b/eng/restore/optimizationData.targets
@@ -1,10 +1,10 @@
<Project>
<ItemGroup>
- <IBCPackage Include="$(WindowsCoreFxOptimizationDataPackage)" Version="$(optimizationwindows_ntx64IBCCoreFxVersion)" />
- <IBCPackage Include="$(LinuxCoreFxOptimizationDataPackage)" Version="$(optimizationlinuxx64IBCCoreFxVersion)" />
- <IBCPackage Include="$(WindowsOptimizationIBCCoreCLRPackage)" Version="$(optimizationwindows_ntx64IBCCoreCLRVersion)" />
- <IBCPackage Include="$(LinuxOptimizationIBCCoreCLRPackage)" Version="$(optimizationlinuxx64IBCCoreCLRVersion)" />
+ <IBCPackage Include="optimization.windows_nt-x64.ibc.corefx" Version="$(optimizationwindows_ntx64IBCCoreFxVersion)" />
+ <IBCPackage Include="optimization.linux-x64.ibc.corefx" Version="$(optimizationlinuxx64IBCCoreFxVersion)" />
+ <IBCPackage Include="optimization.windows_nt-x64.IBC.CoreCLR" Version="$(optimizationwindows_ntx64IBCCoreCLRVersion)" />
+ <IBCPackage Include="optimization.linux-x64.IBC.CoreCLR" Version="$(optimizationlinuxx64IBCCoreCLRVersion)" />
<PackageDownload Include="@(IBCPackage)" Version="[%(Version)]" />
</ItemGroup>
diff --git a/eng/versioning.targets b/eng/versioning.targets
index 4a14c7e0c2d..2eede86003f 100644
--- a/eng/versioning.targets
+++ b/eng/versioning.targets
@@ -68,13 +68,6 @@
<!-- corefx has always added a description set to assembly name so include that here -->
<Description Condition="'$(Description)' == ''">$(AssemblyName)</Description>
-
- <!-- SDK sets product to assembly but we want it to be our product name -->
- <Product>Microsoft%AE .NET</Product>
-
- <!-- Use the .NET product branding version for informational version description -->
- <InformationalVersion>$(ProductVersion)</InformationalVersion>
- <InformationalVersion Condition="'$(VersionSuffix)' != ''">$(InformationalVersion)-$(VersionSuffix)</InformationalVersion>
</PropertyGroup>
<Target Name="_ComputeBuildToolsAssemblyInfoAttributes"
diff --git a/src/coreclr/Directory.Build.props b/src/coreclr/Directory.Build.props
index 76efd96a314..0117eb8dbe3 100644
--- a/src/coreclr/Directory.Build.props
+++ b/src/coreclr/Directory.Build.props
@@ -1,23 +1,25 @@
<Project>
-
<PropertyGroup>
- <SkipImportArcadeSdkFromRoot>true</SkipImportArcadeSdkFromRoot>
+ <InferPlatformFromTargetArchitecture>true</InferPlatformFromTargetArchitecture>
+
+ <!-- TODO: Clean-up casing and remove __BuildType to remove this block. -->
+ <Configuration Condition="'$(Configuration)' == ''">$(__BuildType)</Configuration>
+ <Configuration Condition="'$(Configuration)' == 'debug'">Debug</Configuration>
+ <Configuration Condition="'$(Configuration)' == 'release'">Release</Configuration>
+ <Configuration Condition="'$(Configuration)' == 'checked'">Checked</Configuration>
</PropertyGroup>
- <Import Project="..\..\Directory.Build.props" />
- <!-- Ensure our properties are set before Arcade defines defaults -->
- <Import Project="dir.common.props" />
- <Import Project="Sdk.props" Sdk="Microsoft.DotNet.Arcade.Sdk" />
+ <Import Project="..\..\Directory.Build.props" />
<PropertyGroup>
- <SignAssembly Condition="'$(UsingMicrosoftNETSdk)'!='true'">false</SignAssembly>
- </PropertyGroup>
+ <BaseIntermediateOutputPath>$([MSBuild]::NormalizeDirectory('$(ArtifactsObjDir)', 'coreclr', '$(MSBuildProjectName)'))</BaseIntermediateOutputPath>
+ <IntermediateOutputPath Condition="'$(PlatformName)' == 'AnyCPU'">$(BaseIntermediateOutputPath)$(Configuration)\</IntermediateOutputPath>
+ <IntermediateOutputPath Condition="'$(PlatformName)' != 'AnyCPU'">$(BaseIntermediateOutputPath)$(PlatformName)\$(Configuration)\</IntermediateOutputPath>
+ <ProjectDir>$(MSBuildThisFileDirectory)</ProjectDir>
+ <RuntimeBinDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'coreclr', '$(TargetOS).$(TargetArchitecture).$(Configuration)'))</RuntimeBinDir>
- <PropertyGroup>
+ <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
+ <SignAssembly Condition="'$(UsingMicrosoftNETSdk)' != 'true'">false</SignAssembly>
<CL_MPCount>$(NumberOfCores)</CL_MPCount>
</PropertyGroup>
- <PropertyGroup>
- <!-- Enables Strict mode for Roslyn compiler -->
- <Features>strict;nullablePublicOnly</Features>
- </PropertyGroup>
</Project>
diff --git a/src/coreclr/Directory.Build.targets b/src/coreclr/Directory.Build.targets
index 09081a3d612..6d5b00ba7c4 100644
--- a/src/coreclr/Directory.Build.targets
+++ b/src/coreclr/Directory.Build.targets
@@ -1,18 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
<Project>
<Import Project="..\..\Directory.Build.targets" />
- <Import Project="Sdk.targets" Sdk="Microsoft.DotNet.Arcade.Sdk" />
-
- <PropertyGroup>
- <!-- SDK sets product to assembly but we want it to be our product name -->
- <Product>Microsoft%AE .NET</Product>
-
- <!-- Use the .NET product branding version for informational version description -->
- <InformationalVersion>$(ProductVersion)</InformationalVersion>
- <InformationalVersion Condition="'$(VersionSuffix)' != ''">$(InformationalVersion)-$(VersionSuffix)</InformationalVersion>
- </PropertyGroup>
-
<ItemGroup>
<BuiltBinary Include="$(TargetPath)" />
</ItemGroup>
diff --git a/src/coreclr/System.Private.CoreLib/System.Private.CoreLib.csproj b/src/coreclr/System.Private.CoreLib/System.Private.CoreLib.csproj
index 06390a99641..a2a5b776f4c 100644
--- a/src/coreclr/System.Private.CoreLib/System.Private.CoreLib.csproj
+++ b/src/coreclr/System.Private.CoreLib/System.Private.CoreLib.csproj
@@ -8,10 +8,6 @@
<EnsureRuntimePackageDependencies>false</EnsureRuntimePackageDependencies>
<TargetFramework>$(NetCoreAppCurrent)</TargetFramework>
- <!-- Ensure a portable PDB is emitted for the project. A PDB is needed for crossgen. -->
- <DebugType>Portable</DebugType>
- <DebugSymbols>true</DebugSymbols>
-
<!-- Force System.Private.CoreLib.dll into a special IL output directory -->
<OutputPath>$(RuntimeBinDir)/IL/</OutputPath>
<Configurations>Debug;Release;Checked</Configurations>
@@ -42,6 +38,8 @@
<!-- These prevent the default MsBuild targets from referencing System.dll and mscorlib.dll -->
<ExcludeMscorlibFacade>true</ExcludeMscorlibFacade>
<RuntimeMetadataVersion>v4.0.30319</RuntimeMetadataVersion>
+ <!-- Override InformationalVersion during servicing as it's returned via public api. -->
+ <InformationalVersion Condition="'$(PreReleaseVersionLabel)' == 'servicing'">$(ProductVersion)</InformationalVersion>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<NoWarn>$(NoWarn),0419,0649,CA2249,CA1830</NoWarn>
<Nullable>enable</Nullable>
@@ -91,7 +89,6 @@
<!-- Signing -->
<PropertyGroup>
- <SignAssembly>true</SignAssembly>
<StrongNameKeyId>SilverlightPlatform</StrongNameKeyId>
</PropertyGroup>
diff --git a/src/coreclr/crossgen-corelib.proj b/src/coreclr/crossgen-corelib.proj
index f1e9eb80fa6..fadc1f514c8 100644
--- a/src/coreclr/crossgen-corelib.proj
+++ b/src/coreclr/crossgen-corelib.proj
@@ -1,8 +1,11 @@
-<Project>
- <Import Project="Directory.Build.props" />
- <Import Project="Directory.Build.targets" />
-
- <Target Name="Build">
+<Project Sdk="Microsoft.Build.NoTargets">
+ <PropertyGroup>
+ <!-- NoTargets SDK needs a TFM set. So we used the latest .NETCoreApp supported one. -->
+ <TargetFramework>$(NetCoreAppToolCurrent)</TargetFramework>
+ </PropertyGroup>
+
+ <Target Name="InvokeCrossgen"
+ AfterTargets="Build">
<PropertyGroup>
<!-- Default for using Crossgen2 when not set externally -->
<UseCrossgen2 Condition="'$(UseCrossgen2)' == ''">false</UseCrossgen2>
@@ -105,8 +108,4 @@
<Message Importance="High" Text="Crossgenning of System.Private.CoreLib succeeded. Finished at $(TIME)" />
<Message Importance="High" Text="Product binaries are available at $(BinDir)" />
</Target>
-
- <Target Name="Restore" />
- <Target Name="Test" />
- <Target Name="Pack" />
</Project>
diff --git a/src/coreclr/dependencies.props b/src/coreclr/dependencies.props
deleted file mode 100644
index 31713f8f725..00000000000
--- a/src/coreclr/dependencies.props
+++ /dev/null
@@ -1,44 +0,0 @@
-<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-
- <!-- Source of truth for dependency tooling: the commit hash of the dotnet/versions master branch as of the last auto-upgrade. -->
- <PropertyGroup>
- <CoreClrCurrentRef>5d3c9a7c54c1c59b764de0e2dfb6bbb4ce29476c</CoreClrCurrentRef>
- </PropertyGroup>
-
- <!-- Tests/infrastructure dependency versions. -->
- <PropertyGroup>
- <XunitPerformanceApiPackageVersion>1.0.0-beta-build0015</XunitPerformanceApiPackageVersion>
- <MicrosoftDiagnosticsTracingTraceEventPackageVersion>2.0.49</MicrosoftDiagnosticsTracingTraceEventPackageVersion>
- <MicrosoftDiagnosticsToolsRuntimeClientVersion>1.0.4-preview6.19326.1</MicrosoftDiagnosticsToolsRuntimeClientVersion>
- <MicrosoftDiagnosticsNETCoreClientVersion>0.2.61701</MicrosoftDiagnosticsNETCoreClientVersion>
- <CommandLineParserVersion>2.2.0</CommandLineParserVersion>
-
- <!-- Scenario tests install this version of Microsoft.NetCore.App, then patch coreclr binaries via xcopy. At the moment it is
- updated manually whenever breaking changes require it to move forward, but it would be nice if we could update it automatically
- as we do with many of the package versions above -->
- <BaselineMicrosoftNetCoreAppPackageVersion>2.1.0-preview3-26416-01</BaselineMicrosoftNetCoreAppPackageVersion>
- </PropertyGroup>
-
- <!-- Package dependency verification/auto-upgrade configuration. -->
- <PropertyGroup>
- <BaseDotNetBuildInfo>build-info/dotnet/</BaseDotNetBuildInfo>
- <DependencyBranch>master</DependencyBranch>
- <CurrentRefXmlPath>$(MSBuildThisFileFullPath)</CurrentRefXmlPath>
- </PropertyGroup>
-
- <ItemGroup>
- <RemoteDependencyBuildInfo Include="CoreClr">
- <BuildInfoPath>$(BaseDotNetBuildInfo)coreclr/$(DependencyBranch)</BuildInfoPath>
- <CurrentRef>$(CoreClrCurrentRef)</CurrentRef>
- </RemoteDependencyBuildInfo>
-
- <DependencyBuildInfo Include="@(RemoteDependencyBuildInfo)">
- <RawVersionsBaseUrl>https://raw.githubusercontent.com/dotnet/versions</RawVersionsBaseUrl>
- </DependencyBuildInfo>
- </ItemGroup>
-
- <!-- Override isolated build dependency versions with versions from Repo API. -->
- <Import Project="$(DotNetPackageVersionPropsPath)"
- Condition="'$(DotNetPackageVersionPropsPath)' != ''" />
-
-</Project>
diff --git a/src/coreclr/dir.common.props b/src/coreclr/dir.common.props
deleted file mode 100644
index ffd190f9947..00000000000
--- a/src/coreclr/dir.common.props
+++ /dev/null
@@ -1,56 +0,0 @@
-<Project>
-
- <!-- This file contains build properties that apply to product
- projects and test projects. It's imported by
- tests/dir.common.props, and the global dir.props. -->
-
- <PropertyGroup>
- <CoreclrDir>$(MSBuildThisFileDirectory)</CoreclrDir>
- </PropertyGroup>
-
- <!-- Set default Configuration and Platform -->
- <PropertyGroup>
- <!-- TODO: Cleanup use of __BuildArch and __BuildType in the CI scripts -->
-
- <TargetArchitecture Condition="'$(TargetArchitecture)' == ''">$(__BuildArch)</TargetArchitecture>
- <TargetArchitecture Condition="'$(TargetArchitecture)'==''">x64</TargetArchitecture>
-
- <Configuration Condition="'$(Configuration)'==''">$(__BuildType)</Configuration>
- <Configuration Condition="'$(Configuration)'==''">Debug</Configuration>
- <Configuration Condition="'$(Configuration)' == 'debug'">Debug</Configuration>
- <Configuration Condition="'$(Configuration)' == 'release'">Release</Configuration>
- <Configuration Condition="'$(Configuration)' == 'checked'">Checked</Configuration>
-
- <Platform Condition="'$(Platform)' == ''">$(TargetArchitecture)</Platform>
-
- <PlatformConfigPathPart>$(TargetOS).$(TargetArchitecture).$(Configuration)</PlatformConfigPathPart>
- </PropertyGroup>
-
- <!-- Common properties -->
- <PropertyGroup>
- <ProjectDir>$(MSBuildThisFileDirectory)</ProjectDir>
-
- <BaseIntermediateOutputPath>$(RepoRoot)artifacts\obj\coreclr\$(MSBuildProjectName)\</BaseIntermediateOutputPath>
-
- <SourceDir>$(ProjectDir)src\</SourceDir>
- <RuntimeBinDir>$(ArtifactsDir)bin\coreclr\$(PlatformConfigPathPart)\</RuntimeBinDir>
-
- <!-- We don't append back slash because this path is used by nuget.exe as output directory and it
- fails to write packages to it if the path contains the forward slash.
- -->
- <PackagesBinDir>$(RuntimeBinDir).nuget\</PackagesBinDir>
- </PropertyGroup>
-
- <!-- Set the kind of PDB to Portable -->
- <PropertyGroup>
- <DebugType Condition="'$(DebugType)' == ''">Portable</DebugType>
- </PropertyGroup>
-
- <!-- Output paths -->
- <PropertyGroup>
- <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
- </PropertyGroup>
-
- <!-- Provides properties for dependency versions and configures dependency verification/auto-upgrade. -->
- <Import Project="$(MSBuildThisFileDirectory)dependencies.props" />
-</Project>
diff --git a/src/coreclr/runtime.proj b/src/coreclr/runtime.proj
index f92e3864633..28f3555eafe 100644
--- a/src/coreclr/runtime.proj
+++ b/src/coreclr/runtime.proj
@@ -1,8 +1,11 @@
-<Project>
- <Import Project="Directory.Build.props" />
- <Import Project="Directory.Build.targets" />
+<Project Sdk="Microsoft.Build.NoTargets">
+ <PropertyGroup>
+ <!-- NoTargets SDK needs a TFM set. So we used the latest .NETCoreApp supported one. -->
+ <TargetFramework>$(NetCoreAppToolCurrent)</TargetFramework>
+ </PropertyGroup>
- <Target Name="Build">
+ <Target Name="BuildRuntime"
+ AfterTargets="Build">
<ItemGroup>
<_CoreClrBuildArg Condition="'$(TargetArchitecture)' != ''" Include="-$(TargetArchitecture)" />
<_CoreClrBuildArg Include="$(CMakeArgs)" />
@@ -36,10 +39,7 @@
</PropertyGroup>
<!-- Use IgnoreStandardErrorWarningFormat because Arcade sets WarnAsError and there's an existing warning in the native build. -->
- <Exec Command="&quot;$(MSBuildThisFileDirectory)$(_CoreClrBuildScript)&quot; @(_CoreClrBuildArg->'%(Identity)',' ')" IgnoreStandardErrorWarningFormat="true" />
+ <Exec Command="&quot;$(MSBuildThisFileDirectory)$(_CoreClrBuildScript)&quot; @(_CoreClrBuildArg->'%(Identity)',' ')"
+ IgnoreStandardErrorWarningFormat="true" />
</Target>
-
- <Target Name="Restore" />
- <Target Name="Test" />
- <Target Name="Pack" />
</Project>
diff --git a/src/installer/Directory.Build.props b/src/installer/Directory.Build.props
index 15472af36dc..6506d42f9bb 100644
--- a/src/installer/Directory.Build.props
+++ b/src/installer/Directory.Build.props
@@ -1,5 +1,4 @@
<Project>
-
<Import Project="..\..\Directory.Build.props" />
<!--
@@ -24,18 +23,9 @@
<!-- Platform detection -->
<PropertyGroup>
- <RunningOnUnix Condition="'$(OS)'!='Windows_NT'">true</RunningOnUnix>
- </PropertyGroup>
-
- <PropertyGroup>
- <TargetArchitecture Condition="'$(TargetArchitecture)' == '' AND '$(BuildArchitecture)' == 'arm64'">$(BuildArchitecture)</TargetArchitecture>
- <TargetArchitecture Condition="'$(TargetArchitecture)' == ''">x64</TargetArchitecture>
- <Platform Condition="'$(Platform)'==''">$(TargetArchitecture)</Platform>
- </PropertyGroup>
-
-
- <PropertyGroup>
- <DebugType Condition="'$(DebugType)' == ''">Portable</DebugType>
+ <RunningOnUnix Condition="'$(OS)' != 'Windows_NT'">true</RunningOnUnix>
+ <!-- Don't set platform too early as test app paths are currently hardcoded. -->
+ <Platform Condition="'$(Platform)' == ''">$(TargetArchitecture)</Platform>
</PropertyGroup>
<PropertyGroup Condition="'$(DisableSourceLink)' == 'true'">
@@ -46,14 +36,10 @@
<!-- Set up Default symbol and optimization for Configuration -->
<PropertyGroup Condition="'$(Configuration)'=='Debug'">
- <DebugSymbols Condition="'$(DebugSymbols)' == ''">true</DebugSymbols>
- <Optimize Condition="'$(Optimize)' == ''">false</Optimize>
<DefineConstants>$(DefineConstants),DEBUG,TRACE</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)' == 'Release'">
- <DebugSymbols Condition="'$(DebugSymbols)' == ''">true</DebugSymbols>
- <Optimize Condition="'$(Optimize)' == ''">true</Optimize>
<DefineConstants>$(DefineConstants),TRACE</DefineConstants>
</PropertyGroup>
diff --git a/src/installer/managed/CommonManaged.props b/src/installer/managed/CommonManaged.props
index 803db57b7c9..573218cf62d 100644
--- a/src/installer/managed/CommonManaged.props
+++ b/src/installer/managed/CommonManaged.props
@@ -15,7 +15,6 @@
<PropertyGroup>
<!-- Historically, the key for the managed projects is the AspNetCore key Arcade carries. -->
<StrongNameKeyId>MicrosoftAspNetCore</StrongNameKeyId>
- <SignAssembly>true</SignAssembly>
<PublicSign Condition=" '$(OS)' != 'Windows_NT' ">true</PublicSign>
</PropertyGroup>
</Project>
diff --git a/src/installer/publish/Directory.Build.props b/src/installer/publish/Directory.Build.props
index de832e52530..982caf65d4f 100644
--- a/src/installer/publish/Directory.Build.props
+++ b/src/installer/publish/Directory.Build.props
@@ -13,6 +13,10 @@
</PropertyGroup>
<PropertyGroup>
+ <!-- Blob storage container that has the "Latest" channel to publish to. -->
+ <ContainerName>dotnet</ContainerName>
+ <ChecksumContainerName>$(ContainerName)</ChecksumContainerName>
+
<BaseUrl Condition="'$(BaseUrl)' == ''">https://dotnetcli.blob.core.windows.net/</BaseUrl>
<ChecksumExtension>.sha512</ChecksumExtension>
@@ -24,7 +28,7 @@
</PropertyGroup>
<ItemGroup>
- <PackageReference Include="$(MicrosoftDotNetBuildTasksFeedPackage)" Version="$(MicrosoftDotNetBuildTasksFeedVersion)" />
+ <PackageReference Include="Microsoft.DotNet.Build.Tasks.Feed" Version="$(MicrosoftDotNetBuildTasksFeedVersion)" />
<PackageReference Include="Microsoft.DotNet.VersionTools.Tasks" Version="$(MicrosoftDotNetVersionToolsTasksVersion)" />
</ItemGroup>
diff --git a/src/installer/tests/Assets/TestUtils/TestProjects.props b/src/installer/tests/Assets/TestUtils/TestProjects.props
index 72150d0f0b5..969dc3cc012 100644
--- a/src/installer/tests/Assets/TestUtils/TestProjects.props
+++ b/src/installer/tests/Assets/TestUtils/TestProjects.props
@@ -2,23 +2,16 @@
<!--
This file is imported by the test projects from the artifacts dir or the src/tests dir. It
provides basic info needed for restore and build with the vanilla SDK.
- Since this file doesn't include the Arcade SDK, we need to find the root eng folder
- in a different manner than using the $(RepositoryEngineeringDir) variable.
-->
- <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory),global.json))\eng\Configurations.props" />
-
<PropertyGroup>
+ <NetCoreAppCurrent>net6.0</NetCoreAppCurrent>
+ <!-- Turn off end of life target framework checks as we intentionally build older .NETCoreApp configurations. -->
+ <CheckEolTargetFramework>false</CheckEolTargetFramework>
<!--
If the test project needs an app host, use the one for the test target RID. This fixes
win-x86 tests that assumed a win-x64 app host RID based on the runner SDK.
-->
<AppHostRuntimeIdentifier>$(TestTargetRid)</AppHostRuntimeIdentifier>
-
-
- <!-- Default AssemblyVersion for test projects. We need to set it as it is set for all projects
- in Versions.props to match our product version scheme and test projects are sensitive to assembly versions -->
- <AssemblyVersion>1.0.0.0</AssemblyVersion>
</PropertyGroup>
-
-</Project>
+</Project> \ No newline at end of file
diff --git a/src/installer/tests/Assets/TestUtils/TestProjects.targets b/src/installer/tests/Assets/TestUtils/TestProjects.targets
index baecdb67e01..175962ee44e 100644
--- a/src/installer/tests/Assets/TestUtils/TestProjects.targets
+++ b/src/installer/tests/Assets/TestUtils/TestProjects.targets
@@ -4,7 +4,7 @@
provides basic info needed for restore and build with the vanilla SDK.
-->
<PropertyGroup>
- <NETCoreAppMaximumVersion>$(NetCoreAppCurrentVersion)</NETCoreAppMaximumVersion>
+ <NETCoreAppMaximumVersion>6.0</NETCoreAppMaximumVersion>
</PropertyGroup>
<!--
We are using to best emulate the live version. This should be removed once we start using the live bits.
@@ -28,4 +28,4 @@
AppHostRuntimeIdentifiers="linux-arm;linux-arm64;linux-musl-arm64;linux-musl-x64;linux-x64;osx-x64;rhel.6-x64;tizen.4.0.0-armel;tizen.5.0.0-armel;win-arm;win-arm64;win-x64;win-x86"
TargetFramework="net6.0" />
</ItemGroup>
-</Project>
+</Project> \ No newline at end of file
diff --git a/src/libraries/Directory.Build.props b/src/libraries/Directory.Build.props
index 49def0855af..d551bed727e 100644
--- a/src/libraries/Directory.Build.props
+++ b/src/libraries/Directory.Build.props
@@ -1,19 +1,20 @@
<Project TreatAsLocalProperty="TargetOS">
<PropertyGroup>
- <SkipImportArcadeSdkFromRoot>true</SkipImportArcadeSdkFromRoot>
<SkipInferTargetOSName>true</SkipInferTargetOSName>
+ <DisableArcadeTestFramework>true</DisableArcadeTestFramework>
+
+ <!-- Set OutDirName to change BaseOutputPath and BaseIntermediateOutputPath to include the ref subfolder. -->
+ <_sepChar>$([System.IO.Path]::DirectorySeparatorChar)</_sepChar>
+ <IsReferenceAssembly Condition="$(MSBuildProjectFullPath.Contains('$(_sepChar)ref$(_sepChar)'))">true</IsReferenceAssembly>
+ <OutDirName Condition="'$(IsReferenceAssembly)' == 'true'">$(MSBuildProjectName)$(_sepChar)ref</OutDirName>
</PropertyGroup>
+
<Import Project="..\..\Directory.Build.props" />
<Import Project="NetCoreAppLibrary.props" />
- <PropertyGroup Condition="$(MSBuildProjectName.StartsWith('Microsoft.Extensions.'))">
- <IsAspNetCoreApp>true</IsAspNetCoreApp>
- </PropertyGroup>
-
<PropertyGroup>
<BeforeTargetFrameworkInferenceTargets>$(RepositoryEngineeringDir)BeforeTargetFrameworkInference.targets</BeforeTargetFrameworkInferenceTargets>
<IsSourceProject>$([System.Text.RegularExpressions.Regex]::IsMatch($(MSBuildProjectDirectory), 'src%24'))</IsSourceProject>
- <IsReferenceAssembly Condition="'$(IsReferenceAssembly)' == '' and ($(MSBuildProjectFullPath.Contains('\ref\')) or $(MSBuildProjectFullPath.Contains('/ref/')))">true</IsReferenceAssembly>
<RuntimeGraph>$(LibrariesProjectRoot)OSGroups.json</RuntimeGraph>
<ShouldUnsetParentConfigurationAndPlatform>false</ShouldUnsetParentConfigurationAndPlatform>
<!-- Remove once is fixed: https://github.com/dotnet/roslyn/issues/42344 -->
@@ -23,12 +24,11 @@
<Import Sdk="Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk" Project="Sdk.props" />
<PropertyGroup>
- <!-- Initialize BuildSettings from the individual properties. -->
- <Configuration Condition="'$(Configuration)' == ''">Debug</Configuration>
<BuildTargetFramework Condition="'$(BuildTargetFramework)' == '' and '$(TargetFramework)' != ''">$([System.Text.RegularExpressions.Regex]::Replace('$(TargetFramework)', '(-[^;]+)', ''))</BuildTargetFramework>
<!-- Build all .NET Framework configurations when net48 is passed in. This is for convenience. -->
<AdditionalBuildTargetFrameworks Condition="'$(BuildTargetFramework)' == 'net48'">net45;net451;net452;net46;net461;net462;net47;net471;net472</AdditionalBuildTargetFrameworks>
<AdditionalBuildTargetFrameworks Condition="'$(DotNetBuildFromSource)' == 'true' and '$(BuildAllProjects)' == 'true'">$(AdditionalBuildTargetFrameworks);netstandard2.0</AdditionalBuildTargetFrameworks>
+ <!-- Initialize BuildSettings from the individual properties. -->
<BuildSettings>$(BuildTargetFramework)-$(TargetOS)-$(Configuration)-$(TargetArchitecture)</BuildSettings>
<BuildSettings Condition="'$(BuildTargetFramework)' == ''">$(NetCoreAppCurrent)-$(TargetOS)-$(Configuration)-$(TargetArchitecture)</BuildSettings>
</PropertyGroup>
@@ -63,11 +63,6 @@
</PropertyGroup>
<PropertyGroup>
- <!-- By default make all libraries to be AnyCPU but individual projects can override it if they need to -->
- <Platform>AnyCPU</Platform>
- </PropertyGroup>
-
- <PropertyGroup>
<RunApiCompatForSrc>$(IsSourceProject)</RunApiCompatForSrc>
<RunMatchingRefApiCompat>$(IsSourceProject)</RunMatchingRefApiCompat>
<ApiCompatEnforceOptionalRules>true</ApiCompatEnforceOptionalRules>
@@ -85,39 +80,17 @@
<BinPlaceTestSharedFramework Condition="'$(BuildingNETCoreAppVertical)' == 'true'">true</BinPlaceTestSharedFramework>
</PropertyGroup>
- <!--
- Import the arcade sdk with these requirements.
- After:
- Configuration setup
-
- Before:
- DebugType needs to be not be set to embedded at least for facades
- OutputPath setup
- -->
- <PropertyGroup>
- <DisableArcadeTestFramework>true</DisableArcadeTestFramework>
- </PropertyGroup>
-
- <Import Project="Sdk.props" Sdk="Microsoft.DotNet.Arcade.Sdk" />
-
<!-- Import packaging props -->
<Import Project="$(RepositoryEngineeringDir)packaging.props" />
<PropertyGroup>
<RefRootPath>$([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'ref'))</RefRootPath>
- <!-- Assembly bin directory where implementation and ref output are placed -->
- <AssemblyBinDirOutputPath Condition="'$(ReferenceAssemblyOutputPath)' == ''">$([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', '$(MSBuildProjectName)'))</AssemblyBinDirOutputPath>
- <BaseIntermediateOutputPath>$([MSBuild]::NormalizeDirectory('$(ArtifactsObjDir)', '$(MSBuildProjectName)'))</BaseIntermediateOutputPath>
- <BaseIntermediateOutputPath Condition="'$(IsReferenceAssembly)' == 'true'">$([MSBuild]::NormalizeDirectory('$(ArtifactsObjDir)', '$(MSBuildProjectName)', 'ref'))</BaseIntermediateOutputPath>
- <BaseOutputPath Condition="'$(IsReferenceAssembly)' == 'true'">$([MSBuild]::NormalizeDirectory('$(AssemblyBinDirOutputPath)', 'ref'))</BaseOutputPath>
</PropertyGroup>
+ <Import Project="$(RepositoryEngineeringDir)referenceAssemblies.props" Condition="'$(IsReferenceAssembly)' == 'true'" />
<Import Project="$(RepositoryEngineeringDir)targetframeworksuffix.props" Condition="'$(DesignTimeBuild)' != 'true'" />
<PropertyGroup>
- <!-- Always pass portable to override arcade sdk which uses embedded for local builds -->
- <DebugType>portable</DebugType>
-
<!-- Default any assembly not specifying a key to use the Open Key -->
<StrongNameKeyId>Open</StrongNameKeyId>
<!-- Microsoft.Extensions projects have a separate StrongNameKeyId -->
@@ -127,34 +100,14 @@
<EnableSourceLink Condition="'$(ContinuousIntegrationBuild)' != 'true' and '$(OfficialBuildId)' == ''">false</EnableSourceLink>
</PropertyGroup>
- <!-- Set up Default symbol and optimization for Configuration -->
- <Choose>
- <When Condition="'$(Configuration)' == 'Debug'">
- <PropertyGroup>
- <DebugSymbols Condition="'$(DebugSymbols)' == ''">true</DebugSymbols>
- <Optimize Condition="'$(Optimize)' == ''">false</Optimize>
- <DefineConstants>$(DefineConstants),TRACE,DEBUG</DefineConstants>
- </PropertyGroup>
- </When>
- <When Condition="'$(Configuration)' == 'Release'">
- <PropertyGroup>
- <DebugSymbols Condition="'$(DebugSymbols)' == ''">true</DebugSymbols>
- <Optimize Condition="'$(Optimize)' == ''">true</Optimize>
- <DefineConstants>$(DefineConstants),TRACE</DefineConstants>
- </PropertyGroup>
- </When>
- </Choose>
-
<!-- Disable some standard properties for building our projects -->
<PropertyGroup>
- <DisableImplicitConfigurationDefines>true</DisableImplicitConfigurationDefines>
<!-- We can't generate an apphost without restoring the targeting pack. -->
<UseAppHost>false</UseAppHost>
</PropertyGroup>
<!-- Language configuration -->
<PropertyGroup>
- <Features>strict;nullablePublicOnly</Features>
<!-- We decided to keep this disabled by default: https://github.com/dotnet/runtime/issues/15152 -->
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<GenFacadesIgnoreBuildAndRevisionMismatch>true</GenFacadesIgnoreBuildAndRevisionMismatch>
@@ -207,9 +160,6 @@
<CommonTestPath>$([MSBuild]::NormalizeDirectory('$(CommonPathRoot)', 'tests'))</CommonTestPath>
</PropertyGroup>
- <!-- Import it at the end of the props file to override the OutputPath for reference assemblies and use common directory props -->
- <Import Project="$(RepositoryEngineeringDir)referenceAssemblies.props" Condition="'$(IsReferenceAssembly)' == 'true'" />
-
<PropertyGroup>
<DisableProjectRestore Condition="'$(MSBuildProjectExtension)' == '.pkgproj'">true</DisableProjectRestore>
</PropertyGroup>
diff --git a/src/libraries/Directory.Build.targets b/src/libraries/Directory.Build.targets
index 1ff4f7f0bff..1a4b0210028 100644
--- a/src/libraries/Directory.Build.targets
+++ b/src/libraries/Directory.Build.targets
@@ -1,5 +1,14 @@
<Project InitialTargets="UpdateProjectReferencesWithAttributes">
+ <PropertyGroup>
+ <!-- Override strong name key to default to Open for test projects,
+ Tests which wish to control this should set TestStrongNameKeyId. -->
+ <TestStrongNameKeyId Condition="'$(TestStrongNameKeyId)' == '' and $(MSBuildProjectName.StartsWith('Microsoft.Extensions.'))">MicrosoftAspNetCore</TestStrongNameKeyId>
+ <TestStrongNameKeyId Condition="'$(TestStrongNameKeyId)' == ''">Open</TestStrongNameKeyId>
+ <StrongNameKeyId Condition="'$(IsTestProject)' == 'true' or '$(IsTestSupportProject)' == 'true'">$(TestStrongNameKeyId)</StrongNameKeyId>
+ </PropertyGroup>
+ <!-- resources.targets need to be imported before the Arcade SDK. -->
+ <Import Project="$(RepositoryEngineeringDir)resources.targets" />
<Import Project="..\..\Directory.Build.targets" />
<PropertyGroup>
@@ -30,26 +39,6 @@
('$(IsReferenceAssembly)' == 'true' or '$(IsSourceProject)' == 'true')">true</DisableImplicitAssemblyReferences>
</PropertyGroup>
- <PropertyGroup>
- <!-- Override strong name key to default to Open for test projects,
- Tests which wish to control this should set TestStrongNameKeyId. -->
- <TestStrongNameKeyId Condition="'$(TestStrongNameKeyId)' == '' and $(MSBuildProjectName.StartsWith('Microsoft.Extensions.'))">MicrosoftAspNetCore</TestStrongNameKeyId>
- <TestStrongNameKeyId Condition="'$(TestStrongNameKeyId)' == ''">Open</TestStrongNameKeyId>
- <StrongNameKeyId Condition="'$(IsTestProject)' == 'true' or '$(IsTestSupportProject)' == 'true'">$(TestStrongNameKeyId)</StrongNameKeyId>
- </PropertyGroup>
-
- <Import Project="$(RepositoryEngineeringDir)resources.targets" />
- <Import Project="Sdk.targets" Sdk="Microsoft.DotNet.Arcade.Sdk" />
-
- <PropertyGroup>
- <ArtifactsPackagesDir>$([MSBuild]::NormalizePath('$(ArtifactsDir)', 'packages', '$(Configuration)'))</ArtifactsPackagesDir>
- <ArtifactsShippingPackagesDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsPackagesDir)', 'Shipping'))</ArtifactsShippingPackagesDir>
- <ArtifactsNonShippingPackagesDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsPackagesDir)', 'NonShipping'))</ArtifactsNonShippingPackagesDir>
-
- <PackageOutputPath Condition="'$(IsShippingPackage)' == 'true'">$(ArtifactsShippingPackagesDir)</PackageOutputPath>
- <PackageOutputPath Condition="'$(IsShippingPackage)' != 'true'">$(ArtifactsNonShippingPackagesDir)</PackageOutputPath>
- </PropertyGroup>
-
<Import Project="$(RepositoryEngineeringDir)versioning.targets" />
<!-- Libraries-specific binplacing properties -->
@@ -286,5 +275,4 @@
</ItemGroup>
</When>
</Choose>
-
</Project>
diff --git a/src/libraries/NetCoreAppLibrary.props b/src/libraries/NetCoreAppLibrary.props
index 6bd027958ad..bbdbe325e4b 100644
--- a/src/libraries/NetCoreAppLibrary.props
+++ b/src/libraries/NetCoreAppLibrary.props
@@ -160,4 +160,7 @@
<NetCoreAppLibrary Include="$(NetCoreAppLibrary)" />
<NetCoreAppLibraryNoReference Include="$(NetCoreAppLibraryNoReference)" />
</ItemGroup>
+ <PropertyGroup>
+ <IsAspNetCoreApp Condition="$(MSBuildProjectName.StartsWith('Microsoft.Extensions.'))">true</IsAspNetCoreApp>
+ </PropertyGroup>
</Project> \ No newline at end of file
diff --git a/src/libraries/System.Private.DataContractSerialization/src/System.Private.DataContractSerialization.csproj b/src/libraries/System.Private.DataContractSerialization/src/System.Private.DataContractSerialization.csproj
index 0eec0d2fdb8..24b46e79bd9 100644
--- a/src/libraries/System.Private.DataContractSerialization/src/System.Private.DataContractSerialization.csproj
+++ b/src/libraries/System.Private.DataContractSerialization/src/System.Private.DataContractSerialization.csproj
@@ -2,7 +2,6 @@
<PropertyGroup>
<NoWarn>$(NoWarn);1634;1691;649</NoWarn>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
- <DebugSymbols>true</DebugSymbols>
<DefineConstants>$(DefineConstants);FEATURE_SERIALIZATION</DefineConstants>
<TargetFrameworks>$(NetCoreAppCurrent)</TargetFrameworks>
<!-- Too much private reflection. Do not bother with trimming -->
diff --git a/src/libraries/System.Runtime.CompilerServices.Unsafe/src/System.Runtime.CompilerServices.Unsafe.ilproj b/src/libraries/System.Runtime.CompilerServices.Unsafe/src/System.Runtime.CompilerServices.Unsafe.ilproj
index dbfb6fb94c1..71f1a02ea6a 100644
--- a/src/libraries/System.Runtime.CompilerServices.Unsafe/src/System.Runtime.CompilerServices.Unsafe.ilproj
+++ b/src/libraries/System.Runtime.CompilerServices.Unsafe/src/System.Runtime.CompilerServices.Unsafe.ilproj
@@ -22,9 +22,10 @@
<ItemGroup>
<Compile Include="System.Runtime.CompilerServices.Unsafe.il" />
</ItemGroup>
- <ItemGroup Condition="'$(TargetFramework)' == '$(NetCoreAppCurrent)' or
- '$(TargetFramework)' == 'netcoreapp2.0'">
- <Reference Include="System.Runtime" />
+ <ItemGroup>
+ <!-- mscorlib is passed in as an explicit reference from C# targets but not via the IL SDK. -->
+ <Reference Include="$(CoreAssembly)"
+ Condition="!$(TargetFramework.StartsWith('netstandard'))" />
</ItemGroup>
<Target Name="GenerateVersionFile"
diff --git a/src/libraries/shims/manual/Directory.Build.props b/src/libraries/shims/manual/Directory.Build.props
index ac7cd2bb106..69066861fd3 100644
--- a/src/libraries/shims/manual/Directory.Build.props
+++ b/src/libraries/shims/manual/Directory.Build.props
@@ -11,8 +11,6 @@
<PropertyGroup>
<IsRuntimeAssembly>true</IsRuntimeAssembly>
- <BaseIntermediateOutputPath>$([MSBuild]::NormalizeDirectory('$(ArtifactsObjDir)', '$(OutDirName)'))</BaseIntermediateOutputPath>
- <IntermediateOutputPath>$(BaseIntermediateOutputPath)$(TargetFramework)-$(Configuration)</IntermediateOutputPath>
<TargetFrameworks>$(NetCoreAppCurrent)</TargetFrameworks>
</PropertyGroup>
@@ -21,8 +19,7 @@
$(NetCoreAppCurrentRuntimePath)Microsoft.Win32.*.dll;
$(NetCoreAppCurrentRuntimePath)netstandard.dll"
Exclude="$(NetCoreAppCurrentRuntimePath)$(MSBuildProjectName).dll;
- $(NetCoreAppCurrentRuntimePath)System.*.Native.dll"
- />
+ $(NetCoreAppCurrentRuntimePath)System.*.Native.dll" />
<ProjectReference Include="$(CoreLibProject)" />
</ItemGroup>
</Project>
diff --git a/src/mono/Directory.Build.props b/src/mono/Directory.Build.props
index 319ae93e9f7..7d83083b935 100644
--- a/src/mono/Directory.Build.props
+++ b/src/mono/Directory.Build.props
@@ -1,25 +1,14 @@
<Project>
<PropertyGroup>
- <SkipImportArcadeSdkFromRoot>true</SkipImportArcadeSdkFromRoot>
+ <InferPlatformFromTargetArchitecture>true</InferPlatformFromTargetArchitecture>
</PropertyGroup>
- <Import Project="..\..\Directory.Build.props" />
-
- <!-- Set default Platform -->
- <PropertyGroup>
- <HostArch>$([System.Runtime.InteropServices.RuntimeInformation]::ProcessArchitecture.ToString().ToLowerInvariant)</HostArch>
- <TargetArchitecture Condition="'$(TargetArchitecture)' == ''">$(HostArch)</TargetArchitecture>
- <Platform>$(TargetArchitecture)</Platform>
- <PlatformConfigPathPart>$(TargetOS).$(Platform).$(Configuration)</PlatformConfigPathPart>
- </PropertyGroup>
+ <Import Project="..\..\Directory.Build.props" />
- <!-- Common properties -->
<PropertyGroup>
- <ProjectDir>$(MSBuildThisFileDirectory)</ProjectDir>
- <SourceDir>$([MSBuild]::NormalizeDirectory('$(ProjectDir)', 'src'))</SourceDir>
- <RuntimeBinDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'mono', '$(PlatformConfigPathPart)'))</RuntimeBinDir>
-
<BaseIntermediateOutputPath>$([MSBuild]::NormalizeDirectory('$(ArtifactsObjDir)', 'mono', '$(MSBuildProjectName)'))</BaseIntermediateOutputPath>
+ <IntermediateOutputPath Condition="'$(PlatformName)' == 'AnyCPU'">$(BaseIntermediateOutputPath)$(Configuration)\</IntermediateOutputPath>
+ <IntermediateOutputPath Condition="'$(PlatformName)' != 'AnyCPU'">$(BaseIntermediateOutputPath)$(PlatformName)\$(Configuration)\</IntermediateOutputPath>
</PropertyGroup>
<PropertyGroup>
@@ -42,29 +31,14 @@
<AndroidApiVersion>21</AndroidApiVersion>
</PropertyGroup>
- <!-- Set the kind of PDB to Portable -->
- <PropertyGroup>
- <DebugType Condition="'$(DebugType)' == ''">Portable</DebugType>
- </PropertyGroup>
-
<!-- Output paths -->
<PropertyGroup>
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
</PropertyGroup>
- <!-- Ensure our properties are set before Arcade defines defaults -->
- <Import Project="Sdk.props" Sdk="Microsoft.DotNet.Arcade.Sdk" />
-
- <PropertyGroup>
- <SignAssembly Condition="'$(UsingMicrosoftNETSdk)'!='true'">false</SignAssembly>
- </PropertyGroup>
-
- <PropertyGroup>
- <!-- Enables Strict mode for Roslyn compiler -->
- <Features>strict;nullablePublicOnly</Features>
- </PropertyGroup>
-
<PropertyGroup>
+ <PlatformConfigPathPart>$(TargetOS).$(Platform).$(Configuration)</PlatformConfigPathPart>
+ <RuntimeBinDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'mono', '$(TargetOS).$(Platform).$(Configuration)'))</RuntimeBinDir>
<MonoObjDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsObjDir)', 'mono', '$(PlatformConfigPathPart)'))</MonoObjDir>
<MonoLLVMDir Condition="'$(MonoLLVMDir)' == ''">$([MSBuild]::NormalizeDirectory('$(MonoObjDir)', 'llvm'))</MonoLLVMDir>
<MonoAOTLLVMDir Condition="'$(MonoAOTLLVMDir)' == ''">$([MSBuild]::NormalizeDirectory('$(MonoObjDir)', 'cross', 'llvm'))</MonoAOTLLVMDir>
diff --git a/src/mono/Directory.Build.targets b/src/mono/Directory.Build.targets
index 736370c38db..fb807fd715f 100644
--- a/src/mono/Directory.Build.targets
+++ b/src/mono/Directory.Build.targets
@@ -1,17 +1,6 @@
<Project>
<Import Project="..\..\Directory.Build.targets" />
- <Import Project="Sdk.targets" Sdk="Microsoft.DotNet.Arcade.Sdk" />
-
<!-- Import targets here to have TargetPath and other macros defined. Limit to CoreLib. -->
<Import Condition="'$(MSBuildProjectName)' == 'System.Private.CoreLib'" Project="$(RepositoryEngineeringDir)illink.targets" />
-
- <PropertyGroup>
- <!-- SDK sets product to assembly but we want it to be our product name -->
- <Product>Microsoft%AE .NET</Product>
-
- <!-- Use the .NET product branding version for informational version description -->
- <InformationalVersion>$(ProductVersion)</InformationalVersion>
- <InformationalVersion Condition="'$(VersionSuffix)' != ''">$(InformationalVersion)-$(VersionSuffix)</InformationalVersion>
- </PropertyGroup>
</Project>
diff --git a/src/mono/llvm/llvm-init.proj b/src/mono/llvm/llvm-init.proj
index b0cd9dc7b94..3012500d0ca 100644
--- a/src/mono/llvm/llvm-init.proj
+++ b/src/mono/llvm/llvm-init.proj
@@ -1,33 +1,32 @@
<Project Sdk="Microsoft.Build.NoTargets">
-
<PropertyGroup>
<TargetFramework>$(NetCoreAppToolCurrent)</TargetFramework>
</PropertyGroup>
<PropertyGroup>
- <MonoLLVMHostOS Condition="'$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::Linux)))' == 'true'">linux</MonoLLVMHostOS>
- <MonoLLVMHostOS Condition="'$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::OSX)))' == 'true'">osx.10.12</MonoLLVMHostOS>
- <MonoLLVMHostOS Condition="'$(OS)' == 'Windows_NT'">win</MonoLLVMHostOS>
- <MonoLLVMSDKVersion Condition="'$(MonoLLVMHostOS)' == 'linux'">$(runtimelinuxx64MicrosoftNETCoreRuntimeMonoLLVMSdkVersion)</MonoLLVMSDKVersion>
- <MonoLLVMSDKVersion Condition="'$(MonoLLVMHostOS)' == 'win'">$(runtimewinx64MicrosoftNETCoreRuntimeMonoLLVMSdkVersion)</MonoLLVMSDKVersion>
- <MonoLLVMSDKVersion Condition="'$(MonoLLVMHostOS)' == 'osx.10.12'">$(runtimeosx1012x64MicrosoftNETCoreRuntimeMonoLLVMSdkVersion)</MonoLLVMSDKVersion>
- <MonoLLVMToolsVersion Condition="'$(MonoLLVMHostOS)' == 'linux'">$(runtimelinuxx64MicrosoftNETCoreRuntimeMonoLLVMToolsVersion)</MonoLLVMToolsVersion>
- <MonoLLVMToolsVersion Condition="'$(MonoLLVMHostOS)' == 'win'">$(runtimewinx64MicrosoftNETCoreRuntimeMonoLLVMToolsVersion)</MonoLLVMToolsVersion>
- <MonoLLVMToolsVersion Condition="'$(MonoLLVMHostOS)' == 'osx.10.12'">$(runtimeosx1012x64MicrosoftNETCoreRuntimeMonoLLVMToolsVersion)</MonoLLVMToolsVersion>
+ <MonoLLVMHostOS Condition="'$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::Linux)))' == 'true'">linux</MonoLLVMHostOS>
+ <MonoLLVMHostOS Condition="'$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::OSX)))' == 'true'">osx.10.12</MonoLLVMHostOS>
+ <MonoLLVMHostOS Condition="'$(OS)' == 'Windows_NT'">win</MonoLLVMHostOS>
+ <MonoLLVMSDKVersion Condition="'$(MonoLLVMHostOS)' == 'linux'">$(runtimelinuxx64MicrosoftNETCoreRuntimeMonoLLVMSdkVersion)</MonoLLVMSDKVersion>
+ <MonoLLVMSDKVersion Condition="'$(MonoLLVMHostOS)' == 'win'">$(runtimewinx64MicrosoftNETCoreRuntimeMonoLLVMSdkVersion)</MonoLLVMSDKVersion>
+ <MonoLLVMSDKVersion Condition="'$(MonoLLVMHostOS)' == 'osx.10.12'">$(runtimeosx1012x64MicrosoftNETCoreRuntimeMonoLLVMSdkVersion)</MonoLLVMSDKVersion>
+ <MonoLLVMToolsVersion Condition="'$(MonoLLVMHostOS)' == 'linux'">$(runtimelinuxx64MicrosoftNETCoreRuntimeMonoLLVMToolsVersion)</MonoLLVMToolsVersion>
+ <MonoLLVMToolsVersion Condition="'$(MonoLLVMHostOS)' == 'win'">$(runtimewinx64MicrosoftNETCoreRuntimeMonoLLVMToolsVersion)</MonoLLVMToolsVersion>
+ <MonoLLVMToolsVersion Condition="'$(MonoLLVMHostOS)' == 'osx.10.12'">$(runtimeosx1012x64MicrosoftNETCoreRuntimeMonoLLVMToolsVersion)</MonoLLVMToolsVersion>
</PropertyGroup>
<!-- On Linux, we need to treat the target arch as the host arch, i.e. treat arm64 Linux as a desktop platform -->
<PropertyGroup>
- <MonoLLVMTargetArchitecture Condition="'$(MonoLLVMHostOS)' == 'linux' and '$(TargetArchitecture)' != 'wasm'">$(TargetArchitecture)</MonoLLVMTargetArchitecture>
- <MonoLLVMTargetArchitecture Condition="'$(MonoLLVMHostOS)' != 'linux' or '$(TargetArchitecture)' == 'wasm'">$(HostArch)</MonoLLVMTargetArchitecture>
+ <MonoLLVMTargetArchitecture Condition="'$(MonoLLVMHostOS)' == 'linux' and '$(TargetArchitecture)' != 'wasm'">$(TargetArchitecture)</MonoLLVMTargetArchitecture>
+ <MonoLLVMTargetArchitecture Condition="'$(MonoLLVMHostOS)' != 'linux' or '$(TargetArchitecture)' == 'wasm'">$(BuildArchitecture)</MonoLLVMTargetArchitecture>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="runtime.$(MonoLLVMHostOS)-$(MonoLLVMTargetArchitecture).Microsoft.NETCore.Runtime.Mono.LLVM.Sdk" Version="$(MonoLLVMSDKVersion)"/>
<PackageReference Include="runtime.$(MonoLLVMHostOS)-$(MonoLLVMTargetArchitecture).Microsoft.NETCore.Runtime.Mono.LLVM.Tools" Version="$(MonoLLVMToolsVersion)"/>
- <PackageReference Include="runtime.$(MonoLLVMHostOS)-$(HostArch).Microsoft.NETCore.Runtime.Mono.LLVM.Sdk" Version="$(MonoLLVMSDKVersion)"/>
- <PackageReference Include="runtime.$(MonoLLVMHostOS)-$(HostArch).Microsoft.NETCore.Runtime.Mono.LLVM.Tools" Version="$(MonoLLVMToolsVersion)"/>
+ <PackageReference Include="runtime.$(MonoLLVMHostOS)-$(BuildArchitecture).Microsoft.NETCore.Runtime.Mono.LLVM.Sdk" Version="$(MonoLLVMSDKVersion)"/>
+ <PackageReference Include="runtime.$(MonoLLVMHostOS)-$(BuildArchitecture).Microsoft.NETCore.Runtime.Mono.LLVM.Tools" Version="$(MonoLLVMToolsVersion)"/>
</ItemGroup>
<Target Name="CopyLLVMToTree" AfterTargets="Build">
@@ -36,8 +35,8 @@
<LLVMFiles Include="$(NuGetPackageRoot)\runtime.$(MonoLLVMHostOS)-$(MonoLLVMTargetArchitecture).microsoft.netcore.runtime.mono.llvm.tools\$(MonoLLVMSDKVersion)\tools\$(MonoLLVMHostOS)-$(MonoLLVMTargetArchitecture)\**" />
</ItemGroup>
<ItemGroup>
- <AOTLLVMFiles Include="$(NuGetPackageRoot)\runtime.$(MonoLLVMHostOS)-$(HostArch).microsoft.netcore.runtime.mono.llvm.sdk\$(MonoLLVMSDKVersion)\tools\$(MonoLLVMHostOS)-$(HostArch)\**" />
- <AOTLLVMFiles Include="$(NuGetPackageRoot)\runtime.$(MonoLLVMHostOS)-$(HostArch).microsoft.netcore.runtime.mono.llvm.tools\$(MonoLLVMSDKVersion)\tools\$(MonoLLVMHostOS)-$(HostArch)\**" />
+ <AOTLLVMFiles Include="$(NuGetPackageRoot)\runtime.$(MonoLLVMHostOS)-$(BuildArchitecture).microsoft.netcore.runtime.mono.llvm.sdk\$(MonoLLVMSDKVersion)\tools\$(MonoLLVMHostOS)-$(BuildArchitecture)\**" />
+ <AOTLLVMFiles Include="$(NuGetPackageRoot)\runtime.$(MonoLLVMHostOS)-$(BuildArchitecture).microsoft.netcore.runtime.mono.llvm.tools\$(MonoLLVMSDKVersion)\tools\$(MonoLLVMHostOS)-$(BuildArchitecture)\**" />
</ItemGroup>
<Copy SourceFiles="@(LLVMFiles)" DestinationFolder="$(MonoLLVMDir)\%(RecursiveDir)">
@@ -48,5 +47,4 @@
<Output TaskParameter="DestinationFiles" ItemName="FileWrites"/>
</Copy>
</Target>
-
</Project>
diff --git a/src/mono/mono.proj b/src/mono/mono.proj
index 2038dab8fda..8bc7108838d 100644
--- a/src/mono/mono.proj
+++ b/src/mono/mono.proj
@@ -47,7 +47,7 @@
</PropertyGroup>
<ItemGroup Condition="'$(TargetsBrowser)' == 'true'">
- <PackageReference Include="$(MicrosoftNETCoreRuntimeICUTransportPackage)" PrivateAssets="all" Version="$(MicrosoftNETCoreRuntimeICUTransportVersion)" GeneratePathProperty="true" />
+ <PackageReference Include="Microsoft.NETCore.Runtime.ICU.Transport" PrivateAssets="all" Version="$(MicrosoftNETCoreRuntimeICUTransportVersion)" GeneratePathProperty="true" />
</ItemGroup>
<!-- CI specific build options -->
diff --git a/src/mono/netcore/System.Private.CoreLib/System.Private.CoreLib.csproj b/src/mono/netcore/System.Private.CoreLib/System.Private.CoreLib.csproj
index 72ba24d3d91..d9fc6e0a7a2 100644
--- a/src/mono/netcore/System.Private.CoreLib/System.Private.CoreLib.csproj
+++ b/src/mono/netcore/System.Private.CoreLib/System.Private.CoreLib.csproj
@@ -10,10 +10,6 @@
<EnsureRuntimePackageDependencies>false</EnsureRuntimePackageDependencies>
<TargetFramework>$(NetCoreAppCurrent)</TargetFramework>
- <!-- Ensure a portable PDB is emitted for the project. A PDB is needed for crossgen. -->
- <DebugType>Portable</DebugType>
- <DebugSymbols>true</DebugSymbols>
-
<!-- Force System.Private.CoreLib.dll into a special IL output directory -->
<OutputPath>$(RuntimeBinDir)IL/</OutputPath>
<Configurations>Debug;Release;Checked</Configurations>
@@ -35,6 +31,8 @@
<!-- These prevent the default MsBuild targets from referencing System.dll and mscorlib.dll -->
<ExcludeMscorlibFacade>true</ExcludeMscorlibFacade>
<RuntimeMetadataVersion>v4.0.30319</RuntimeMetadataVersion>
+ <!-- Override InformationalVersion during servicing as it's returned via public api. -->
+ <InformationalVersion Condition="'$(PreReleaseVersionLabel)' == 'servicing'">$(ProductVersion)</InformationalVersion>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<NoWarn>$(NoWarn),0419,0649</NoWarn>
<Nullable>enable</Nullable>
@@ -88,7 +86,6 @@
<!-- Signing -->
<PropertyGroup>
- <SignAssembly>true</SignAssembly>
<StrongNameKeyId>SilverlightPlatform</StrongNameKeyId>
</PropertyGroup>
diff --git a/src/mono/netcore/sample/iOS/Program.csproj b/src/mono/netcore/sample/iOS/Program.csproj
index a300148a88a..a873f64da64 100644
--- a/src/mono/netcore/sample/iOS/Program.csproj
+++ b/src/mono/netcore/sample/iOS/Program.csproj
@@ -2,7 +2,6 @@
<PropertyGroup>
<OutputType>Exe</OutputType>
<OutputPath>bin</OutputPath>
- <DebugType>Portable</DebugType>
<TargetFramework>$(NetCoreAppToolCurrent)</TargetFramework>
<TargetOS>iOS</TargetOS>
<MicrosoftNetCoreAppRuntimePackDir>$(ArtifactsBinDir)microsoft.netcore.app.runtime.ios-$(TargetArchitecture)\$(Configuration)\runtimes\ios-$(TargetArchitecture)\</MicrosoftNetCoreAppRuntimePackDir>
diff --git a/src/mono/wasm/debugger/tests/debugger-test/debugger-test.csproj b/src/mono/wasm/debugger/tests/debugger-test/debugger-test.csproj
index 5122122d948..3a2fc8fb37e 100644
--- a/src/mono/wasm/debugger/tests/debugger-test/debugger-test.csproj
+++ b/src/mono/wasm/debugger/tests/debugger-test/debugger-test.csproj
@@ -1,11 +1,9 @@
<Project Sdk="Microsoft.NET.Sdk" DefaultTargets="WasmBuildApp">
<PropertyGroup>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
- <OutputType>Library</OutputType>
<NoWarn>219</NoWarn>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<RunAnalyzers>false</RunAnalyzers>
- <DebugType>portable</DebugType>
</PropertyGroup>
<ItemGroup>
diff --git a/src/mono/wasm/debugger/tests/lazy-debugger-test/lazy-debugger-test.csproj b/src/mono/wasm/debugger/tests/lazy-debugger-test/lazy-debugger-test.csproj
index 3e9cf0c1436..104e755ef8f 100644
--- a/src/mono/wasm/debugger/tests/lazy-debugger-test/lazy-debugger-test.csproj
+++ b/src/mono/wasm/debugger/tests/lazy-debugger-test/lazy-debugger-test.csproj
@@ -4,6 +4,5 @@
<OutputType>Library</OutputType>
<NoWarn>219</NoWarn>
<RunAnalyzers>false</RunAnalyzers>
- <DebugType>portable</DebugType>
</PropertyGroup>
</Project>
diff --git a/src/mono/wasm/wasm.proj b/src/mono/wasm/wasm.proj
index dedeef8d609..1993f1d252f 100644
--- a/src/mono/wasm/wasm.proj
+++ b/src/mono/wasm/wasm.proj
@@ -22,7 +22,7 @@
</Target>
<ItemGroup>
- <PackageReference Include="$(MicrosoftNETCoreRuntimeICUTransportPackage)" PrivateAssets="all" Version="$(MicrosoftNETCoreRuntimeICUTransportVersion)" GeneratePathProperty="true" />
+ <PackageReference Include="Microsoft.NETCore.Runtime.ICU.Transport" PrivateAssets="all" Version="$(MicrosoftNETCoreRuntimeICUTransportVersion)" GeneratePathProperty="true" />
<PackageReference Include="System.Runtime.TimeZoneData" PrivateAssets="all" Version="$(SystemRuntimeTimeZoneDataVersion)" GeneratePathProperty="true" />
</ItemGroup>
diff --git a/src/tasks/WasmAppBuilder/WasmAppBuilder.csproj b/src/tasks/WasmAppBuilder/WasmAppBuilder.csproj
index 1c8d831d0df..1427b291bb9 100644
--- a/src/tasks/WasmAppBuilder/WasmAppBuilder.csproj
+++ b/src/tasks/WasmAppBuilder/WasmAppBuilder.csproj
@@ -1,7 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>$(NetCoreAppToolCurrent)</TargetFramework>
- <OutputType>Library</OutputType>
<EnableDefaultCompileItems>false</EnableDefaultCompileItems>
<Nullable>enable</Nullable>
<NoWarn>$(NoWarn),CA1050</NoWarn>
diff --git a/src/tasks/tasks.proj b/src/tasks/tasks.proj
index 4922e0dda06..ac868c66d41 100644
--- a/src/tasks/tasks.proj
+++ b/src/tasks/tasks.proj
@@ -5,7 +5,7 @@
Condition="'$(TargetOS)' != 'Android'" />
<ProjectReference Remove="$(MSBuildThisFileDirectory)AppleAppBuilder\AppleAppBuilder.csproj"
Condition="'$(TargetOS)' != 'iOS' and '$(TargetOS)' != 'tvOS'" />
- <ProjectReference Remove="$(MSBuildThisFileDirectoryWasmAppBuilder\WasmAppBuilder.csproj"
+ <ProjectReference Remove="$(MSBuildThisFileDirectory)WasmAppBuilder\WasmAppBuilder.csproj"
Condition="'$(TargetOS)' != 'Browser'" />
<ProjectReference Remove="$(MSBuildThisFileDirectory)WasmBuildTasks\WasmBuildTasks.csproj"
Condition="'$(TargetOS)' != 'Browser'" />
diff --git a/src/tests/Common/external/external.csproj b/src/tests/Common/external/external.csproj
index e889fb69383..5b21bf541b0 100644
--- a/src/tests/Common/external/external.csproj
+++ b/src/tests/Common/external/external.csproj
@@ -78,7 +78,7 @@
<PackageReference Include="Newtonsoft.Json" Version="12.0.1" />
<PackageReference Include="Newtonsoft.Json.Bson" Version="1.0.2" />
<PackageReference Include="xunit" Version="$(XUnitVersion)" />
- <PackageReference Include="$(MicrosoftDotNetXUnitConsoleRunnerPackage)" Version="$(MicrosoftDotNetXUnitConsoleRunnerVersion)" GeneratePathProperty="True" />
+ <PackageReference Include="Microsoft.DotNet.XUnitConsoleRunner" Version="$(MicrosoftDotNetXUnitConsoleRunnerVersion)" GeneratePathProperty="True" />
<PackageReference Include="xunit.runner.utility" Version="$(XUnitVersion)" />
</ItemGroup>
@@ -89,7 +89,7 @@
<ItemGroup>
<ReferenceCopyLocalPaths Include="$(PkgMicrosoft_DotNet_XunitConsoleRunner)\tools\$(XUnitRunnerTargetFramework)\*.*">
<Private>false</Private>
- <NuGetPackageId>$(MicrosoftDotNetXUnitConsoleRunnerPackage)</NuGetPackageId>
+ <NuGetPackageId>Microsoft.DotNet.XUnitConsoleRunner</NuGetPackageId>
<NuGetPackageVersion>$(MicrosoftDotNetXUnitConsoleRunnerVersion)</NuGetPackageVersion>
</ReferenceCopyLocalPaths>
</ItemGroup>
diff --git a/src/tests/Common/helixpublishwitharcade.proj b/src/tests/Common/helixpublishwitharcade.proj
index 4104f3dc4dd..82119af141d 100644
--- a/src/tests/Common/helixpublishwitharcade.proj
+++ b/src/tests/Common/helixpublishwitharcade.proj
@@ -180,7 +180,7 @@
<MSBuild Projects="$(RepoRoot)src\tests\Common\xunitconsolerunner.depproj" Targets="Restore" />
<ItemGroup>
- <_XUnitConsoleRunnerFiles Include="$(NuGetPackageRoot)$(MicrosoftDotNetXUnitConsoleRunnerPackage)\$(MicrosoftDotNetXUnitConsoleRunnerVersion)\**\xunit.console.*" />
+ <_XUnitConsoleRunnerFiles Include="$(NuGetPackageRoot)Microsoft.DotNet.XUnitConsoleRunner\$(MicrosoftDotNetXUnitConsoleRunnerVersion)\**\xunit.console.*" />
</ItemGroup>
<Copy SourceFiles="@(_XUnitConsoleRunnerFiles)" DestinationFolder="$(CoreRootDirectory)\xunit" />
diff --git a/src/tests/Common/scripts/scripts.csproj b/src/tests/Common/scripts/scripts.csproj
index 91a9fbba9e7..c7b9426b098 100644
--- a/src/tests/Common/scripts/scripts.csproj
+++ b/src/tests/Common/scripts/scripts.csproj
@@ -14,7 +14,7 @@
<PackageReference Include="Microsoft.DotNet.xunit.performance">
<Version>1.0.0-alpha-build0040</Version>
</PackageReference>
- <PackageReference Include="$(MicrosoftDotNetXUnitConsoleRunnerPackage)">
+ <PackageReference Include="Microsoft.DotNet.XUnitConsoleRunner">
<Version>$(MicrosoftDotNetXUnitConsoleRunnerVersion)</Version>
</PackageReference>
<PackageReference Include="Microsoft.DotNet.BuildTools.TestSuite">
diff --git a/src/tests/Common/xunitconsolerunner.depproj b/src/tests/Common/xunitconsolerunner.depproj
index 9afad38da52..73db22f392f 100644
--- a/src/tests/Common/xunitconsolerunner.depproj
+++ b/src/tests/Common/xunitconsolerunner.depproj
@@ -4,6 +4,6 @@
</PropertyGroup>
<ItemGroup>
- <PackageReference Include="$(MicrosoftDotNetXUnitConsoleRunnerPackage)" Version="$(MicrosoftDotNetXUnitConsoleRunnerVersion)" />
+ <PackageReference Include="Microsoft.DotNet.XUnitConsoleRunner" Version="$(MicrosoftDotNetXUnitConsoleRunnerVersion)" />
</ItemGroup>
</Project>
diff --git a/src/tests/Directory.Build.props b/src/tests/Directory.Build.props
index 30bf6a62966..70f887117c1 100644
--- a/src/tests/Directory.Build.props
+++ b/src/tests/Directory.Build.props
@@ -66,19 +66,16 @@
<!-- Setup Default symbol and optimization for Configuration -->
<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
- <DebugSymbols Condition="'$(DebugSymbols)' == ''">true</DebugSymbols>
<Optimize Condition="'$(Optimize)' == ''">false</Optimize>
<DebugType Condition="'$(DebugType)' == ''">full</DebugType>
<DefineConstants>$(DefineConstants);DEBUG;TRACE;XUNIT_PERF</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)' == 'Release'">
- <DebugSymbols Condition="'$(DebugSymbols)' == ''">true</DebugSymbols>
<Optimize Condition="'$(Optimize)' == ''">true</Optimize>
<DebugType Condition="'$(DebugType)' == ''">pdbonly</DebugType>
<DefineConstants>$(DefineConstants);TRACE;XUNIT_PERF</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)' == 'Checked'">
- <DebugSymbols Condition="'$(DebugSymbols)' == ''">true</DebugSymbols>
<Optimize Condition="'$(Optimize)' == ''">true</Optimize>
<DebugType Condition="'$(DebugType)' == ''">full</DebugType>
<DefineConstants>$(DefineConstants);DEBUG;TRACE;XUNIT_PERF</DefineConstants>
@@ -142,4 +139,10 @@
<TestWrapperTargetsWindows Condition=" ('$(TargetsWindows)' != '' And '$(TargetsWindows)' ) OR ('$(TargetOS)' == 'Android' And '$(TargetArchitecture)' == 'arm64' )">true</TestWrapperTargetsWindows>
</PropertyGroup>
+ <PropertyGroup>
+ <!-- Scenario tests install this version of Microsoft.NetCore.App, then patch coreclr binaries via xcopy. At the moment it is
+ updated manually whenever breaking changes require it to move forward, but it would be nice if we could update it automatically
+ as we do with many of the package versions above -->
+ <BaselineMicrosoftNetCoreAppPackageVersion>2.1.0-preview3-26416-01</BaselineMicrosoftNetCoreAppPackageVersion>
+ </PropertyGroup>
</Project>
diff --git a/src/tests/performance/Scenario/JitBench/JitBench.csproj b/src/tests/performance/Scenario/JitBench/JitBench.csproj
index 605402f6d37..edf4df2f930 100644
--- a/src/tests/performance/Scenario/JitBench/JitBench.csproj
+++ b/src/tests/performance/Scenario/JitBench/JitBench.csproj
@@ -32,7 +32,7 @@
</ItemGroup>
<ItemGroup>
- <!-- BaselineMicrosoftNetCoreAppPackageVersion comes from dependencies.props in the root of the coreclr tree -->
+ <!-- BaselineMicrosoftNetCoreAppPackageVersion comes from Versions.props -->
<VersioningConstantsLines Include="namespace JitBench { public static class VersioningConstants { public static string MicrosoftNETCoreAppVersion=&quot;$(BaselineMicrosoftNetCoreAppPackageVersion)&quot;%3B } }" />
<Compile Include="$(BaseIntermediateOutputPath)AutoGeneratedVersioningConstants.cs" />
</ItemGroup>
diff --git a/src/tests/performance/Scenario/JitBench/unofficial_dotnet/JitBench.csproj b/src/tests/performance/Scenario/JitBench/unofficial_dotnet/JitBench.csproj
index 81ad5b9512c..6beb6cfff07 100644
--- a/src/tests/performance/Scenario/JitBench/unofficial_dotnet/JitBench.csproj
+++ b/src/tests/performance/Scenario/JitBench/unofficial_dotnet/JitBench.csproj
@@ -39,7 +39,7 @@
</ItemGroup>
<ItemGroup>
- <!-- BaselineMicrosoftNetCoreAppPackageVersion comes from dependencies.props in the root of the coreclr tree -->
+ <!-- BaselineMicrosoftNetCoreAppPackageVersion comes from Versions.props. -->
<VersioningConstantsLines Include="namespace JitBench { public static class VersioningConstants { public static string MicrosoftNETCoreAppVersion=&quot;$(BaselineMicrosoftNetCoreAppPackageVersion)&quot;%3B } }" />
<Compile Include="$(BaseIntermediateOutputPath)AutoGeneratedVersioningConstants.cs" />
</ItemGroup>
diff --git a/src/tests/run.proj b/src/tests/run.proj
index c85deaa0eb5..93f290e2e48 100644
--- a/src/tests/run.proj
+++ b/src/tests/run.proj
@@ -117,7 +117,7 @@ $(_XunitEpilog)
<ItemGroup>
<PackageReference Include="xunit" Version="$(XUnitVersion)" />
- <PackageReference Include="$(MicrosoftDotNetXUnitConsoleRunnerPackage)" Version="$(MicrosoftDotNetXUnitConsoleRunnerVersion)" />
+ <PackageReference Include="Microsoft.DotNet.XUnitConsoleRunner" Version="$(MicrosoftDotNetXUnitConsoleRunnerVersion)" />
</ItemGroup>
<Import Sdk="Microsoft.NET.Sdk" Project="Sdk.targets" />