181 lines
12 KiB
XML
181 lines
12 KiB
XML
<Project>
|
|
|
|
<PropertyGroup>
|
|
<RepositoryName Condition="'$(RepositoryName)' == ''">$(MSBuildProjectName)</RepositoryName>
|
|
</PropertyGroup>
|
|
|
|
<Import Project="$([MSBuild]::GetPathOfFileAbove(Directory.Build.props, $(MSBuildThisFileDirectory)..))" />
|
|
|
|
<Import Project="$(GitInfoRepoPropsFile)" Condition="Exists('$(GitInfoRepoPropsFile)')" />
|
|
|
|
<PropertyGroup>
|
|
<SourceDirectory Condition="'$(SourceDirectory)' == ''">$(RepositoryName)</SourceDirectory>
|
|
<ProjectDirectory Condition="'$(ProjectDirectory)' == ''">$(SubmoduleDirectory)$(SourceDirectory)/</ProjectDirectory>
|
|
<MinimalConsoleLogOutput Condition="'$(MinimalConsoleLogOutput)' == ''">true</MinimalConsoleLogOutput>
|
|
<RepoConsoleLogFile>$(LoggingDir)$(RepositoryName).log</RepoConsoleLogFile>
|
|
<RedirectRepoOutputToLog Condition="'$(MinimalConsoleLogOutput)' == 'true'">>> $(RepoConsoleLogFile) 2>&1</RedirectRepoOutputToLog>
|
|
<NetCurrent>net8.0</NetCurrent>
|
|
|
|
<PackagesOutput>$(ProjectDirectory)artifacts/packages/$(Configuration)/NonShipping/</PackagesOutput>
|
|
|
|
<!--
|
|
Repo specific semaphore path for incremental build
|
|
-->
|
|
<RepoCompletedSemaphorePath>$(CompletedSemaphorePath)$(RepositoryName)/</RepoCompletedSemaphorePath>
|
|
|
|
<!-- Paths to the version props files -->
|
|
<CurrentSourceBuiltPackageVersionPropsPath>$(IntermediatePath)PackageVersions.$(RepositoryName).Current.props</CurrentSourceBuiltPackageVersionPropsPath>
|
|
<PreviouslySourceBuiltPackageVersionPropsPath>$(IntermediatePath)PackageVersions.$(RepositoryName).Previous.props</PreviouslySourceBuiltPackageVersionPropsPath>
|
|
<SnapshotPackageVersionPropsPath>$(IntermediatePath)PackageVersions.$(RepositoryName).Snapshot.props</SnapshotPackageVersionPropsPath>
|
|
<PackageVersionPropsPath>$(IntermediatePath)PackageVersions.$(RepositoryName).props</PackageVersionPropsPath>
|
|
<PackageVersionPropsFlowType>AllPackages</PackageVersionPropsFlowType>
|
|
|
|
<EngCommonToolsShFile Condition="Exists('$(ProjectDirectory)eng/common/tools.sh')">$(ProjectDirectory)eng/common/tools.sh</EngCommonToolsShFile>
|
|
<EngCommonBuildShFile Condition="Exists('$(ProjectDirectory)eng/common/build.sh')">$(ProjectDirectory)eng/common/build.sh</EngCommonBuildShFile>
|
|
<GlobalJsonFile Condition="'$(GlobalJsonFile)' == '' and Exists('$(ProjectDirectory)global.json')">$(ProjectDirectory)global.json</GlobalJsonFile>
|
|
<NuGetConfigFile Condition="'$(NuGetConfigFile)' == '' and Exists('$(ProjectDirectory)NuGet.config')">$(ProjectDirectory)NuGet.config</NuGetConfigFile>
|
|
<NuGetConfigFile Condition="'$(NuGetConfigFile)' == '' and Exists('$(ProjectDirectory)NuGet.Config')">$(ProjectDirectory)NuGet.Config</NuGetConfigFile>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup Condition="'$(OS)' == 'Windows_NT'">
|
|
<FlagParameterPrefix>-</FlagParameterPrefix>
|
|
<ArcadeFalseBoolBuildArg>0</ArcadeFalseBoolBuildArg>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition="'$(OS)' != 'Windows_NT'">
|
|
<FlagParameterPrefix>--</FlagParameterPrefix>
|
|
<ArcadeFalseBoolBuildArg>false</ArcadeFalseBoolBuildArg>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup>
|
|
<GitCommitDateNoDashes>$(GitCommitDate.Replace('-', ''))</GitCommitDateNoDashes>
|
|
</PropertyGroup>
|
|
|
|
<!-- A human-readable description of what's building and why. -->
|
|
<PropertyGroup>
|
|
<ProjectBuildReason>'$(RepositoryName)'</ProjectBuildReason>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<EnvironmentVariables Include="DotNetBuildFromSource=true" />
|
|
<EnvironmentVariables Include="DotNetBuildFromSourceFlavor=Product" />
|
|
<EnvironmentVariables Include="DotNetPackageVersionPropsPath=$(PackageVersionPropsPath)" />
|
|
<EnvironmentVariables Include="DotNetRestorePackagesPath=$(PackagesDir)" />
|
|
<EnvironmentVariables Include="DotNetBuildOffline=true" />
|
|
<EnvironmentVariables Include="SuppressTfmSupportBuildWarnings=true" />
|
|
|
|
<!-- Ensure the SDK (Core-SDK/Installer) doesn't add an online source. -->
|
|
<EnvironmentVariables Include="AddDotnetfeedProjectSource=false" />
|
|
|
|
<!-- Arcade tools.sh picks up DotNetCoreSdkDir, but we can pass DOTNET_INSTALL_DIR directly. -->
|
|
<EnvironmentVariables Include="DOTNET_INSTALL_DIR=$(DotNetCliToolDir)" />
|
|
<EnvironmentVariables Include="DOTNET_PATH=$(DotNetCliToolDir)" />
|
|
<EnvironmentVariables Include="DOTNET_HOST_PATH=$(DotNetCliToolDir)dotnet" />
|
|
|
|
<!-- _InitializeDotNetCli is used by websdk and templating to decide whether to init the SDK -->
|
|
<EnvironmentVariables Include="_InitializeDotNetCli=$(DotNetCliToolDir)" />
|
|
<EnvironmentVariables Include="_DotNetInstallDir=$(DotNetCliToolDir)" />
|
|
<EnvironmentVariables Include="_InitializeToolset=$(SourceBuiltSdksDir)Microsoft.DotNet.Arcade.Sdk/tools/Build.proj" Condition="'$(UseBootstrapArcade)' != 'true'" />
|
|
<EnvironmentVariables Include="_OverrideArcadeInitializeBuildToolFramework=$(NetCurrent)" />
|
|
|
|
<EnvironmentVariables Include="DotNetUseShippingVersions=true" />
|
|
|
|
<EnvironmentVariables Include="PreReleaseVersionLabel=$(PreReleaseVersionLabel)" />
|
|
<EnvironmentVariables Include="PackageVersionStamp=$(PreReleaseVersionLabel)" />
|
|
|
|
<!-- We pass '-ci', but also apply ci mode via env var for edge cases. (E.g. misbehaving inner builds.) -->
|
|
<EnvironmentVariables Include="ContinuousIntegrationBuild=true" />
|
|
|
|
<!-- Turn off node reuse for source build because repos use conflicting versions
|
|
of compilers which cause assembly load errors.
|
|
See https://github.com/dotnet/source-build/issues/541 -->
|
|
<EnvironmentVariables Include="MSBUILDDISABLENODEREUSE=1" />
|
|
|
|
<!--
|
|
Apply official build versioning to match Microsoft build. These are based on build date, so
|
|
need to be parsed from Maestro++ auto-update and passed through.
|
|
-->
|
|
<EnvironmentVariables Include="OfficialBuildId=$(OfficialBuildId)" />
|
|
<EnvironmentVariables Include="BUILD_BUILDNUMBER=$(OfficialBuildId)" />
|
|
|
|
<!-- Give build access to commit info without necessarily requiring git queries. -->
|
|
<EnvironmentVariables Include="GitCommitCount=$(GitCommitCount)" />
|
|
<EnvironmentVariables Include="GitCommitHash=$(GitCommitHash)" Condition="'$(GitCommitHash)' != ''" />
|
|
<EnvironmentVariables Include="GitInfoCommitHash=$(GitCommitHash)" Condition="'$(GitCommitHash)' != ''" />
|
|
<EnvironmentVariables Include="SourceRevisionId=$(GitCommitHash)" Condition="'$(GitCommitHash)' != ''" />
|
|
<EnvironmentVariables Include="RepositoryCommit=$(GitCommitHash)" Condition="'$(GitCommitHash)' != ''" />
|
|
<EnvironmentVariables Include="COMMIT_SHA=$(GitCommitHash)" Condition="'$(GitCommitHash)' != ''" />
|
|
<EnvironmentVariables Include="GIT_COMMIT=$(GitCommitHash)" Condition="'$(GitCommitHash)' != ''" />
|
|
<EnvironmentVariables Include="RepositoryType=Git" />
|
|
|
|
<EnvironmentVariables Include="DeterministicSourcePaths=true" Condition="'$(DeterministicBuildOptOut)' != 'true'" />
|
|
<EnvironmentVariables Include="DeterministicSourcePaths=false" Condition="'$(DeterministicBuildOptOut)' == 'true'" />
|
|
|
|
<EnvironmentVariables Include="SourceRoot=$(ProjectDirectory)" />
|
|
|
|
<!-- https://github.com/dotnet/source-build/issues/3081 -->
|
|
<EnvironmentVariables Include="CheckEolTargetFramework=false" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup Condition="'$(EnableExtraDebugging)' == 'true'">
|
|
<!-- If MSBuild exits early, make sure debug output like 'MSBuild_*.failure.txt' ends up in a place we can see it. -->
|
|
<EnvironmentVariables Include="MSBUILDDEBUGPATH=$(MSBuildDebugPathTargetDir)" />
|
|
<EnvironmentVariables Include="MSBUILDDEBUGCOMM=1" />
|
|
<EnvironmentVariables Include="MSBUILDDEBUGSCHEDULER=1" />
|
|
<EnvironmentVariables Include="MSBUILDDEBUGFORCECACHING=1" />
|
|
<EnvironmentVariables Include="MSBUILDDEBUG=1" />
|
|
<EnvironmentVariables Include="MSBUILDDEBUGEVALUATION=1" />
|
|
<EnvironmentVariables Include="MSBUILDTARGETOUTPUTLOGGING=1" />
|
|
<EnvironmentVariables Include="MSBUILDLOGTASKINPUTS=1" />
|
|
<EnvironmentVariables Include="MSBUILDEMITSOLUTION=1" />
|
|
<EnvironmentVariables Include="MSBUILDLOGVERBOSERARSEARCHRESULTS=1" />
|
|
|
|
<!-- Output Roslyn logs to allow debugging compiler errors -->
|
|
<EnvironmentVariables Include="RoslynCommandLineLogFile=$(RoslynDebugPathTargetDir)" />
|
|
|
|
<!--ASP.NET dev server request logs -->
|
|
<EnvironmentVariables Include="RAZORBUILDSERVER_LOG=$(AspNetRazorBuildServerLogFile)" />
|
|
</ItemGroup>
|
|
|
|
<PropertyGroup>
|
|
<ArcadeBootstrapDir>$(ArcadeBootstrapPackageDir)</ArcadeBootstrapDir>
|
|
<ArcadeBootstrapVersion>$(ARCADE_BOOTSTRAP_VERSION)</ArcadeBootstrapVersion>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup>
|
|
<StandardSourceBuildArgs> $(FlagParameterPrefix)ci</StandardSourceBuildArgs>
|
|
<StandardSourceBuildArgs>$(StandardSourceBuildArgs) $(FlagParameterPrefix)configuration $(Configuration)</StandardSourceBuildArgs>
|
|
<StandardSourceBuildArgs>$(StandardSourceBuildArgs) $(FlagParameterPrefix)restore</StandardSourceBuildArgs>
|
|
<StandardSourceBuildArgs>$(StandardSourceBuildArgs) $(FlagParameterPrefix)build</StandardSourceBuildArgs>
|
|
<StandardSourceBuildArgs>$(StandardSourceBuildArgs) $(FlagParameterPrefix)pack</StandardSourceBuildArgs>
|
|
<StandardSourceBuildArgs>$(StandardSourceBuildArgs) $(FlagParameterPrefix)publish</StandardSourceBuildArgs>
|
|
<StandardSourceBuildArgs>$(StandardSourceBuildArgs) -bl</StandardSourceBuildArgs>
|
|
|
|
<StandardSourceBuildArgs>$(StandardSourceBuildArgs) /p:ArcadeBuildFromSource=true</StandardSourceBuildArgs>
|
|
<StandardSourceBuildArgs>$(StandardSourceBuildArgs) /p:CopyWipIntoInnerSourceBuildRepo=true</StandardSourceBuildArgs>
|
|
<StandardSourceBuildArgs>$(StandardSourceBuildArgs) /p:DotNetBuildOffline=true</StandardSourceBuildArgs>
|
|
<StandardSourceBuildArgs>$(StandardSourceBuildArgs) /p:CopySrcInsteadOfClone=true</StandardSourceBuildArgs>
|
|
<StandardSourceBuildArgs>$(StandardSourceBuildArgs) /p:DotNetPackageVersionPropsPath="$(PackageVersionPropsPath)"</StandardSourceBuildArgs>
|
|
<StandardSourceBuildArgs>$(StandardSourceBuildArgs) /p:AdditionalSourceBuiltNupkgCacheDir="$(SourceBuiltPackagesPath)"</StandardSourceBuildArgs>
|
|
<StandardSourceBuildArgs>$(StandardSourceBuildArgs) /p:ReferencePackageNupkgCacheDir="$(ReferencePackagesDir)"</StandardSourceBuildArgs>
|
|
<StandardSourceBuildArgs>$(StandardSourceBuildArgs) /p:PreviouslySourceBuiltNupkgCacheDir="$(PrebuiltSourceBuiltPackagesPath)"</StandardSourceBuildArgs>
|
|
<StandardSourceBuildArgs>$(StandardSourceBuildArgs) /p:SourceBuildUseMonoRuntime=$(SourceBuildUseMonoRuntime)</StandardSourceBuildArgs>
|
|
|
|
<StandardSourceBuildCommand>$(ProjectDirectory)\build$(ShellExtension)</StandardSourceBuildCommand>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<ArcadeSdkOverride Include="Microsoft.DotNet.Arcade.Sdk" Group="ARCADE" Version="$(arcadeOutputPackageVersion)"/>
|
|
<ArcadeBootstrapSdkOverride Include="Microsoft.DotNet.Arcade.Sdk" Group="ARCADE" Version="$(ArcadeBootstrapVersion)" Location="$(ArcadeBootstrapDir)microsoft.dotnet.arcade.sdk/$(ArcadeBootstrapVersion)" />
|
|
<ArcadePackagingOverride Include="Microsoft.DotNet.Build.Tasks.Packaging" Group="ARCADE_PACKAGING" Version="$(arcadeOutputPackageVersion)"/>
|
|
<ArcadeTargetFrameworkOverride Include="Microsoft.DotNet.Build.Tasks.TargetFramework" Group="ARCADE_TGT_FX" Version="$(arcadeOutputPackageVersion)"/>
|
|
<ArcadeSharedFrameworkSdkOverride Include="Microsoft.DotNet.SharedFramework.Sdk" Group="ARCADE_SHARED_FX_SDK" Version="$(arcadeOutputPackageVersion)"/>
|
|
<ILSdkOverride Include="Microsoft.NET.Sdk.IL" Group="IL" />
|
|
<MsBuildTraversalSdkOverride Include="Microsoft.Build.Traversal" Group="MSBUILD_TRAVERSAL" Version="2.0.2"/>
|
|
<WindowsDesktopSdkOverride Include="Microsoft.Net.Sdk.WindowsDesktop" Group="WINDOWS_DESKTOP" Location="$(ToolsDir)EmptySdk"/>
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<UseSourceBuiltSdkOverride Condition="'$(UseBootstrapArcade)' != 'true'" Include="@(ArcadeSdkOverride)" />
|
|
<UseSourceBuiltSdkOverride Condition="'$(UseBootstrapArcade)' == 'true'" Include="@(ArcadeBootstrapSdkOverride)" />
|
|
</ItemGroup>
|
|
</Project>
|