diff --git a/.gitignore b/.gitignore index 35c03423e7b7f..a9a3cae8e9455 100644 --- a/.gitignore +++ b/.gitignore @@ -27,7 +27,7 @@ bld/ msbuild.log msbuild.err msbuild.wrn -msbuild.binlog +*.binlog .deps/ .dirstamp .libs/ diff --git a/Build.proj b/Build.proj new file mode 100644 index 0000000000000..0ecff09e8552b --- /dev/null +++ b/Build.proj @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(RepoTasksDir) + $(ArtifactsObjDir)runtime.tasks\Debug\build-semaphore.txt + + + + + + + + + + + + \ No newline at end of file diff --git a/Directory.Build.props b/Directory.Build.props index 66e518803b59c..06cb0f4cb33a9 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -27,14 +27,7 @@ $([MSBuild]::NormalizeDirectory('$(ArtifactsDir)', 'obj')) - - - 5.0 - .NETCoreApp,Version=v$(NETCoreAppCurrentVersion) - netcoreapp$(NETCoreAppCurrentVersion) - net472 - - + - - - - - - - - - - - -``` -`unix/System.IO.FileSystem.pkgproj` -``` - - - - - unix - true - - - - - OSGroup=Linux - - - - - -``` - ## Asset selection The makeup of a package folder is primarily a grouping of project references to the projects that compose that package. Settings within each referenced project determines where that asset will be placed in the package. For example, reference assembly projects will be placed under the `ref/{targetMoniker}` folder in the package and implementations will be under either `lib/{targetMoniker}` or `runtimes/{rid}/lib/{targetMoniker}`. Whenever NuGet evaluates a package in the context of a referencing project it will choose the best compile time asset (preferring `ref`, then falling back to `lib`) and runtime asset (preferring `runtimes/{rid}/lib` and falling back to `lib`) for every package that is referenced. For more information see http://docs.nuget.org/. @@ -221,8 +63,8 @@ Asset projects (`.csproj`, `.vbproj`, or `.depproj`) can control their `{targetM The primary thing that the library author needs to do in order to ensure the correct asset selection is: -1. Configure the correct projects in your library's `.builds` file. -2. Reference the `.builds` file from the package project. +1. Configure the correct projects in your library's `.proj` file. +2. Reference the `.proj` file from the package project. 3. Provide a default PackageTargetFramework for empty-BuildTargetFramework builds in the library's `.csproj` or `.vbproj`. ``` dotnet5.4 diff --git a/docs/coding-guidelines/project-guidelines.md b/docs/coding-guidelines/project-guidelines.md index d483cebe6cb05..55728730a3c51 100644 --- a/docs/coding-guidelines/project-guidelines.md +++ b/docs/coding-guidelines/project-guidelines.md @@ -10,9 +10,9 @@ once before you can iterate and work on a given library project. - Netstandard Library - Copy to `bin\ref\netstandard2.0` - NetFx targeting pack - Copy to `bin\ref\net472` - Build targeting pack - - Build src\ref.builds which builds all references assembly projects. For reference assembly project information see [ref](#ref) + - Build src\libraries\ref.proj which builds all references assembly projects. For reference assembly project information see [ref](#ref) - Build product - - Build src\src.builds which builds all the source library projects. For source library project information see [src](#src). + - Build src\libraries\src.proj which builds all the source library projects. For source library project information see [src](#src). - Sign product - Build src\sign.proj diff --git a/docs/project/library-servicing.md b/docs/project/library-servicing.md index 225cbaa8c7ad8..52d7f5ac06775 100644 --- a/docs/project/library-servicing.md +++ b/docs/project/library-servicing.md @@ -33,9 +33,9 @@ Where the `AssemblyVersion` is set to the old version before updating. To determ If you incremented the `AssemblyVersion` in the last step, you'll also need to add an entry to [packageIndex.json](https://github.com/dotnet/runtime/blob/master/src/libraries/pkg/Microsoft.Private.PackageBaseline/packageIndex.json). Find the entry for your library in that file (again, making sure you're in the correct release branch), then find the subsection labeled `AssemblyVersionInPackageVersion`. There, add an entry that maps your new `AssemblyVersion` to your new `PackageVersion`. For an example, see [this PR](https://github.com/dotnet/runtime/commit/d0e4dcc7ebf008e7b6835cafbd03878c3a0e75f8#diff-ec9fd7a62cb0c494d86029014940382cR107), where we bumped the `PackageVersion` of `Microsoft.Diagnostics.Tracing.EventSource` from `2.0.0` to `2.0.1`, and bumped the `AssemblyVersion` from `2.0.0.0` to `2.0.1.0`. Therefore, we added an entry to `packageIndex.json` of the form `"2.0.1.0": "2.0.1"`. -## Add your package to packages.builds +## Add your package to libraries-packages.proj -In order to ensure that your package gets built, you need to add it to [packages.builds](https://github.com/dotnet/runtime/blob/master/src/libraries/packages.builds). In the linked example, we were building `System.Drawing.Common`. All you have to do is add a `Project` block inside the linked ItemGroup that matches the form of the linked example, but with `System.Drawing.Common` replaced by your library's name. Again, make sure to do this in the right servicing branch. +In order to ensure that your package gets built, you need to add it to [libraries-packages.proj](https://github.com/dotnet/runtime/blob/master/src/libraries/libraries-packages.proj). In the linked example, we were building `System.Drawing.Common`. All you have to do is add a `Project` block inside the linked ItemGroup that matches the form of the linked example, but with `System.Drawing.Common` replaced by your library's name. Again, make sure to do this in the right servicing branch. ## Test your changes diff --git a/docs/workflow/building/libraries/README.md b/docs/workflow/building/libraries/README.md index eaafa3eaa43da..eecbcfe337c96 100644 --- a/docs/workflow/building/libraries/README.md +++ b/docs/workflow/building/libraries/README.md @@ -81,9 +81,9 @@ The build settings (BuildTargetFramework, TargetOS, Configuration, Architecture) For more details on the build settings see [project-guidelines](../../../coding-guidelines/project-guidelines.md#build-pivots). -If you invoke the `build` script without any actions, the default action chain `-restore -build` is executed. You can chain multiple actions together (e.g., `-restore -build -buildtests`) and they will execute in the appropriate order. Note that if you specify actions like `-build` explicitly, you likely need to explicitly add `-restore` as well. +If you invoke the `build` script without any actions, the default action chain `-restore -build` is executed. -By default the `build` script only builds the product libraries and none of the tests. If you want to build the tests you can add the flag `-buildtests`. If you want to run the tests you can add the flag `-test`. To build and run the tests combine both arguments: `-buildtests -test`. To specify just the libraries, use `-subcategory libraries`. +By default the `build` script only builds the product libraries and none of the tests. If you want to include tests, you want to add the subset `-subset libtests`. If you want to run the tests you want to use the `-test` action instead of the `-build`, e.g. `build.cmd/sh -subsetcategory libraries -test`. To specify just the libraries, use `-subcategory libraries`. **Examples** - Building in release mode for platform x64 (restore and build are implicit here as no actions are passed in) @@ -93,7 +93,7 @@ By default the `build` script only builds the product libraries and none of the - Building the src assemblies and build and run tests (running all tests takes a considerable amount of time!) ```bash -./build.sh -subsetCategory libraries -restore -build -buildtests -test +./build.sh -subsetCategory libraries -restore -build -test ``` - Building for different target frameworks (restore and build are implicit again as no action is passed in) diff --git a/docs/workflow/debugging/libraries/debugging-packages.md b/docs/workflow/debugging/libraries/debugging-packages.md index be7953be8efb6..5b25a1ffb14fe 100644 --- a/docs/workflow/debugging/libraries/debugging-packages.md +++ b/docs/workflow/debugging/libraries/debugging-packages.md @@ -25,7 +25,7 @@ Assuming the current directory is `\src\contractname\`: Check the logs for output such as: ``` -Project "S:\c1\src\System.Net.ServicePoint\ref\System.Net.ServicePoint.builds" (1) is building "S:\c1\src\System.Net.ServicePoint\ref\System.Net.ServicePoint.csproj" (2:3) on node 1 +Project "S:\c1\src\System.Net.ServicePoint\ref\System.Net.ServicePoint.csproj" (1) is building "S:\c1\src\System.Net.ServicePoint\ref\System.Net.ServicePoint.csproj" (2:3) on node 1 (Build target(s)). [...] @@ -37,7 +37,7 @@ CopyFilesToOutputDirectory: [...] -Project "S:\c1\src\System.Net.ServicePoint\ref\System.Net.ServicePoint.builds" (1) is building "S:\c1\src\System.Net.ServicePoint\ref\System.Net.ServicePoint.csproj" (2:4) on node 1 +Project "S:\c1\src\System.Net.ServicePoint\ref\System.Net.ServicePoint.csproj" (1) is building "S:\c1\src\System.Net.ServicePoint\ref\System.Net.ServicePoint.csproj" (2:4) on node 1 (Build target(s)). [...] @@ -86,7 +86,7 @@ Ensure that the right `BuildTargetFramework` (what we're testing) is set. To identify which of the combinations failed, search for the following pattern in the output: ``` -Project "S:\c1\src\System.Net.ServicePoint\tests\System.Net.ServicePoint.Tests.builds" (1) is building "S:\c1\src\System.Net.ServicePoint\tests\System.Net.ServicePoint.Tests.csproj" +Project "S:\c1\src\System.Net.ServicePoint\tests\System.Net.ServicePoint.Tests.csproj" (1) is building "S:\c1\src\System.Net.ServicePoint\tests\System.Net.ServicePoint.Tests.csproj" (2:5) on node 1 (Build target(s)). ResolvePkgProjReferences: Resolved compile assets from .NETStandard,Version=v2.0: S:\c1\bin\ref\System.Net.ServicePoint\4.0.0.0\System.Net.ServicePoint.dll diff --git a/docs/workflow/testing/libraries/testing.md b/docs/workflow/testing/libraries/testing.md index 73a0ebced598b..5a2228f277208 100644 --- a/docs/workflow/testing/libraries/testing.md +++ b/docs/workflow/testing/libraries/testing.md @@ -7,7 +7,7 @@ To build the tests and run them you can call the libraries build script. **Examples** - The following shows how to build only the tests but not run them: ``` -libraries -buildtests +libraries -subset libtests ``` - The following builds and runs all tests in release configuration: @@ -20,17 +20,15 @@ libraries -test -c Release libraries -test /p:WithoutCategories=IgnoreForCI ``` -Unless you specifiy `/p:TestNoBuild=true`, test assemblies are implicitly built when invoking the `Test` target. +Unless you specifiy `-testnobuild`, test assemblies are implicitly built when invoking the `Test` action. - The following shows how to only test the libraries without building them ``` -libraries -test /p:TestNoBuild=true +libraries -test -testnobuild ``` ## Running tests on the command line -To build tests you need to pass the `-buildtests` flag to `build.cmd/sh` or run `libraries -restore -build -buildtests` (note that you need to specify `-restore` and `-build` additionally as those are only implicit if no action is passed in). - -If you are interested in building and running the tests only for a specific library, then there are two different ways to do it: +To build tests you need to specify the `test` subset when invoking build.cmd/sh: `libraries -subset libtests`. The easiest (and recommended) way to build and run the tests for a specific library, is to invoke the `Test` target on that library: ```cmd diff --git a/eng/Analyzers.props b/eng/Analyzers.props index 2a24156d56f64..8d2cb20609f2b 100644 --- a/eng/Analyzers.props +++ b/eng/Analyzers.props @@ -1,6 +1,8 @@ $(MSBuildThisFileDirectory)CodeAnalysis.ruleset + + false diff --git a/eng/Build.props b/eng/Build.props index 95f52b37593d4..dd722c64b983e 100644 --- a/eng/Build.props +++ b/eng/Build.props @@ -1,98 +1,8 @@ - - - - - - - - - - - - - - - - - true - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $(RepoTasksDir) - $(ArtifactsObjDir)runtime.tasks\Debug\build-semaphore.txt - - - - - - - + + true + + + + diff --git a/eng/Configurations.props b/eng/Configurations.props index eaa276ebdaa3e..b4417f2205ee7 100644 --- a/eng/Configurations.props +++ b/eng/Configurations.props @@ -1,4 +1,29 @@ + + + + $([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'src', 'libraries')) + $([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'src', 'coreclr')) + $([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'src', 'mono')) + $([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'src', 'installer')) + $([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'tools-local')) + $([MSBuild]::NormalizeDirectory('$(RepoToolsLocalDir)', 'tasks')) + $([MSBuild]::NormalizeDirectory('$(ArtifactsDir)', 'ibc')) + $([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'docs')) + $([MSBuild]::NormalizePath('$(ArtifactsDir)', 'tmp', '$(Configuration)', 'RuntimeOS.props')) + + + + + 5.0 + .NETCoreApp,Version=v$(NETCoreAppCurrentVersion) + netcoreapp$(NETCoreAppCurrentVersion) + net472 + + $(Configuration) @@ -21,4 +46,11 @@ $(TargetOS) $(TargetOS) - + + + + true + + true + + \ No newline at end of file diff --git a/eng/SubsetValidation.targets b/eng/SubsetValidation.targets new file mode 100644 index 0000000000000..deca513d3f4cc --- /dev/null +++ b/eng/SubsetValidation.targets @@ -0,0 +1,48 @@ + + + + + + + + + + + + + true + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/eng/Subsets.props b/eng/Subsets.props index 386bed45f449c..55b261cfb61f2 100644 --- a/eng/Subsets.props +++ b/eng/Subsets.props @@ -47,31 +47,31 @@ artifacts to the test layout, then running the test subset. --> - - $([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'src', 'libraries')) - $([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'src', 'coreclr')) - $([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'src', 'mono')) - $([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'src', 'installer')) - $([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'tools-local')) - $([MSBuild]::NormalizeDirectory('$(RepoToolsLocalDir)', 'tasks')) - - libraries-installer-coreclr-mono libraries-installer-mono libraries-mono + + + + runtime-linuxdac-corelib-nativecorelib-tools-packages + + llvm- + $(DefaultMonoSubsets)runtime-corelib-packages + + depprojs-native-ref-src-pretest-packages + $(DefaultLibrariesSubsets)-libtests + corehost-managed-depproj-pkgproj-bundle-installers-test depproj-pkgproj - - all - runtime-linuxdac-corelib-nativecorelib-tools-packages - all + + <_subsetCategory Condition="'$(SubsetCategory)' != ''">$(SubsetCategory.ToLowerInvariant()) <_subsetCategory Condition="'$(SubsetCategory)' == ''">$(DefaultSubsetCategories) <_subset Condition="'$(Subset)' != ''">$(Subset.ToLowerInvariant()) - <_subset Condition="'$(Subset)' == '' and $(_subsetCategory.Contains('installer'))">$(DefaultInstallerSubsets) - <_subset Condition="'$(Subset)' == '' and $(_subsetCategory.Contains('libraries'))">$(_subset)-$(DefaultLibrariesSubsets) + <_subset Condition="'$(Subset)' == '' and $(_subsetCategory.Contains('libraries'))">$(DefaultLibrariesSubsets) + <_subset Condition="'$(Subset)' == '' and $(_subsetCategory.Contains('installer'))">$(_subset)-$(DefaultInstallerSubsets) <_subset Condition="'$(Subset)' == '' and $(_subsetCategory.Contains('coreclr'))">$(_subset)-$(DefaultCoreClrSubsets) <_subset Condition="'$(Subset)' == '' and $(_subsetCategory.Contains('mono'))">$(_subset)-$(DefaultMonoSubsets) @@ -86,11 +86,13 @@ - - - - + + + + + + @@ -102,7 +104,9 @@ - + + + @@ -115,131 +119,153 @@ - - - - - - - - Configuration=$(CoreCLRConfiguration) - - - Configuration=$(CoreCLRConfiguration) - - - Configuration=$(CoreCLRConfiguration) - - - Configuration=$(CoreCLRConfiguration) - - - Configuration=$(CoreCLRConfiguration) - - - Configuration=$(CoreCLRConfiguration) - - - Configuration=$(CoreCLRConfiguration) - - - - - - Configuration=$(MonoConfiguration) - - - - - - Configuration=$(LibrariesConfiguration) - + + + + false + false + false + false + Configuration=$(CoreCLRConfiguration) + + + false + false + false + false + Configuration=$(MonoConfiguration) + + + false + false + false + false + Configuration=$(LibrariesConfiguration) + + + false + true + false + - - + - - + - - + - - + - - + - - - - - - + + + + + - - + + - - - - + + + + + + + + + + + + + + - - - + + + Configuration=$(LibrariesConfiguration) + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - + + + - + + + - + - + @@ -249,7 +275,7 @@ - + diff --git a/eng/Tools.props b/eng/Tools.props index 32fc0f6f6d4fc..f7746f80c9c34 100644 --- a/eng/Tools.props +++ b/eng/Tools.props @@ -1,50 +1,18 @@ - false - true <_RepoToolManifest Condition="'$(ContinuousIntegrationBuild)' == 'true'" /> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 6095aa5637cf2..72011a01e864f 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -155,7 +155,7 @@ 0375524a91a47ca4db3ee1be548f74bab7e26e76 - https://github.com/dotnet/corefx + https://github.com/dotnet/runtime cf64918877d98577363bb40d5eafac52beb80a79 diff --git a/eng/Versions.props b/eng/Versions.props index 2d0c300bee4f3..6e1cc41acb073 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -18,10 +18,8 @@ true true false - - true - $([MSBuild]::NormalizeDirectory('$(ArtifactsDir)', 'ibc')) - $([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'docs')) + + 3.6.0-2.20166.2 dotnet $(ContainerName) @@ -61,6 +59,7 @@ 5.0.0-beta.20171.1 5.0.0-beta.20171.1 + 5.0.0-beta.20175.1 5.0.0-beta.20171.1 5.0.0-beta.20171.1 5.0.0-beta.20171.1 @@ -77,7 +76,7 @@ 3.0.0 5.0.0-preview.4.20202.18 - 5.0.0-alpha.1.20076.2 + 5.0.0-preview.4.20202.18 5.0.0-alpha.1.19563.3 diff --git a/eng/build.ps1 b/eng/build.ps1 index 3e2f07a8d19fd..17c61ae492d9e 100644 --- a/eng/build.ps1 +++ b/eng/build.ps1 @@ -1,9 +1,7 @@ [CmdletBinding(PositionalBinding=$false)] Param( [switch][Alias('h')]$help, - [switch][Alias('b')]$build, [switch][Alias('t')]$test, - [switch]$buildtests, [string[]][Alias('c')]$configuration = @("Debug"), [string][Alias('f')]$framework, [string]$vs, @@ -11,10 +9,11 @@ Param( [switch]$allconfigurations, [switch]$coverage, [string]$testscope, + [switch]$testnobuild, [string[]][Alias('a')]$arch = @([System.Runtime.InteropServices.RuntimeInformation]::ProcessArchitecture.ToString().ToLowerInvariant()), [string]$subsetCategory, [string]$subset, - [ValidateSet("Debug","Release","Checked")][string]$runtimeConfiguration = "Debug", + [ValidateSet("Debug","Release","Checked")][string]$runtimeConfiguration, [ValidateSet("Debug","Release")][string]$librariesConfiguration, [Parameter(ValueFromRemainingArguments=$true)][String[]]$properties ) @@ -37,7 +36,6 @@ function Get-Help() { Write-Host "Actions (defaults to -restore -build):" Write-Host " -restore Restore dependencies (short: -r)" Write-Host " -build Build all source projects (short: -b)" - Write-Host " -buildtests Build all test projects" Write-Host " -rebuild Rebuild all source projects" Write-Host " -test Build and run tests (short: -t)" Write-Host " -pack Package build outputs into NuGet packages" @@ -50,6 +48,7 @@ function Get-Help() { Write-Host " -framework Build framework: netcoreapp5.0 or net472 (short: -f)" Write-Host " -coverage Collect code coverage when testing" Write-Host " -testscope Scope tests, allowed values: innerloop, outerloop, all" + Write-Host " -testnobuild Skip building tests when invoking -test" Write-Host " -allconfigurations Build packages for all build configurations" Write-Host "" @@ -102,8 +101,11 @@ if ($vs) { # Put our local dotnet.exe on PATH first so Visual Studio knows which one to use $env:PATH=($env:DOTNET_ROOT + ";" + $env:PATH); - # Respect the RuntimeConfiguration variable for building inside VS with different runtime configurations - $env:RUNTIMECONFIGURATION=$runtimeConfiguration + if ($runtimeConfiguration) + { + # Respect the RuntimeConfiguration variable for building inside VS with different runtime configurations + $env:RUNTIMECONFIGURATION=$runtimeConfiguration + } # Launch Visual Studio with the locally defined environment variables ."$vs" @@ -112,7 +114,7 @@ if ($vs) { } # Check if an action is passed in -$actions = "r","restore","b","build","buildtests","rebuild","t","test","pack","sign","publish","clean" +$actions = "b","build","r","restore","rebuild","sign","testnobuild","publish","clean" $actionPassedIn = @(Compare-Object -ReferenceObject @($PSBoundParameters.Keys) -DifferenceObject $actions -ExcludeDifferent -IncludeEqual).Length -ne 0 if ($null -ne $properties -and $actionPassedIn -ne $true) { $actionPassedIn = @(Compare-Object -ReferenceObject $properties -DifferenceObject $actions.ForEach({ "-" + $_ }) -ExcludeDifferent -IncludeEqual).Length -ne 0 @@ -122,17 +124,16 @@ if (!$actionPassedIn) { $arguments = "-restore -build" } -$possibleDirToBuild = if($properties.Length -gt 0) { $properties[0]; } else { $null } +$solutionLeaf = if($properties.Length -gt 0) { $properties[0]; } else { $null } -if ($null -ne $possibleDirToBuild -and $subsetCategory -eq "libraries") { - $dtb = $possibleDirToBuild.TrimEnd('\') - if (Test-Path $dtb) { - $properties[0] = "/p:DirectoryToBuild=$(Resolve-Path $dtb)" +if ($null -ne $solutionLeaf) { + if (Test-Path $solutionLeaf) { + $properties[0] = "-projects $(Resolve-Path $solutionLeaf)" } else { - $dtb = Join-Path "$PSSCriptRoot\..\src\libraries" $dtb - if (Test-Path $dtb) { - $properties[0] = "/p:DirectoryToBuild=$(Resolve-Path $dtb)" + $dtb = Join-Path "$PSSCriptRoot\..\src\libraries" $solutionLeaf | Join-Path -ChildPath "$solutionLeaf.sln" + if (Test-Path $dtb) { + $properties[0] = "-projects $(Resolve-Path $dtb)" } } } @@ -141,18 +142,16 @@ foreach ($argument in $PSBoundParameters.Keys) { switch($argument) { - "build" { $arguments += " -build" } - "buildtests" { if ($build -eq $true) { $arguments += " /p:BuildTests=true" } else { $arguments += " -build /p:BuildTests=only" } } - "test" { $arguments += " -test" } - "runtimeConfiguration" { $arguments += " /p:RuntimeConfiguration=$((Get-Culture).TextInfo.ToTitleCase($($PSBoundParameters[$argument])))" } - "framework" { $arguments += " /p:BuildTargetFramework=$($PSBoundParameters[$argument].ToLowerInvariant())" } - "os" { $arguments += " /p:TargetOS=$($PSBoundParameters[$argument])" } - "allconfigurations" { $arguments += " /p:BuildAllConfigurations=true" } - "properties" { $arguments += " " + $properties } + "runtimeConfiguration" { $arguments += " /p:RuntimeConfiguration=$((Get-Culture).TextInfo.ToTitleCase($($PSBoundParameters[$argument])))" } + "librariesConfiguration" { $arguments += " /p:LibrariesConfiguration=$((Get-Culture).TextInfo.ToTitleCase($($PSBoundParameters[$argument])))" } + "framework" { $arguments += " /p:BuildTargetFramework=$($PSBoundParameters[$argument].ToLowerInvariant())" } + "os" { $arguments += " /p:TargetOS=$($PSBoundParameters[$argument])" } + "allconfigurations" { $arguments += " /p:BuildAllConfigurations=true" } + "properties" { $arguments += " " + $properties } # configuration and arch can be specified multiple times, so they should be no-ops here - "configuration" {} - "arch" {} - default { $arguments += " /p:$argument=$($PSBoundParameters[$argument])" } + "configuration" {} + "arch" {} + default { $arguments += " /p:$argument=$($PSBoundParameters[$argument])" } } } diff --git a/eng/build.sh b/eng/build.sh index 812b820a17b35..36970ae5e45e8 100755 --- a/eng/build.sh +++ b/eng/build.sh @@ -33,7 +33,6 @@ usage() echo "Actions (defaults to --restore --build):" echo " --restore Restore dependencies (short: -r)" echo " --build Build all source projects (short: -b)" - echo " --buildtests Build all test projects" echo " --rebuild Rebuild all source projects" echo " --test Build and run tests (short: -t)" echo " --pack Package build outputs into NuGet packages" @@ -46,6 +45,7 @@ usage() echo " --framework Build framework: netcoreapp5.0 or net472 (short: -f)" echo " --coverage Collect code coverage when testing" echo " --testscope Test scope, allowed values: innerloop, outerloop, all" + echo " --testnobuild Skip building tests when invoking -test" echo " --allconfigurations Build packages for all build configurations" echo "" @@ -83,15 +83,14 @@ arguments='' cmakeargs='' extraargs='' build=false -buildtests=false subsetCategory='' -checkedPossibleDirectoryToBuild=false +checkedSolutionBuild=false crossBuild=0 source $scriptroot/native/init-os-and-arch.sh # Check if an action is passed in -declare -a actions=("r" "restore" "b" "build" "buildtests" "rebuild" "t" "test" "pack" "sign" "publish" "clean") +declare -a actions=("b" "build" "r" "restore" "rebuild" "testnobuild" "sign" "publish" "clean") actInt=($(comm -12 <(printf '%s\n' "${actions[@]/#/-}" | sort) <(printf '%s\n' "${@/#--/-}" | sort))) while [[ $# > 0 ]]; do @@ -138,14 +137,14 @@ while [[ $# > 0 ]]; do arguments="$arguments -build" shift 1 ;; - -buildtests) - buildtests=true - shift 1 - ;; -testscope) arguments="$arguments /p:TestScope=$2" shift 2 ;; + -testnobuild) + arguments="$arguments /p:TestNoBuild=$2" + shift 2 + ;; -coverage) arguments="$arguments /p:Coverage=true" shift 1 @@ -179,13 +178,13 @@ while [[ $# > 0 ]]; do *) ea=$1 - if [[ $checkedPossibleDirectoryToBuild == false ]] && [[ $subsetCategory == "libraries" ]]; then - checkedPossibleDirectoryToBuild=true + if [[ $checkedSolutionBuild == false ]]; then + checkedSolutionBuild=true if [[ -d "$1" ]]; then - ea="/p:DirectoryToBuild=$1" - elif [[ -d "$scriptroot/../src/libraries/$1" ]]; then - ea="/p:DirectoryToBuild=$scriptroot/../src/libraries/$1" + ea="-projects $1" + elif [[ -d "$scriptroot/../src/libraries/$1/$1.sln" ]]; then + ea="-projects $scriptroot/../src/libraries/$1/$1.sln" fi fi @@ -195,14 +194,6 @@ while [[ $# > 0 ]]; do esac done -if [[ "$buildtests" == true ]]; then - if [[ "$build" == true ]]; then - arguments="$arguments /p:BuildTests=true" - else - arguments="$arguments -build /p:BuildTests=only" - fi -fi - if [ ${#actInt[@]} -eq 0 ]; then arguments="-restore -build $arguments" fi diff --git a/eng/codeAnalysis.targets b/eng/codeAnalysis.targets deleted file mode 100644 index de4eb79cd35db..0000000000000 --- a/eng/codeAnalysis.targets +++ /dev/null @@ -1,51 +0,0 @@ - - - - - - - - - - - - - - <_AnalyzersToFileName Include="@(Analyzer -> '%(FileName)')"> - %(Identity) - - - - - <_AnalyzersToRemove Include="@(_AnalyzersToFileName)" Condition="'@(AnalyzersToExclude)' == '@(_AnalyzersToFileName)' and '%(Identity)' != ''" /> - - - - - <_AnalyzersToRemove Include="@(_AnalyzersToFileName)" Exclude="@(AnalyzersToInclude)" /> - <_missingAnalyzersToInclude Include="@(AnalyzersToInclude)" Exclude="@(_AnalyzersToFileName)" /> - - - - - - - - - $(ResolveReferencesDependsOn); - CalculateAnalyzersForBuildTime; - - - \ No newline at end of file diff --git a/eng/docker/build-docker-sdk.ps1 b/eng/docker/build-docker-sdk.ps1 index a7c3094077dda..c1669d6ef1121 100755 --- a/eng/docker/build-docker-sdk.ps1 +++ b/eng/docker/build-docker-sdk.ps1 @@ -19,8 +19,7 @@ if ($buildWindowsContainers) # Due to size concerns, we don't currently do docker builds on windows. # Build on the host machine, then simply copy artifacts to the target docker image. # This should result in significantly lower build times, for now. - & "$REPO_ROOT_DIR/coreclr.cmd" -c Release - & "$REPO_ROOT_DIR/libraries.cmd" -ci -c $configuration -runtimeConfiguration release + & "$REPO_ROOT_DIR/build.cmd" -ci -subsetcategory coreclr-libraries -runtimeconfiguration release -c $configuration # Dockerize the build artifacts if($privateAspNetCore) diff --git a/eng/docker/libraries-sdk.linux.Dockerfile b/eng/docker/libraries-sdk.linux.Dockerfile index efba4fb7c309d..fce6381e71028 100644 --- a/eng/docker/libraries-sdk.linux.Dockerfile +++ b/eng/docker/libraries-sdk.linux.Dockerfile @@ -8,8 +8,7 @@ WORKDIR /repo COPY . . ARG CONFIGURATION=Release -RUN ./src/coreclr/build.sh -release -skiptests -clang9 && \ - ./libraries.sh -c $CONFIGURATION -runtimeconfiguration release +RUN ./build.sh -ci -subsetcategory coreclr-libraries -runtimeconfiguration release -c $CONFIGURATION FROM $SDK_BASE_IMAGE as target diff --git a/eng/illink.targets b/eng/illink.targets index d3525a1540301..cecc5c2a5a369 100644 --- a/eng/illink.targets +++ b/eng/illink.targets @@ -7,6 +7,15 @@ + + + + $([MSBuild]::NormalizeDirectory('$(PkgILLink_Tasks)', 'tools')) diff --git a/eng/packaging.props b/eng/packaging.props index 1e7d8bd813b8a..eea246c098080 100644 --- a/eng/packaging.props +++ b/eng/packaging.props @@ -1,5 +1,6 @@ + $([MSBuild]::NormalizeDirectory('$(ArtifactsPackagesDir)', 'reports')) $(PkgDir)descriptions.json $(RepoRoot)LICENSE.TXT $(RepoRoot)THIRD-PARTY-NOTICES.TXT diff --git a/eng/pipelines/libraries/build-job.yml b/eng/pipelines/libraries/build-job.yml index a1c9914193d54..402b2aefadf0d 100644 --- a/eng/pipelines/libraries/build-job.yml +++ b/eng/pipelines/libraries/build-job.yml @@ -59,15 +59,12 @@ jobs: - ${{ format('coreclr_corelib_build_{1}{2}_{3}_{4}', parameters.runtimeFlavor, 'linux', parameters.osSubgroup, 'x64', parameters.liveRuntimeBuildConfig) }} variables: - - _skipTestRestoreArg: /p:SkipTestRestore=true - - _buildAction: -build + - _addtionalBuildArguments: '' - ${{ parameters.variables }} - ${{ if eq(parameters.osGroup, 'WebAssembly') }}: - EMSDK_PATH: $(Build.BinariesDirectory)/emsdk - ${{ if eq(parameters.runTests, true) }}: - - _buildAction: -build -buildtests /p:ArchiveTests=true - - ${{ if ne(parameters.framework, 'allConfigurations') }}: - - _skipTestRestoreArg: /p:SkipTestRestore=false + - _addtionalBuildArguments: /p:IncludeLibrariesTestSubset=true /p:ArchiveTests=true - ${{ parameters.variables }} @@ -95,13 +92,10 @@ jobs: parameters: installDotnet: true - - script: $(_buildScript) -restore $(_buildArguments) $(_skipTestRestoreArg) /bl:$(Build.SourcesDirectory)/artifacts/log/$(_BuildConfig)/Restore.binlog - displayName: Restore - - script: $(_buildScript) - $(_buildAction) $(_buildArguments) - displayName: Build + $(_addtionalBuildArguments) + displayName: Restore and Build Product - ${{ if eq(parameters.runTests, false) }}: - ${{ if ne(parameters.isOfficialBuild, true) }}: diff --git a/eng/pipelines/libraries/build-test-job.yml b/eng/pipelines/libraries/build-test-job.yml index 0a44ef8f52d82..b75fd1de03692 100644 --- a/eng/pipelines/libraries/build-test-job.yml +++ b/eng/pipelines/libraries/build-test-job.yml @@ -43,7 +43,6 @@ jobs: variables: - librariesTestsArtifactName: ${{ format('libraries_test_assets_{0}_{1}_{2}', parameters.osGroup, parameters.archType, parameters.buildConfig) }} - _archiveTestsParameter: /p:ArchiveTests=true - - _skipTestRestoreArg: /p:SkipTestRestore=false - ${{ parameters.variables }} @@ -55,15 +54,12 @@ jobs: artifactFileName: $(librariesBuildArtifactName)$(archiveExtension) unpackFolder: $(Build.SourcesDirectory)/artifacts cleanUnpackFolder: false - - - script: $(_buildScript) -restore $(_buildArguments) $(_skipTestRestoreArg) - displayName: Restore - script: $(_buildScript) - -buildtests + -subset pretest-libtests $(_buildArguments) $(_archiveTestsParameter) - displayName: Build + displayName: Restore and Build - template: /eng/pipelines/common/upload-artifact-step.yml parameters: diff --git a/eng/pipelines/libraries/enterprise/linux.yml b/eng/pipelines/libraries/enterprise/linux.yml index 4cf1c7ded3827..017ca39dbb0cc 100644 --- a/eng/pipelines/libraries/enterprise/linux.yml +++ b/eng/pipelines/libraries/enterprise/linux.yml @@ -26,7 +26,7 @@ variables: - name: enterpriseTestsSetup value: $(sourcesRoot)/Common/tests/System/Net/EnterpriseTests/setup - name: containerRunTestsCommand - value: /repo/.dotnet/dotnet build /t:test --no-restore + value: /repo/.dotnet/dotnet build /t:test - name: containerLibrariesRoot value: /repo/src/libraries @@ -50,7 +50,7 @@ steps: displayName: Test linuxclient connection to web server - bash: | - docker exec linuxclient bash -c '/repo/src/coreclr/build.sh -release -skipnuget -clang9 && /repo/libraries.sh /p:CoreCLRConfiguration=Release' + docker exec linuxclient bash -c '/repo/build.sh -subsetcategory coreclr-libraries -runtimeconfiguration release -ci' displayName: Build product sources - bash: | diff --git a/eng/pipelines/libraries/run-test-job.yml b/eng/pipelines/libraries/run-test-job.yml index 6035ec9730c7b..951164f8cc21c 100644 --- a/eng/pipelines/libraries/run-test-job.yml +++ b/eng/pipelines/libraries/run-test-job.yml @@ -52,7 +52,6 @@ jobs: variables: - librariesTestsArtifactName: ${{ format('libraries_test_assets_{0}_{1}_{2}', parameters.osGroup, parameters.dependsOnTestArchitecture, parameters.dependsOnTestBuildConfiguration) }} - _archiveTestsParameter: /p:ArchiveTests=true - - _skipTestRestoreArg: /p:SkipTestRestore=false - ${{ parameters.variables }} steps: @@ -73,24 +72,12 @@ jobs: artifactFileName: $(librariesTestsArtifactName)$(archiveExtension) - ${{ if ne(parameters.liveRuntimeBuildConfig, '') }}: - - script: $(_msbuildCommand) src/libraries/restore/runtime/runtime.depproj - $(_runtimeArtifactsPathArg) - $(_runtimeOSArg) + - script: $(_buildScript) + -subset pretest + $(_buildArguments) /p:RuntimeFlavor=${{ parameters.runtimeFlavor }} - /p:TargetArchitecture=${{ parameters.archType }} - /p:Configuration=${{ parameters.buildConfig }} /bl:$(Build.SourcesDirectory)/artifacts/log/$(_BuildConfig)/overrideRuntimeFromLiveDrop.binlog - displayName: Override $(runtimeFlavorName) from live drop - - - script: $(_buildScript) -projects $(Build.SourcesDirectory)/src/libraries/pretest.proj - $(_runtimeArtifactsPathArg) - $(_runtimeOSArg) - /p:RuntimeFlavor=${{ parameters.runtimeFlavor }} - /p:TargetArchitecture=${{ parameters.archType }} - /p:Configuration=${{ parameters.buildConfig }} - /p:SkipBuildProjects=true - /bl:$(Build.SourcesDirectory)/artifacts/log/$(_BuildConfig)/pretest.binlog - displayName: Build PreTest to Generate Deps Json File + displayName: Prepare TestHost with runtime $(runtimeFlavorName) - template: /eng/pipelines/libraries/helix.yml parameters: diff --git a/eng/restore/docs.targets b/eng/restore/docs.targets index b5d9ce90bb55f..2437815a0f330 100644 --- a/eng/restore/docs.targets +++ b/eng/restore/docs.targets @@ -1,7 +1,7 @@ - + diff --git a/src/libraries/restore/harvestPackages/harvestPackages.depproj b/eng/restore/harvestPackages.targets similarity index 56% rename from src/libraries/restore/harvestPackages/harvestPackages.depproj rename to eng/restore/harvestPackages.targets index 2ae20ecda6e67..152888c95975f 100644 --- a/src/libraries/restore/harvestPackages/harvestPackages.depproj +++ b/eng/restore/harvestPackages.targets @@ -1,15 +1,12 @@ - + - netstandard2.0 + $(NuGetPackageRoot)microsoft.dotnet.build.tasks.packaging\$(MicrosoftDotNetBuildTasksPackagingVersion)\tools\ + $(PackagingTaskAssembly)netcoreapp2.1\ + $(PackagingTaskAssembly)net472\ + $(PackagingTaskAssembly)Microsoft.DotNet.Build.Tasks.Packaging.dll - - - - - + <_AllPkgProjs Include="$(LibrariesProjectRoot)*\pkg\**\*.pkgproj" /> @@ -20,10 +17,10 @@ - + LatestPackages="@(_AllPkgProjsToPackageIdentity)" + PackageIndexes="$(PackageIndexFile)" + DoNotAllowVersionsFromSameRelease="true"> + @@ -40,5 +37,4 @@ - \ No newline at end of file diff --git a/eng/restore/optimizationData.targets b/eng/restore/optimizationData.targets index 47c81d6d7c3a8..a4bbe9645b668 100644 --- a/eng/restore/optimizationData.targets +++ b/eng/restore/optimizationData.targets @@ -1,11 +1,11 @@  - - - - - + + + + + @@ -24,6 +24,7 @@ <_optimizationDataSourceFile Include="%(IBCPackage.PackagePath)\**\*.dll;%(IBCPackage.PackagePath)\**\*.ibc" SubdirectoryName="%(IBCPackage.SubdirectoryName)" /> + - + false unused - - $(ToolSetCommonDirectory)Tools.Analyzers.props - true - @@ -28,4 +22,4 @@ false false - \ No newline at end of file + diff --git a/eng/restore/repoRestore.targets b/eng/restore/repoRestore.targets index d99f198e1a5fb..a430b67fee1ff 100644 --- a/eng/restore/repoRestore.targets +++ b/eng/restore/repoRestore.targets @@ -4,8 +4,6 @@ Unknown - - - + diff --git a/eng/testing/tests.props b/eng/testing/tests.props index eaca9c667f09f..dfaabfa18db03 100644 --- a/eng/testing/tests.props +++ b/eng/testing/tests.props @@ -2,8 +2,8 @@ $(MSBuildProjectName) xunit - - Build + + Build $(TestDependsOn);GenerateRunScript;RunTests diff --git a/global.json b/global.json index a17cc45a868b6..76b4cde133085 100644 --- a/global.json +++ b/global.json @@ -1,24 +1,24 @@ { "sdk": { - "version": "3.1.101", + "version": "5.0.100-preview.2.20176.6", "allowPrerelease": true, "rollForward": "major" }, "tools": { - "dotnet": "5.0.100-preview.3.20170.6" + "dotnet": "5.0.100-preview.4.20202.8" }, "native-tools": { "cmake": "3.14.2", "python3": "3.7.1" }, "msbuild-sdks": { - "Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk": "5.0.0-beta.20171.1", - "Microsoft.DotNet.Arcade.Sdk": "5.0.0-beta.20171.1", + "Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk": "5.0.0-beta.20175.1", + "Microsoft.DotNet.Arcade.Sdk": "5.0.0-beta.20175.1", "Microsoft.DotNet.Build.Tasks.SharedFramework.Sdk": "5.0.0-beta.20171.1", "Microsoft.DotNet.Helix.Sdk": "5.0.0-beta.20171.1", "FIX-85B6-MERGE-9C38-CONFLICT": "1.0.0", "Microsoft.NET.Sdk.IL": "5.0.0-preview.4.20202.18", "Microsoft.Build.NoTargets": "1.0.53", - "Microsoft.Build.Traversal": "2.0.2" + "Microsoft.Build.Traversal": "2.0.34" } } diff --git a/src/coreclr/build.cmd b/src/coreclr/build.cmd index 19757613a653c..a4955fb4c52a3 100644 --- a/src/coreclr/build.cmd +++ b/src/coreclr/build.cmd @@ -779,7 +779,7 @@ if %__BuildPackages% EQU 1 ( REM The conditions as to what to build are captured in the builds file. REM Package build uses the Arcade system and scripts, relying on it to restore required toolsets as part of build powershell -NoProfile -ExecutionPolicy ByPass -NoLogo -File "%__RepoRootDir%\eng\common\build.ps1"^ - -r -b -projects %__SourceDir%\.nuget\packages.builds^ + -r -b -projects %__SourceDir%\.nuget\coreclr-packages.proj^ -verbosity minimal /clp:nosummary /nodeReuse:false /bl:!__BuildLog!^ /p:PortableBuild=true^ /p:Platform=%__BuildArch% %__CommonMSBuildArgs% %__UnprocessedBuildArgs% diff --git a/src/coreclr/build.sh b/src/coreclr/build.sh index edfe44ae7985e..634bcb7af3106 100755 --- a/src/coreclr/build.sh +++ b/src/coreclr/build.sh @@ -299,7 +299,7 @@ generate_NugetPackages() echo "ROOTFS_DIR is $ROOTFS_DIR" # Build the packages # Package build uses the Arcade system and scripts, relying on it to restore required toolsets as part of build - "$__RepoRootDir"/eng/common/build.sh -r -b -projects "$__SourceDir"/.nuget/packages.builds \ + "$__RepoRootDir"/eng/common/build.sh -r -b -projects "$__SourceDir"/.nuget/coreclr-packages.proj \ -verbosity minimal -bl:"$__LogsDir/Nuget_$__TargetOS__$__BuildArch__$__BuildType.binlog" \ /p:PortableBuild=true \ /p:"__IntermediatesDir=$__IntermediatesDir" /p:"__RootBinDir=$__RootBinDir" /p:"__DoCrossArchBuild=$__CrossBuild" \ diff --git a/src/coreclr/src/.nuget/Microsoft.NETCore.ILAsm/Microsoft.NETCore.ILAsm.builds b/src/coreclr/src/.nuget/Microsoft.NETCore.ILAsm/Microsoft.NETCore.ILAsm.proj similarity index 100% rename from src/coreclr/src/.nuget/Microsoft.NETCore.ILAsm/Microsoft.NETCore.ILAsm.builds rename to src/coreclr/src/.nuget/Microsoft.NETCore.ILAsm/Microsoft.NETCore.ILAsm.proj diff --git a/src/coreclr/src/.nuget/Microsoft.NETCore.ILDAsm/Microsoft.NETCore.ILDAsm.builds b/src/coreclr/src/.nuget/Microsoft.NETCore.ILDAsm/Microsoft.NETCore.ILDAsm.proj similarity index 100% rename from src/coreclr/src/.nuget/Microsoft.NETCore.ILDAsm/Microsoft.NETCore.ILDAsm.builds rename to src/coreclr/src/.nuget/Microsoft.NETCore.ILDAsm/Microsoft.NETCore.ILDAsm.proj diff --git a/src/coreclr/src/.nuget/Microsoft.NETCore.TestHost/Microsoft.NETCore.TestHost.builds b/src/coreclr/src/.nuget/Microsoft.NETCore.TestHost/Microsoft.NETCore.TestHost.proj similarity index 100% rename from src/coreclr/src/.nuget/Microsoft.NETCore.TestHost/Microsoft.NETCore.TestHost.builds rename to src/coreclr/src/.nuget/Microsoft.NETCore.TestHost/Microsoft.NETCore.TestHost.proj diff --git a/src/coreclr/src/.nuget/packages.builds b/src/coreclr/src/.nuget/coreclr-packages.proj similarity index 80% rename from src/coreclr/src/.nuget/packages.builds rename to src/coreclr/src/.nuget/coreclr-packages.proj index 7fcc996c04156..ad5700b52b8c8 100644 --- a/src/coreclr/src/.nuget/packages.builds +++ b/src/coreclr/src/.nuget/coreclr-packages.proj @@ -1,12 +1,14 @@ - + + + - - - + + + + AdditionalProperties="%(ProjectReference.AdditionalProperties);FileVersion=$(FileVersion)" /> + + + + + diff --git a/src/coreclr/src/System.Private.CoreLib/System.Private.CoreLib.csproj b/src/coreclr/src/System.Private.CoreLib/System.Private.CoreLib.csproj index c8a6bff4505e6..e1d9a09182ef6 100644 --- a/src/coreclr/src/System.Private.CoreLib/System.Private.CoreLib.csproj +++ b/src/coreclr/src/System.Private.CoreLib/System.Private.CoreLib.csproj @@ -397,11 +397,6 @@ - - - - - diff --git a/src/installer/pkg/Directory.Build.props b/src/installer/pkg/Directory.Build.props index 6e77e958d73db..9f4442493b677 100644 --- a/src/installer/pkg/Directory.Build.props +++ b/src/installer/pkg/Directory.Build.props @@ -6,6 +6,11 @@ $(BaseOutputRootPath)corehost + + + false + + $(RepoRoot)LICENSE.TXT $(RepoRoot)THIRD-PARTY-NOTICES.TXT diff --git a/src/installer/pkg/packaging/installers.proj b/src/installer/pkg/packaging/installers.proj index ed3d50f9cb50f..29abbe02d6559 100644 --- a/src/installer/pkg/packaging/installers.proj +++ b/src/installer/pkg/packaging/installers.proj @@ -68,11 +68,11 @@ - - + <_InstallerProject Include="$(InstallerProjectRoot)pkg\projects\**\*.pkgproj" /> + <_InstallerProject Include="$(InstallerProjectRoot)pkg\projects\**\*.sfxproj" /> - + diff --git a/src/installer/pkg/projects/Directory.Build.props b/src/installer/pkg/projects/Directory.Build.props index d62f9f540dd57..40403c6fcd07f 100644 --- a/src/installer/pkg/projects/Directory.Build.props +++ b/src/installer/pkg/projects/Directory.Build.props @@ -64,7 +64,7 @@ Include="$(SigningToolsDir)\SignR2RBinaries.proj" /> - + $(MSBuildProjectName) diff --git a/src/libraries/Directory.Build.props b/src/libraries/Directory.Build.props index e808f9101d0f2..c1902174704b5 100644 --- a/src/libraries/Directory.Build.props +++ b/src/libraries/Directory.Build.props @@ -16,8 +16,7 @@ $([System.Text.RegularExpressions.Regex]::IsMatch($(MSBuildProjectDirectory), 'src%24')) true $(RepositoryEngineeringDir)depProj.common.targets - $([MSBuild]::NormalizePath('$(ArtifactsDir)', 'tmp', '$(Configuration)', 'RuntimeOS.props')) - $(LibrariesProjectRoot)\OSGroups.json + $(LibrariesProjectRoot)OSGroups.json netcoreapp5.0 false @@ -29,7 +28,6 @@ - @@ -65,17 +63,10 @@ false - - true - - - - - $([MSBuild]::NormalizePath('$(ArtifactsBinDir)', 'native', '$(BuildTargetFramework)-$(TargetOS)-$(Configuration)-$(TargetArchitecture)')) - + $([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'native', '$(BuildTargetFramework)-$(TargetOS)-$(Configuration)-$(TargetArchitecture)')) $([MSBuild]::NormalizeDirectory('$(LibrariesProjectRoot)', 'pkg')) @@ -90,6 +81,13 @@ $(RepositoryEngineeringDir)DefaultGenApiDocIds.txt,$(RepositoryEngineeringDir)ApiCompatExcludeAttributes.txt + + + + + + + <_runtimeOSVersionIndex>$(RuntimeOS.IndexOfAny(".-0123456789")) <_runtimeOSFamily Condition="'$(_runtimeOSVersionIndex)' != '-1'">$(RuntimeOS.SubString(0, $(_runtimeOSVersionIndex))) @@ -124,6 +122,7 @@ osx-x64 + $(ToolRuntimeRID) <_portableOS Condition="'$(TargetOS)' == 'Unix' and '$(_runtimeOSFamily)' != 'osx' and '$(_runtimeOSFamily)' != 'FreeBSD' and '$(_runtimeOS)' != 'linux-musl'">linux @@ -230,10 +229,10 @@ strict;nullablePublicOnly 4 true - + false true - true + true @@ -256,7 +255,6 @@ $([MSBuild]::NormalizeDirectory('$(RefRootPath)', 'netstandard2.0')) $([MSBuild]::NormalizeDirectory('$(RefRootPath)', 'netstandard2.1')) $([MSBuild]::NormalizeDirectory('$(RefRootPath)', '$(NetFrameworkCurrent)')) - $([MSBuild]::NormalizeDirectory('$(ArtifactsToolsetDir)', 'ilasm')) $(TargetOS).$(Platform).$(Configuration) @@ -287,6 +285,12 @@ + + true + + + + false @@ -328,7 +332,7 @@ true true - true + true diff --git a/src/libraries/Directory.Build.targets b/src/libraries/Directory.Build.targets index 02fd8c7f1d25e..896ee3207d25a 100644 --- a/src/libraries/Directory.Build.targets +++ b/src/libraries/Directory.Build.targets @@ -119,12 +119,18 @@ - - + - + + + + + + + + <_RefSourceFileOutputPath>$([MSBuild]::NormalizePath('$(MSBuildProjectDirectory)', '..', 'ref', '$(AssemblyName).cs')) diff --git a/src/libraries/Microsoft.Extensions.Configuration.Json/tests/Microsoft.Extensions.Configuration.Json.Tests.csproj b/src/libraries/Microsoft.Extensions.Configuration.Json/tests/Microsoft.Extensions.Configuration.Json.Tests.csproj index fa4a9e15cc7a4..ebc496c00800d 100644 --- a/src/libraries/Microsoft.Extensions.Configuration.Json/tests/Microsoft.Extensions.Configuration.Json.Tests.csproj +++ b/src/libraries/Microsoft.Extensions.Configuration.Json/tests/Microsoft.Extensions.Configuration.Json.Tests.csproj @@ -19,6 +19,7 @@ + diff --git a/src/libraries/Microsoft.Extensions.Configuration.UserSecrets/tests/Microsoft.Extensions.Configuration.UserSecrets.Tests.csproj b/src/libraries/Microsoft.Extensions.Configuration.UserSecrets/tests/Microsoft.Extensions.Configuration.UserSecrets.Tests.csproj index b5c7dd08cc2bb..6f5aa314eabcf 100644 --- a/src/libraries/Microsoft.Extensions.Configuration.UserSecrets/tests/Microsoft.Extensions.Configuration.UserSecrets.Tests.csproj +++ b/src/libraries/Microsoft.Extensions.Configuration.UserSecrets/tests/Microsoft.Extensions.Configuration.UserSecrets.Tests.csproj @@ -7,7 +7,7 @@ - + diff --git a/src/libraries/Microsoft.Extensions.DependencyInjection/tests/Microsoft.Extensions.DependencyInjection.Tests.csproj b/src/libraries/Microsoft.Extensions.DependencyInjection/tests/Microsoft.Extensions.DependencyInjection.Tests.csproj index 064b1a4fd3528..2ce3453a2d2ff 100644 --- a/src/libraries/Microsoft.Extensions.DependencyInjection/tests/Microsoft.Extensions.DependencyInjection.Tests.csproj +++ b/src/libraries/Microsoft.Extensions.DependencyInjection/tests/Microsoft.Extensions.DependencyInjection.Tests.csproj @@ -17,7 +17,10 @@ - + + + + diff --git a/src/libraries/Microsoft.Extensions.DependencyInjection/tests/xunit.runner.json b/src/libraries/Microsoft.Extensions.DependencyInjection/tests/xunit.runner.json deleted file mode 100644 index eff47a28bdcac..0000000000000 --- a/src/libraries/Microsoft.Extensions.DependencyInjection/tests/xunit.runner.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "methodDisplay": "method", - "appDomain": "denied" -} diff --git a/src/libraries/Microsoft.Extensions.DependencyModel/tests/Microsoft.Extensions.DependencyModel.Tests.csproj b/src/libraries/Microsoft.Extensions.DependencyModel/tests/Microsoft.Extensions.DependencyModel.Tests.csproj index e7463ccec23c4..d5c329eb9479a 100644 --- a/src/libraries/Microsoft.Extensions.DependencyModel/tests/Microsoft.Extensions.DependencyModel.Tests.csproj +++ b/src/libraries/Microsoft.Extensions.DependencyModel/tests/Microsoft.Extensions.DependencyModel.Tests.csproj @@ -3,6 +3,7 @@ $(NetCoreAppCurrent);$(NetFrameworkCurrent) true + true @@ -13,6 +14,8 @@ + + diff --git a/src/libraries/Microsoft.Extensions.Logging.EventSource/tests/Microsoft.Extensions.Logging.EventSource.Tests.csproj b/src/libraries/Microsoft.Extensions.Logging.EventSource/tests/Microsoft.Extensions.Logging.EventSource.Tests.csproj index 9201e0f1dbeea..08a860a8a580e 100644 --- a/src/libraries/Microsoft.Extensions.Logging.EventSource/tests/Microsoft.Extensions.Logging.EventSource.Tests.csproj +++ b/src/libraries/Microsoft.Extensions.Logging.EventSource/tests/Microsoft.Extensions.Logging.EventSource.Tests.csproj @@ -7,5 +7,6 @@ + diff --git a/src/libraries/Microsoft.VisualBasic.Core/src/Microsoft.VisualBasic.Core.vbproj b/src/libraries/Microsoft.VisualBasic.Core/src/Microsoft.VisualBasic.Core.vbproj index 436ecca9fbe2d..e8774341649ca 100644 --- a/src/libraries/Microsoft.VisualBasic.Core/src/Microsoft.VisualBasic.Core.vbproj +++ b/src/libraries/Microsoft.VisualBasic.Core/src/Microsoft.VisualBasic.Core.vbproj @@ -18,6 +18,8 @@ + + false $(NetCoreAppCurrent);$(NetCoreAppCurrent)-Windows_NT diff --git a/src/libraries/Native/native-binplace.proj b/src/libraries/Native/native-binplace.proj index 99e71eb38560b..2631ea732755c 100644 --- a/src/libraries/Native/native-binplace.proj +++ b/src/libraries/Native/native-binplace.proj @@ -1,29 +1,29 @@ - - - - - - - - + + $(NetCoreAppCurrent);netstandard2.0;$(NetFrameworkCurrent) $(BuildTargetFramework) + + + - - - - - - - - - + + + + + + + + + + + + \ No newline at end of file diff --git a/src/libraries/System.Diagnostics.EventLog/src/PinvokeAnalyzerExceptionList.analyzerdata b/src/libraries/System.Diagnostics.EventLog/src/PinvokeAnalyzerExceptionList.analyzerdata index fc0e6b2b05523..d9aba2e39deb7 100644 --- a/src/libraries/System.Diagnostics.EventLog/src/PinvokeAnalyzerExceptionList.analyzerdata +++ b/src/libraries/System.Diagnostics.EventLog/src/PinvokeAnalyzerExceptionList.analyzerdata @@ -1,4 +1,5 @@ kernel32.dll!CreateFile +kernel32.dll!FormatMessage advapi32.dll!ClearEventLog advapi32.dll!CloseEventLog advapi32.dll!GetNumberOfEventLogRecords @@ -6,6 +7,8 @@ advapi32.dll!GetOldestEventLogRecord advapi32.dll!NotifyChangeEventLog advapi32.dll!OpenEventLog advapi32.dll!ReadEventLog +advapi32.dll!ReportEvent +advapi32.dll!RegisterEventSource wevtapi.dll!EvtQuery wevtapi.dll!EvtSeek wevtapi.dll!EvtSubscribe @@ -40,4 +43,3 @@ wevtapi.dll!EvtFormatMessage wevtapi.dll!EvtOpenSession wevtapi.dll!EvtUpdateBookmark wevtapi.dll!EvtCreateBookmark - diff --git a/src/libraries/System.Diagnostics.PerformanceCounter/src/PinvokeAnalyzerExceptionList.analyzerdata b/src/libraries/System.Diagnostics.PerformanceCounter/src/PinvokeAnalyzerExceptionList.analyzerdata index d8182a70876ea..65be021301f53 100644 --- a/src/libraries/System.Diagnostics.PerformanceCounter/src/PinvokeAnalyzerExceptionList.analyzerdata +++ b/src/libraries/System.Diagnostics.PerformanceCounter/src/PinvokeAnalyzerExceptionList.analyzerdata @@ -1 +1,3 @@ +advapi32.dll!ConvertStringSecurityDescriptorToSecurityDescriptor +kernel32.dll!LoadLibrary perfcounter.dll!FormatFromRawValue \ No newline at end of file diff --git a/src/libraries/System.Management/src/PinvokeAnalyzerExceptionList.analyzerdata.netcoreapp b/src/libraries/System.Management/src/PinvokeAnalyzerExceptionList.analyzerdata.netcoreapp new file mode 100644 index 0000000000000..a6ed64c19d4ea --- /dev/null +++ b/src/libraries/System.Management/src/PinvokeAnalyzerExceptionList.analyzerdata.netcoreapp @@ -0,0 +1 @@ +kernel32.dll!LoadLibrary \ No newline at end of file diff --git a/src/libraries/System.Net.Http.WinHttpHandler/tests/FunctionalTests/System.Net.Http.WinHttpHandler.Functional.Tests.csproj b/src/libraries/System.Net.Http.WinHttpHandler/tests/FunctionalTests/System.Net.Http.WinHttpHandler.Functional.Tests.csproj index 599da9a519e91..d43fb980f5ea1 100644 --- a/src/libraries/System.Net.Http.WinHttpHandler/tests/FunctionalTests/System.Net.Http.WinHttpHandler.Functional.Tests.csproj +++ b/src/libraries/System.Net.Http.WinHttpHandler/tests/FunctionalTests/System.Net.Http.WinHttpHandler.Functional.Tests.csproj @@ -199,6 +199,7 @@ + \ No newline at end of file diff --git a/src/libraries/System.Net.Http/src/PInvokeAnalyzerExceptionList.analyzerdata b/src/libraries/System.Net.Http/src/PinvokeAnalyzerExceptionList.analyzerdata similarity index 100% rename from src/libraries/System.Net.Http/src/PInvokeAnalyzerExceptionList.analyzerdata rename to src/libraries/System.Net.Http/src/PinvokeAnalyzerExceptionList.analyzerdata diff --git a/src/libraries/System.Net.Sockets/src/PinvokeAnalyzerExceptionList.analyzerdata b/src/libraries/System.Net.Sockets/src/PinvokeAnalyzerExceptionList.analyzerdata new file mode 100644 index 0000000000000..e41642f9e083a --- /dev/null +++ b/src/libraries/System.Net.Sockets/src/PinvokeAnalyzerExceptionList.analyzerdata @@ -0,0 +1 @@ +ws2_32.dll!WSADuplicateSocket \ No newline at end of file diff --git a/src/libraries/System.Runtime.WindowsRuntime/ref/System.Runtime.WindowsRuntime.csproj b/src/libraries/System.Runtime.WindowsRuntime/ref/System.Runtime.WindowsRuntime.csproj index 3885371c63fd3..a04068f7e4cf0 100644 --- a/src/libraries/System.Runtime.WindowsRuntime/ref/System.Runtime.WindowsRuntime.csproj +++ b/src/libraries/System.Runtime.WindowsRuntime/ref/System.Runtime.WindowsRuntime.csproj @@ -19,13 +19,13 @@ - + - + diff --git a/src/libraries/System.Runtime.WindowsRuntime/src/System.Runtime.WindowsRuntime.csproj b/src/libraries/System.Runtime.WindowsRuntime/src/System.Runtime.WindowsRuntime.csproj index b8714d9479b2c..5b03245ecc137 100644 --- a/src/libraries/System.Runtime.WindowsRuntime/src/System.Runtime.WindowsRuntime.csproj +++ b/src/libraries/System.Runtime.WindowsRuntime/src/System.Runtime.WindowsRuntime.csproj @@ -16,18 +16,6 @@ SR.PlatformNotSupported_WindowsRuntime true - - - - - - - - - - - - @@ -95,12 +83,24 @@ Common\System\HexConverter.cs + + + + + + + + + + + + - + diff --git a/src/libraries/System.Runtime.WindowsRuntime/tests/System.Runtime.WindowsRuntime.Tests.csproj b/src/libraries/System.Runtime.WindowsRuntime/tests/System.Runtime.WindowsRuntime.Tests.csproj index dab72ed0560b0..8633fffda010c 100644 --- a/src/libraries/System.Runtime.WindowsRuntime/tests/System.Runtime.WindowsRuntime.Tests.csproj +++ b/src/libraries/System.Runtime.WindowsRuntime/tests/System.Runtime.WindowsRuntime.Tests.csproj @@ -18,6 +18,6 @@ - + \ No newline at end of file diff --git a/src/libraries/System.ServiceProcess.ServiceController/src/PinvokeAnalyzerExceptionList.analyzerdata b/src/libraries/System.ServiceProcess.ServiceController/src/PinvokeAnalyzerExceptionList.analyzerdata new file mode 100644 index 0000000000000..f4f41920f718d --- /dev/null +++ b/src/libraries/System.ServiceProcess.ServiceController/src/PinvokeAnalyzerExceptionList.analyzerdata @@ -0,0 +1,2 @@ +advapi32.dll!RegisterServiceCtrlHandlerEx +advapi32.dll!StartServiceCtrlDispatcher \ No newline at end of file diff --git a/src/libraries/build.proj b/src/libraries/build.proj deleted file mode 100644 index 8da5cf9b63eb6..0000000000000 --- a/src/libraries/build.proj +++ /dev/null @@ -1,79 +0,0 @@ - - - - - - true - true - true - - $(BuildDependsOn);BuildNative - $(BuildDependsOn);BuildManaged - $(BuildDependsOn);Pack - $(BuildDependsOn);BuildTests - - - - - - - <_RestoreProjects Include="$(MSBuildThisFileDirectory)restore\dirs.proj" Build="true" /> - - - - <_RestoreProjects Include="$(MSBuildThisFileDirectory)tests.proj" Build="false" /> - - - - - - - - - <_BuildNativeProjects Include="$(MSBuildThisFileDirectory)Native\build-native.proj" /> - - - - - - - - <_BuildMangedProjects Include="$(MSBuildThisFileDirectory)dirs.proj" /> - - - - - - - - <_TestProjects Include="$(MSBuildThisFileDirectory)tests.proj" /> - - - - - - - - <_TestProjects Include="$(MSBuildThisFileDirectory)tests.proj" /> - - - - - - - - <_PackProjects Include="$(MSBuildThisFileDirectory)packages.builds" /> - - - - - - - - - - diff --git a/src/libraries/dir.traversal.targets b/src/libraries/dir.traversal.targets deleted file mode 100644 index 3596af30d2533..0000000000000 --- a/src/libraries/dir.traversal.targets +++ /dev/null @@ -1,53 +0,0 @@ - - - - - - $(MSBuildProjectDefaultTargets) - - - - - - - - - - - - - - - - - - - - - - BuildAllProjects;$(TraversalBuildDependsOn); - - - - - - - - diff --git a/src/libraries/dirs.proj b/src/libraries/dirs.proj deleted file mode 100644 index 2b9534d5965a8..0000000000000 --- a/src/libraries/dirs.proj +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - true - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/libraries/packages.builds b/src/libraries/libraries-packages.proj similarity index 62% rename from src/libraries/packages.builds rename to src/libraries/libraries-packages.proj index ab33fce628208..f1ed35266b01a 100644 --- a/src/libraries/packages.builds +++ b/src/libraries/libraries-packages.proj @@ -1,23 +1,21 @@ - + - - $(AdditionalBuildTargetFrameworks);package-$(Configuration) + + BuildAllProjects=true + $(AdditionalBuildTargetFrameworks);package-$(Configuration) - - - $(AdditionalProperties) - - - $(AdditionalProperties) - + + + - + + + - - - + - - + AfterTargets="Build"> <_PackageReports Include="$(PackageReportDir)*.json" /> - + + + + + + diff --git a/src/libraries/pkg/Directory.Build.props b/src/libraries/pkg/Directory.Build.props index 3092ef9fce4e2..832d9ef353d86 100644 --- a/src/libraries/pkg/Directory.Build.props +++ b/src/libraries/pkg/Directory.Build.props @@ -1,4 +1,8 @@ + + true + + diff --git a/src/libraries/pkg/Microsoft.Extensions.Internal.Transport/Microsoft.Extensions.Internal.Transport.builds b/src/libraries/pkg/Microsoft.Extensions.Internal.Transport/Microsoft.Extensions.Internal.Transport.proj similarity index 100% rename from src/libraries/pkg/Microsoft.Extensions.Internal.Transport/Microsoft.Extensions.Internal.Transport.builds rename to src/libraries/pkg/Microsoft.Extensions.Internal.Transport/Microsoft.Extensions.Internal.Transport.proj diff --git a/src/libraries/pkg/Microsoft.NETCore.Platforms.Future/Microsoft.NETCore.Platforms.Future.builds b/src/libraries/pkg/Microsoft.NETCore.Platforms.Future/Microsoft.NETCore.Platforms.Future.proj similarity index 100% rename from src/libraries/pkg/Microsoft.NETCore.Platforms.Future/Microsoft.NETCore.Platforms.Future.builds rename to src/libraries/pkg/Microsoft.NETCore.Platforms.Future/Microsoft.NETCore.Platforms.Future.proj diff --git a/src/libraries/pkg/Microsoft.NETCore.Platforms/Microsoft.NETCore.Platforms.builds b/src/libraries/pkg/Microsoft.NETCore.Platforms/Microsoft.NETCore.Platforms.proj similarity index 100% rename from src/libraries/pkg/Microsoft.NETCore.Platforms/Microsoft.NETCore.Platforms.builds rename to src/libraries/pkg/Microsoft.NETCore.Platforms/Microsoft.NETCore.Platforms.proj diff --git a/src/libraries/pkg/Microsoft.NETCore.Targets/Microsoft.NETCore.Targets.builds b/src/libraries/pkg/Microsoft.NETCore.Targets/Microsoft.NETCore.Targets.proj similarity index 100% rename from src/libraries/pkg/Microsoft.NETCore.Targets/Microsoft.NETCore.Targets.builds rename to src/libraries/pkg/Microsoft.NETCore.Targets/Microsoft.NETCore.Targets.proj diff --git a/src/libraries/pkg/Microsoft.Private.CoreFx.OOB/Microsoft.Private.CoreFx.OOB.builds b/src/libraries/pkg/Microsoft.Private.CoreFx.OOB/Microsoft.Private.CoreFx.OOB.proj similarity index 100% rename from src/libraries/pkg/Microsoft.Private.CoreFx.OOB/Microsoft.Private.CoreFx.OOB.builds rename to src/libraries/pkg/Microsoft.Private.CoreFx.OOB/Microsoft.Private.CoreFx.OOB.proj diff --git a/src/libraries/pkg/Microsoft.Windows.Compatibility/Microsoft.Windows.Compatibility.builds b/src/libraries/pkg/Microsoft.Windows.Compatibility/Microsoft.Windows.Compatibility.proj similarity index 100% rename from src/libraries/pkg/Microsoft.Windows.Compatibility/Microsoft.Windows.Compatibility.builds rename to src/libraries/pkg/Microsoft.Windows.Compatibility/Microsoft.Windows.Compatibility.proj diff --git a/src/libraries/pkg/dir.traversal.targets b/src/libraries/pkg/dir.traversal.targets index 2e66296d7f6a3..c0494a5587755 100644 --- a/src/libraries/pkg/dir.traversal.targets +++ b/src/libraries/pkg/dir.traversal.targets @@ -1,5 +1,38 @@ - + + + + + + + + + + + + + + + + + BuildAllProjects;$(TraversalBuildDependsOn); + + + + + + diff --git a/src/libraries/pkg/runtime.native.System.IO.Ports/runtime.native.System.IO.Ports.pkgproj b/src/libraries/pkg/runtime.native.System.IO.Ports/runtime.native.System.IO.Ports.pkgproj index d899043c4b87a..211e42313ee2a 100644 --- a/src/libraries/pkg/runtime.native.System.IO.Ports/runtime.native.System.IO.Ports.pkgproj +++ b/src/libraries/pkg/runtime.native.System.IO.Ports/runtime.native.System.IO.Ports.pkgproj @@ -5,7 +5,7 @@ true - + runtimes/$(PackageRID)/native diff --git a/src/libraries/pkg/runtime.native.System.IO.Ports/runtime.native.System.IO.Ports.builds b/src/libraries/pkg/runtime.native.System.IO.Ports/runtime.native.System.IO.Ports.proj similarity index 100% rename from src/libraries/pkg/runtime.native.System.IO.Ports/runtime.native.System.IO.Ports.builds rename to src/libraries/pkg/runtime.native.System.IO.Ports/runtime.native.System.IO.Ports.proj diff --git a/src/libraries/pretest.proj b/src/libraries/pretest.proj index 10cd240779387..988be57df5c5f 100644 --- a/src/libraries/pretest.proj +++ b/src/libraries/pretest.proj @@ -1,24 +1,31 @@ - - + - GenerateLaunchSettingsFiles - $(BuildDependsOnTargets);GenerateTestSharedFrameworkDepsFile - $(BuildDependsOnTargets);GenerateFileVersionProps - netcoreapp - 5.0 + BuildAllProjects=true + + + + + + - + + + + + - + Condition="'$(PlatformManifestFile)' != '' and '$(BuildingNETCoreAppVertical)' == 'true'"> + <_manualSharedFrameworkRuntimeFiles Include="System.Security.Cryptography.Native.OpenSsl.so" /> <_manualSharedFrameworkRuntimeFiles Include="System.Security.Cryptography.Native.Apple.dylib" /> <_manualSharedFrameworkRuntimeFiles Include="System.Security.Cryptography.Native.OpenSsl.dylib" /> @@ -31,7 +38,10 @@ - + - + - - - - - <_TestProjectRootDir>$(LibrariesProjectRoot) - <_TestProjectRootDir Condition="'$(DirectoryToBuild)'!=''">$(DirectoryToBuild) - - - - - - - - - - - - - - - - - - - diff --git a/src/libraries/ref.builds b/src/libraries/ref.builds deleted file mode 100644 index 9bef0a6e4edba..0000000000000 --- a/src/libraries/ref.builds +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - - diff --git a/src/libraries/ref.proj b/src/libraries/ref.proj new file mode 100644 index 0000000000000..c13c10044388a --- /dev/null +++ b/src/libraries/ref.proj @@ -0,0 +1,24 @@ + + + + BuildAllProjects=true + + + + + + + + + + + + + + + + + diff --git a/src/libraries/restore/analyzers/analyzers.depproj b/src/libraries/restore/analyzers/analyzers.depproj deleted file mode 100644 index 27fad4d37cff1..0000000000000 --- a/src/libraries/restore/analyzers/analyzers.depproj +++ /dev/null @@ -1,27 +0,0 @@ - - - false - true - C# - netstandard2.0 - - - - - - - - - - - - - - diff --git a/src/libraries/restore/depproj.proj b/src/libraries/restore/depproj.proj new file mode 100644 index 0000000000000..7825325f92391 --- /dev/null +++ b/src/libraries/restore/depproj.proj @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/libraries/restore/dirs.proj b/src/libraries/restore/dirs.proj deleted file mode 100644 index d006b65c8ff7e..0000000000000 --- a/src/libraries/restore/dirs.proj +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/src/libraries/restore/netcoreapp/netcoreapp.depproj b/src/libraries/restore/netcoreapp/external.netcoreapp.depproj similarity index 100% rename from src/libraries/restore/netcoreapp/netcoreapp.depproj rename to src/libraries/restore/netcoreapp/external.netcoreapp.depproj diff --git a/src/libraries/restore/netstandard/netstandard.depproj b/src/libraries/restore/netstandard/external.netstandard.depproj similarity index 100% rename from src/libraries/restore/netstandard/netstandard.depproj rename to src/libraries/restore/netstandard/external.netstandard.depproj diff --git a/src/libraries/restore/runtime/Directory.Build.props b/src/libraries/restore/runtime/Directory.Build.props index a86068c18c0fb..dacf9d99bf7d3 100644 --- a/src/libraries/restore/runtime/Directory.Build.props +++ b/src/libraries/restore/runtime/Directory.Build.props @@ -2,6 +2,6 @@ external.$(MSBuildProjectName) - + \ No newline at end of file diff --git a/src/libraries/restore/runtime/runtime.depproj b/src/libraries/restore/runtime/runtime.depproj index 18a776f969b07..0546f2f6c8ec3 100644 --- a/src/libraries/restore/runtime/runtime.depproj +++ b/src/libraries/restore/runtime/runtime.depproj @@ -111,4 +111,14 @@ + + + + + $([System.Text.RegularExpressions.Regex]::Replace('$(TargetFrameworks)', '_[^;]+;?', '')) + $([System.Text.RegularExpressions.Regex]::Replace('$(TargetFrameworks)', '-[^;]+', '')) + + diff --git a/src/libraries/restore/tools/tools.depproj b/src/libraries/restore/tools/tools.depproj deleted file mode 100644 index f2e32a3773b8b..0000000000000 --- a/src/libraries/restore/tools/tools.depproj +++ /dev/null @@ -1,18 +0,0 @@ - - - $(ILAsmToolPath) - false - $(ToolRuntimeRID) - $(NoWarn);NU1603;NU1605 - netstandard2.0 - - - - - $(MicrosoftNETCoreILAsmVersion) - - - $(MicrosoftNETCoreILAsmVersion) - - - \ No newline at end of file diff --git a/src/libraries/restore/winrt/winrt.depproj b/src/libraries/restore/winrt/winrt.depproj deleted file mode 100644 index fb99977c302e5..0000000000000 --- a/src/libraries/restore/winrt/winrt.depproj +++ /dev/null @@ -1,16 +0,0 @@ - - - Windows - .winmd - - true - Reference - netcoreapp3.0;$(netcoreappCurrent);netstandard1.0 - - - - 1.0.5 - - - \ No newline at end of file diff --git a/src/libraries/shims/ApiCompat.proj b/src/libraries/shims/ApiCompat.proj index a261947c3bcd2..fa8fb19352c73 100644 --- a/src/libraries/shims/ApiCompat.proj +++ b/src/libraries/shims/ApiCompat.proj @@ -1,9 +1,12 @@ - + + - + + $(BuildTargetFramework) + - $(BuildTargetFramework) + $(TargetFramework) netcoreapp $(IntermediateOutputPath)/apicompat.rsp $(MSBuildThisFileDirectory)ApiCompatBaseline.$(ApiCompatTarget).netfx461.txt @@ -117,11 +120,12 @@ - - + - - + + + + diff --git a/src/libraries/shims/Directory.Build.props b/src/libraries/shims/Directory.Build.props index 790b6126ca80d..d0835fdd9bb98 100644 --- a/src/libraries/shims/Directory.Build.props +++ b/src/libraries/shims/Directory.Build.props @@ -18,8 +18,6 @@ true false true - - false diff --git a/src/libraries/src.builds b/src/libraries/src.builds deleted file mode 100644 index 5903b7fd7a10a..0000000000000 --- a/src/libraries/src.builds +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/src/libraries/src.proj b/src/libraries/src.proj new file mode 100644 index 0000000000000..b3b5f8504fc6e --- /dev/null +++ b/src/libraries/src.proj @@ -0,0 +1,49 @@ + + + + BuildAllProjects=true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/libraries/tests.proj b/src/libraries/tests.proj index 34b7228163c54..27a11e939c947 100644 --- a/src/libraries/tests.proj +++ b/src/libraries/tests.proj @@ -1,92 +1,33 @@ - - - + - - $(NetCoreAppCurrent) - + - - - - - + + true + + ErrorAndContinue + BuildAllProjects=true $(ArtifactsBinDir)*.Tests/**/coverage.xml $(ArtifactsDir)coverage - true - + - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + diff --git a/src/mono/Directory.Build.props b/src/mono/Directory.Build.props index f77c6f89f0fbb..6cf4495760477 100644 --- a/src/mono/Directory.Build.props +++ b/src/mono/Directory.Build.props @@ -93,4 +93,9 @@ strict;nullablePublicOnly + + + $(ArtifactsObjDir)mono/$(PlatformConfigPathPart)/ + $(MonoObjDir)llvm + diff --git a/src/mono/llvm/llvm-init.proj b/src/mono/llvm/llvm-init.proj index 62b0c0d1301b2..a43b35b917bc9 100644 --- a/src/mono/llvm/llvm-init.proj +++ b/src/mono/llvm/llvm-init.proj @@ -13,7 +13,7 @@ - + diff --git a/src/mono/mono.proj b/src/mono/mono.proj index 3f3f04da931ec..55c4e17fba999 100644 --- a/src/mono/mono.proj +++ b/src/mono/mono.proj @@ -1,11 +1,7 @@ - + - + - $(ArtifactsObjDir)mono/$(PlatformConfigPathPart)/ - false - false - $(MonoObjDir)llvm $(ROOTFS_DIR) dotnet.exe dotnet @@ -518,63 +514,6 @@ - - - - - - - - <_MonoRuntimeFilePath Condition="'$(TargetsWindows)' == 'true' and '$(Platform)' == 'x64'">$(MonoObjDir)x64\Bin\$(Configuration)\mono-2.0-sgen.dll - <_MonoRuntimeFilePath Condition="'$(TargetsWindows)' == 'true' and '$(Platform)' == 'x86'">$(MonoObjDir)Win32\Bin\$(Configuration)\mono-2.0-sgen.dll - <_MonoRuntimeFilePath Condition="'$(TargetsOSX)' == 'true'">$(MonoObjDir)mono\mini\.libs\libmonosgen-2.0.dylib - <_MonoRuntimeFilePath Condition="'$(TargetsiOS)' == 'true'">$(MonoObjDir)out\lib\libmonosgen-2.0.dylib - <_MonoRuntimeFilePath Condition="'$(TargetsAndroid)' == 'true'">$(MonoObjDir)out\lib\libmonosgen-2.0.so - <_MonoRuntimeFilePath Condition="'$(_MonoRuntimeFilePath)' == ''">$(MonoObjDir)mono\mini\.libs\libmonosgen-2.0.so - <_MonoRuntimeStaticFilePath Condition="'$(TargetsiOS)' == 'true' or '$(TargetsAndroid)' == 'true'">$(MonoObjDir)out\lib\libmonosgen-2.0.a - <_MonoAotCrossFilePath Condition="'$(TargetsiOS)' == 'true' and '$(Platform)' == 'arm64'">$(MonoObjDir)cross\out\bin\aarch64-darwin-mono-sgen - <_MonoAotCrossFilePath Condition="'$(TargetsiOS)' == 'true' and '$(Platform)' == 'arm'">$(MonoObjDir)cross\out\bin\arm-darwin-mono-sgen - - - - - <_MonoRuntimeArtifacts Include="$(_MonoRuntimeFilePath)"> - $(BinDir)$(MonoFileName) - - <_MonoRuntimeArtifacts Include="$(_MonoRuntimeStaticFilePath)"> - $(BinDir)$(MonoStaticFileName) - - <_MonoRuntimeArtifacts Include="$(_MonoAotCrossFilePath)"> - $(BinDir)cross\mono-aot-cross - - <_MonoIncludeArtifacts Include="$(MonoObjDir)out\include\**" /> - - - - - - - - - - - - - - - - - - - - @@ -714,4 +653,47 @@ + + + + + + + <_MonoRuntimeFilePath Condition="'$(TargetsWindows)' == 'true' and '$(Platform)' == 'x64'">$(MonoObjDir)x64\Bin\$(Configuration)\mono-2.0-sgen.dll + <_MonoRuntimeFilePath Condition="'$(TargetsWindows)' == 'true' and '$(Platform)' == 'x86'">$(MonoObjDir)Win32\Bin\$(Configuration)\mono-2.0-sgen.dll + <_MonoRuntimeFilePath Condition="'$(TargetsOSX)' == 'true'">$(MonoObjDir)mono\mini\.libs\libmonosgen-2.0.dylib + <_MonoRuntimeFilePath Condition="'$(TargetsiOS)' == 'true'">$(MonoObjDir)out\lib\libmonosgen-2.0.dylib + <_MonoRuntimeFilePath Condition="'$(TargetsAndroid)' == 'true'">$(MonoObjDir)out\lib\libmonosgen-2.0.so + <_MonoRuntimeFilePath Condition="'$(_MonoRuntimeFilePath)' == ''">$(MonoObjDir)mono\mini\.libs\libmonosgen-2.0.so + <_MonoRuntimeStaticFilePath Condition="'$(TargetsiOS)' == 'true' or '$(TargetsAndroid)' == 'true'">$(MonoObjDir)out\lib\libmonosgen-2.0.a + <_MonoAotCrossFilePath Condition="'$(TargetsiOS)' == 'true' and '$(Platform)' == 'arm64'">$(MonoObjDir)cross\out\bin\aarch64-darwin-mono-sgen + <_MonoAotCrossFilePath Condition="'$(TargetsiOS)' == 'true' and '$(Platform)' == 'arm'">$(MonoObjDir)cross\out\bin\arm-darwin-mono-sgen + + + + + <_MonoRuntimeArtifacts Include="$(_MonoRuntimeFilePath)"> + $(BinDir)$(MonoFileName) + + <_MonoRuntimeArtifacts Include="$(_MonoRuntimeStaticFilePath)"> + $(BinDir)$(MonoStaticFileName) + + <_MonoRuntimeArtifacts Include="$(_MonoAotCrossFilePath)"> + $(BinDir)cross\mono-aot-cross + + <_MonoIncludeArtifacts Include="$(MonoObjDir)out\include\**" /> + + + + + + + + + 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 e562f9f855e48..cd45f2dc12df4 100644 --- a/src/mono/netcore/System.Private.CoreLib/System.Private.CoreLib.csproj +++ b/src/mono/netcore/System.Private.CoreLib/System.Private.CoreLib.csproj @@ -304,10 +304,6 @@ - - - - + + + - - + + + AdditionalProperties="%(ProjectReference.AdditionalProperties);FileVersion=$(FileVersion)" /> + + + + +