aspnetcore/eng/SourceBuild.props

76 строки
3.3 KiB
XML

<Project>
<PropertyGroup>
<GitHubRepositoryName>aspnetcore</GitHubRepositoryName>
<SourceBuildManagedOnly>true</SourceBuildManagedOnly>
<CloneSubmodulesToInnerSourceBuildRepo>false</CloneSubmodulesToInnerSourceBuildRepo>
</PropertyGroup>
<Target Name="PrepareGlobalJsonForSourceBuild"
AfterTargets="PrepareInnerSourceBuildRepoRoot"
BeforeTargets="RunInnerSourceBuildCommand">
<Exec
Command="./eng/scripts/prepare-sourcebuild-globaljson.sh"
WorkingDirectory="$(InnerSourceBuildRepoRoot)" />
</Target>
<!--
Init submodules - temporarary workaround for https://github.com/dotnet/sourcelink/pull/653
-->
<Target Name="InitSubmodules"
DependsOnTargets="PrepareInnerSourceBuildRepoRoot"
BeforeTargets="RunInnerSourceBuildCommand">
<Exec
Command="git submodule update --init --recursive"
WorkingDirectory="$(InnerSourceBuildRepoRoot)"
EnvironmentVariables="@(InnerBuildEnv)" />
</Target>
<!--
Remove inner source .globalconfig file as both the inner and outer config files get loaded and cause a conflict.
Leaving the inner will cause all conflicting settings to be ignored.
https://docs.microsoft.com/en-us/dotnet/fundamentals/code-analysis/configuration-files#general-options
-->
<Target Name="RemoveInnerGlobalConfig"
DependsOnTargets="PrepareInnerSourceBuildRepoRoot"
BeforeTargets="RunInnerSourceBuildCommand">
<Delete Files="$(InnerSourceBuildRepoRoot).globalconfig" />
</Target>
<!--
Build RepoTasks - this is normally triggered via the build script but the inner ArPow source-build is run via msbuild
-->
<Target Name="BuildRepoTasks"
Condition="'$(ArcadeInnerBuildFromSource)' == 'true'"
BeforeTargets="Execute">
<!-- If the alternative runtime location and key are present, pass those through -->
<PropertyGroup>
<_AdditionalRepoTaskBuildArgs />
<_AdditionalRepoTaskBuildArgs Condition="'$(DotNetRuntimeSourceFeed)' != ''" >$(_AdditionalRepoTaskBuildArgs) --runtimesourcefeed $(DotNetRuntimeSourceFeed)</_AdditionalRepoTaskBuildArgs>
<_AdditionalRepoTaskBuildArgs Condition="'$(DotNetRuntimeSourceFeedKey)' != ''" >$(_AdditionalRepoTaskBuildArgs) --runtimesourcefeedkey $(DotNetRuntimeSourceFeedKey)</_AdditionalRepoTaskBuildArgs>
</PropertyGroup>
<!-- Call the build.sh script to build the repo tasks. Set IgnoreStandardErrorWarningFormat
to true. This avoids fatal errors, because in internal builds there are usually a few failed installation
attempts as the install script walks through potential locations for a runtime.
The overall build script will return a proper exit code, but we don't want to pick up the printed error messages. -->
<Exec
Command="./eng/build.sh --only-build-repo-tasks -bl $(_AdditionalRepoTaskBuildArgs)"
IgnoreStandardErrorWarningFormat="true"
WorkingDirectory="$(InnerSourceBuildRepoRoot)"
EnvironmentVariables="@(InnerBuildEnv)" />
</Target>
<Target Name="CustomizeInnerBuildArgs"
BeforeTargets="GetSourceBuildCommandConfiguration">
<PropertyGroup>
<InnerBuildArgs>$(InnerBuildArgs) /p:SourceBuildRuntimeIdentifier=$(TargetRuntimeIdentifier)</InnerBuildArgs>
</PropertyGroup>
</Target>
</Project>