10000 Pass -productBuild and -sourceBuild switches (#461) · dotnet/dotnet@d780717 · GitHub
[go: up one dir, main page]

Skip to content

Commit d780717

Browse files
Pass -productBuild and -sourceBuild switches (#461)
Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
1 parent 5d437e9 commit d780717

File tree

5 files changed

+18
-21
lines changed

5 files changed

+18
-21
lines changed

repo-projects/Directory.Build.props

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -106,9 +106,11 @@
106106

107107
<!-- Common args used for building and testing. -->
108108
<PropertyGroup>
109+
<CommonArgs Condition="'$(DotNetBuildSourceOnly)' != 'true'">$(CommonArgs) $(FlagParameterPrefix)productBuild</CommonArgs>
110+
109111
<!-- TODO: Remove the DisableDevBuildAsDefaultForSourceOnly condition when dev builds are the default for source only.
110112
https://github.com/dotnet/source-build/issues/4922 -->
111-
<CommonArgs Condition="'$(ContinuousIntegrationBuild)' == 'true' or ('$(DotNetBuildSourceOnly)' == 'true' and '$(DisableDevBuildAsDefaultForSourceOnly)' == 'true')">$(FlagParameterPrefix)ci</CommonArgs>
113+
<CommonArgs Condition="'$(ContinuousIntegrationBuild)' == 'true' or ('$(DotNetBuildSourceOnly)' == 'true' and '$(DisableDevBuildAsDefaultForSourceOnly)' == 'true')">$(CommonArgs) $(FlagParameterPrefix)ci</CommonArgs>
112114

113115
<!-- Pass down configuration properties -->
114116
<CommonArgs>$(CommonArgs) $(FlagParameterPrefix)configuration $(Configuration)</CommonArgs>
@@ -132,7 +134,6 @@
132134
<CommonArgs>$(CommonArgs) /p:SourceBuiltAssetManifestsDir=$(RepoAssetManifestsDir)</CommonArgs>
133135

134136
<CommonArgs>$(CommonArgs) /p:GitHubRepositoryName=$(RepositoryName)</CommonArgs>
135-
<CommonArgs>$(CommonArgs) /p:DotNetBuildRepo=true</CommonArgs>
136137
<CommonArgs>$(CommonArgs) /p:DotNetBuildOrchestrator=true</CommonArgs>
137138

138139
<!-- Pass the repository URL in globally so that we redirect sourcelink package information to the VMR repo. -->
@@ -146,7 +147,7 @@
146147
</PropertyGroup>
147148

148149
<PropertyGroup Condition="'$(DotNetBuildSourceOnly)' == 'true'">
149-
<CommonArgs>$(CommonArgs) /p:DotNetBuildSourceOnly=true</CommonArgs>
150+
<CommonArgs>$(CommonArgs) $(FlagParameterPrefix)sourceBuild</CommonArgs>
150151
<CommonArgs>$(CommonArgs) /p:PreviouslySourceBuiltNupkgCacheDir="$(PreviouslySourceBuiltPackagesPath)"</CommonArgs>
151152
<CommonArgs>$(CommonArgs) /p:ReferencePackageNupkgCacheDir="$(ReferencePackagesDir)"</CommonArgs>
152153
<CommonArgs>$(CommonArgs) /p:TrackPrebuiltUsageReportDir="$(ArtifactsLogRepoDir)"</CommonArgs>

repo-projects/fsharp.proj

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,17 +12,7 @@
1212
<BuildActions Condition="'$(BuildOS)' == 'windows' and '$(ForceDotNetMSBuildEngine)' != 'false'">$(BuildActions) $(FlagParameterPrefix)noVisualStudio</BuildActions>
1313

1414
<BuildArgs>$(BuildArgs) /p:GenerateResourceUsePreserializedResources=true</BuildArgs>
15-
16-
<!-- This makes sure that the fsharp scripts understand that the build is executed in product build mode.
17-
Important as it picks a different solution to build based on that.
18-
This flag can get removed when the VMR passes it in globally to all repos. -->
19-
<BuildArgs>$(BuildArgs) $(FlagParameterPrefix)productBuild</BuildArgs>
20-
<!--
21-
dotnet/fsharp has a custom eng/build.sh script that handles its own sourcebuild arg
22-
differently from the standard MSBuild arg set. Including both args is fine, but the
23-
custom sourcebuild arg is the one that's required. This avoids running bootstrapping twice.
24-
-->
25-
<BuildArgs Condition="'$(DotNetBuildSourceOnly)' == 'true'">$(BuildArgs) $(FlagParameterPrefix)sourceBuild $(FlagParameterPrefix)tfm $(NetCurrent)</BuildArgs>
15+
<BuildArgs Condition="'$(DotNetBuildSourceOnly)' == 'true'">$(BuildArgs) $(FlagParameterPrefix)tfm $(NetCurrent)</BuildArgs>
2616
</PropertyGroup>
2717

2818
<ItemGroup>

src/arcade/eng/common/core-templates/steps/source-build.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,13 +51,12 @@ steps:
5151
${{ coalesce(parameters.platform.buildScript, './build.sh') }} --ci \
5252
--configuration $buildConfig \
5353
--restore --build --pack -bl \
54+
--source-build \
5455
${{ parameters.platform.buildArguments }} \
5556
$internalRuntimeDownloadArgs \
5657
$targetRidArgs \
5758
$baseRidArgs \
5859
$portableBuildArgs \
59-
/p:DotNetBuildSourceOnly=true \
60-
/p:DotNetBuildRepo=true \
6160
displayName: Build
6261

6362
- template: /eng/common/core-templates/steps/publish-pipeline-artifacts.yml

src/nuget-client/eng/dotnet-build/build.ps1

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ param (
55
[string][Alias('v')]$verbosity = "minimal",
66
[switch]$ci,
77
[switch]$bl,
8+
[switch][Alias('pb')]$productBuild
89
[Parameter(ValueFromRemainingArguments = $true)]
910
[string[]]$AdditionalArgs
1011
)
@@ -62,14 +63,15 @@ $dotnetArguments += "-v:$verbosity"
6263
$dotnetArguments += "$PSScriptRoot/dotnet-build.proj"
6364
# Then remaining arguments.
6465
$dotnetArguments += "/p:Configuration=$configuration"
65-
$dotnetArguments += "/p:DotNetBuildRepo=true"
66+
$dotnetArguments += "/p:DotNetBuildRepo=$productBuild"
6667
$dotnetArguments += "/p:RepoRoot=$repoRoot"
6768
if ($bl){
6869
$dotnetArguments += "/bl:${binLog}"
6970
}
7071
if ($ci) {
7172
$dotnetArguments += "/p:ContinuousIntegrationBuild=true"
7273
}
74+
7375
# Then any pass-through arguments.
7476
$dotnetArguments += $AdditionalArgs
7577

src/nuget-client/eng/dotnet-build/build.sh

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
88
configuration='Release'
99
verbosity='minimal'
1010
source_build=false
11+
product_build=false
1112
properties=''
1213

1314
# resolve $SOURCE until the file is no longer a symlink
@@ -34,8 +35,13 @@ while [[ $# > 0 ]]; do
3435
configuration=$2
3536
shift
3637
;;
37-
--source-build|-sb)
38+
--source-build|--sourcebuild|-sb)
3839
source_build=true
40+
product_build=true
41+
shift
42+
;;
43+
--product-build|--productbuild|-pb)
44+
product_build=true
3945
shift
4046
;;
4147
-*)
@@ -88,9 +94,8 @@ ReadGlobalVersion Microsoft.DotNet.Arcade.Sdk
8894
export ARCADE_VERSION=$_ReadGlobalVersion
8995
export NUGET_PACKAGES=${repo_root}artifacts/.packages/
9096

91-
if [[ "$source_build" == true ]]; then
92-
properties="$properties /p:DotNetBuildSourceOnly=true"
93-
fi
97+
properties="$properties /p:DotNetBuildRepo=$product_build"
98+
properties="$properties /p:DotNetBuildSourceOnly=$source_build"
9499

95100
properties="$properties /p:Configuration=$configuration"
96101
properties="$properties /p:DotNetBuildRepo=true"

0 commit comments

Comments
 (0)
0