Skip to content

Commit

Permalink
New Configuration System (dotnet#1787)
Browse files Browse the repository at this point in the history
* libraries -restore for vertical build without test restore

* Automatic test change and regex to remove the addition of an extra line at eof

* manual test restore fixed (restore completely done for vertical build)

* build native done

* Automatic ref change and regex to remove the last line

* manual reference assebly change and generated shims build

* automatic src change and regex

* native bin place and src build manual change

* apicompat and pretest.csproj done

* fixing the package build

* fixing all config

* packaging and feedback

* adding back placeholder configuration

* fixing the shims

* delete configuration.props

* making the build work in master

* Test Change

* fixing the packageing, test restore replacing TargetFramework -> OriginalTargetFramework

* delete test configuraiton.props, trailing semicolon and use targetFramework

* reverting the package change

* enable apicompat and fixing configurationGroup for individual projects

* fixing the api compat

* making ilproj work

* adding the outerBuildTest

* adding the arcade package version

* fixing the merge conflicts

* minor changes

* adding additional configs and setting the runtimeOS

* making the  vs stuff work

* removing the target Group to fix the apicompat

* fixing the linux build and some minor changes

* making additionalBuildTargetFramework LOcalProperty

* fixing the allConfigurations build

* fixing the netfx build

* fixing package Testing and restore

* Missing  TargetFrameworks tag

* making the VSdesgin stuff work

* Remove OriginalFramework Entirely

* some minor pr feedback

* RemoveExtraSemicolon

* use boolean exclude flag

* fixing yml scripts to pass tests

* adding comments and some minor feedback

* moving packaging property to correct plave

* fixing the build for web assembly

* Fixing the live ci build

* Fixing the live build for shims

* fixing the tests

* fixing the packaging and enterprise linux

* fixing  package sizes

* Fix the targetFramework

* updating the targetFramework sdl

* removing the buildOS and be able to use OSGroup as done in the old system

* Fixing the osgroup stuff for send to helix task

* Fix OSX failures

* Fixing the osx build

* uploading tmp folder to artifacts

* running restore for runtime.deproj correctly
  • Loading branch information
Anipik authored Feb 6, 2020
1 parent 6766eb7 commit 725968c
Show file tree
Hide file tree
Showing 1,537 changed files with 3,912 additions and 9,188 deletions.
4 changes: 4 additions & 0 deletions eng/Version.Details.xml
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,10 @@
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>0b404cb7575c8addc5e10f3fac57e79c596db28e</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk" Version="5.0.0-beta.20103.5">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>27c8467294a4e64ac6642b4c12ca63495ff126c8</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.RemoteExecutor" Version="5.0.0-beta.20104.2">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>0b404cb7575c8addc5e10f3fac57e79c596db28e</Sha>
Expand Down
2 changes: 1 addition & 1 deletion eng/build.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ foreach ($argument in $PSBoundParameters.Keys)
"test" { $arguments += " -test" }
"configuration" { $configuration = (Get-Culture).TextInfo.ToTitleCase($($PSBoundParameters[$argument])); $arguments += " /p:ConfigurationGroup=$configuration -configuration $configuration" }
"runtimeConfiguration" { $arguments += " /p:RuntimeConfiguration=$((Get-Culture).TextInfo.ToTitleCase($($PSBoundParameters[$argument])))" }
"framework" { $arguments += " /p:TargetGroup=$($PSBoundParameters[$argument].ToLowerInvariant())" }
"framework" { $arguments += " /p:BuildTargetFramework=$($PSBoundParameters[$argument].ToLowerInvariant())" }
"os" { $arguments += " /p:OSGroup=$($PSBoundParameters[$argument])" }
"allconfigurations" { $arguments += " /p:BuildAllConfigurations=true" }
"arch" { $arguments += " /p:ArchGroup=$($PSBoundParameters[$argument]) /p:TargetArchitecture=$($PSBoundParameters[$argument])" }
Expand Down
2 changes: 1 addition & 1 deletion eng/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ while [[ $# > 0 ]]; do
;;
-framework|-f)
val="$(echo "$2" | awk '{print tolower($0)}')"
arguments="$arguments /p:TargetGroup=$val"
arguments="$arguments /p:BuildTargetFramework=$val"
shift 2
;;
-os)
Expand Down
10 changes: 0 additions & 10 deletions eng/configurations/archgroups.props

This file was deleted.

6 changes: 0 additions & 6 deletions eng/configurations/configurationgroups.props

This file was deleted.

46 changes: 0 additions & 46 deletions eng/configurations/osgroups.props

This file was deleted.

49 changes: 0 additions & 49 deletions eng/configurations/properties.props

This file was deleted.

175 changes: 0 additions & 175 deletions eng/configurations/targetgroups.props

This file was deleted.

5 changes: 5 additions & 0 deletions eng/depProj.common.targets
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<!-- Licensed to the .NET Foundation under one or more agreements. The .NET Foundation licenses this file to you under the MIT license. See the LICENSE file in the project root for more information. -->
<Project>
<Import Condition="'$(IsCrossTargetingBuild)' != 'true'" Project="depProj.targets" />
<Import Condition="'$(IsCrossTargetingBuild)' == 'true'" Project="$(MSBuildExtensionsPath)Microsoft.Common.CrossTargeting.targets" />
</Project>
3 changes: 3 additions & 0 deletions eng/depProj.targets
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,9 @@ See the LICENSE file in the project root for more information.
<CopyNuGetImplementations>true</CopyNuGetImplementations>
</PropertyGroup>

<!-- This file results in importing the Build Target. -->
<Import Project="$(MSBuildToolsPath)\Microsoft.Common.targets" />

<Target Name="RemoveImplicitPackageReferences">
<ItemGroup>
<!-- Remove all implicit framework packages, depprojs are meant to be wholly explicit -->
Expand Down
14 changes: 7 additions & 7 deletions eng/illink.targets
Original file line number Diff line number Diff line change
Expand Up @@ -35,23 +35,23 @@
Must be enabled by setting BinPlaceILLinkTrimAssembly=true
-->
<ItemGroup Condition="'$(BinPlaceILLinkTrimAssembly)' == 'true'">
<BinPlaceConfiguration Include="$(BuildConfiguration)">
<BinPlaceTargetFramework Include="$(BuildConfiguration)">
<RuntimePath>$(ArtifactsBinDir)ILLinkTrimAssembly/$(BuildConfiguration)/trimmed</RuntimePath>
<ItemName>TrimmedItem</ItemName>
</BinPlaceConfiguration>
<BinPlaceConfiguration Include="$(BuildConfiguration)">
</BinPlaceTargetFramework>
<BinPlaceTargetFramework Include="$(BuildConfiguration)">
<RuntimePath>$(ArtifactsBinDir)ILLinkTrimAssembly/$(BuildConfiguration)/reports</RuntimePath>
<ItemName>TrimmingReport</ItemName>
</BinPlaceConfiguration>
<BinPlaceConfiguration Include="$(BuildConfiguration)">
</BinPlaceTargetFramework>
<BinPlaceTargetFramework Include="$(BuildConfiguration)">
<RuntimePath>$(ArtifactsBinDir)ILLinkTrimAssembly/$(BuildConfiguration)/pretrimmed</RuntimePath>
<ItemName>PreTrimmedItem</ItemName>
</BinPlaceConfiguration>
</BinPlaceTargetFramework>
</ItemGroup>

<Target Name="_SetILLinkTrimAssembly"
Condition="'$(ILLinkTrimAssembly)' == ''"
DependsOnTargets="GetBinPlaceConfiguration">
DependsOnTargets="GetBinPlaceTargetFramework">
<PropertyGroup>
<!-- Currently ILLink cannot handle type projections from Windows.winmd, disable if the project references it -->
<ILLinkTrimAssembly Condition="'%(ReferencePath.FileName)%(ReferencePath.Extension)' == 'Windows.winmd'">false</ILLinkTrimAssembly>
Expand Down
2 changes: 1 addition & 1 deletion eng/pipelines/libraries/base-job.yml
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ jobs:

- ${{ if ne(parameters.framework, '') }}:
- _finalFrameworkArg: -framework ${{ parameters.framework }}
- _extraHelixArguments: /p:TargetGroup=${{ parameters.framework }}
- _extraHelixArguments: /p:BuildTargetFramework=${{ parameters.framework }}

- ${{ if eq(parameters.framework, 'allConfigurations') }}:
- _finalFrameworkArg: -allConfigurations
Expand Down
6 changes: 6 additions & 0 deletions eng/pipelines/libraries/build-job.yml
Original file line number Diff line number Diff line change
Expand Up @@ -153,6 +153,12 @@ jobs:
inputs:
sourceFolder: $(Build.SourcesDirectory)/artifacts/packages
targetFolder: $(Build.ArtifactStagingDirectory)/artifacts/packages

- task: CopyFiles@2
displayName: Prepare tmp assets to publish
inputs:
sourceFolder: $(Build.SourcesDirectory)/artifacts/tmp
targetFolder: $(Build.ArtifactStagingDirectory)/artifacts/tmp

- template: /eng/pipelines/common/upload-artifact-step.yml
parameters:
Expand Down
Loading

0 comments on commit 725968c

Please sign in to comment.