mirror of
https://github.com/VSadov/Satori.git
synced 2025-06-09 17:44:48 +09:00

* Initial arcade-powered source-build infra
* Add patches, fixup from 5.0
* Rename patches to match 6.0-p1 work
* Add source-build specific build script
* Incorporate build-source-build.sh, into eng/
* Run inner build script, through coreclr
* Initial source-build args based on live build (not props file)
* Cleanup: add RID comments, rm empty/absolute args
* Fix subsets
* Disable sourcelink in env, not args
* Fix CI NZEC
* Revert "Use same code to DetectCiphersuiteConfiguration for portable and non-portable builds"
This reverts commit 464010d9d0
.
* Fix portability
* Fix AllJits build
* Fix missing crossgen2 for non-portable RID
* Create supplemental intermediate nupkgs
* Tweak category names
* Use centralized supplemental nupkg infra
* Add additional 6.0 patches
* Patch updates after merging in main
* SourceBuild.props cleanup
* Fix issue with incorrect patch merge
* Patch updates
* Edit clr.tools patch
* patch updates
* Revert patch integration
* Patch updates
* Edits per code review feedback
* ILAsm workaround
* patch updates
* Move logic to set ILAsmToolPath for source-build
* Update eng/SourceBuild.props
Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
* Remove libraries specific patches
* Patch updates necessary with latest main merge
* Add back libraries-packages.proj harvesting patch
* Refactor intermediate package split to be chunkier
* Integrate patch 0017
* Subsets update per code review
* Remove obsolete patch
* Removed patches that were integrated into main
* Remove two additional patches
* Remove remaining patches
Co-authored-by: Davis Goodin <dagood@microsoft.com>
Co-authored-by: dseefeld <dseefeld@microsoft.com>
Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
73 lines
3.9 KiB
XML
73 lines
3.9 KiB
XML
<Project>
|
|
|
|
<PropertyGroup>
|
|
<GitHubRepositoryName>runtime</GitHubRepositoryName>
|
|
</PropertyGroup>
|
|
|
|
<!-- Set up the dotnet/runtime source-build command. -->
|
|
<PropertyGroup>
|
|
<BaseInnerSourceBuildCommand>./build.sh</BaseInnerSourceBuildCommand>
|
|
|
|
<SourceBuildPortable>true</SourceBuildPortable>
|
|
<SourceBuildPortable Condition="'$(SourceBuildNonPortable)' == 'true'">false</SourceBuildPortable>
|
|
|
|
<!-- If TargetRid not specified, detect RID based on portability. -->
|
|
<TargetRid Condition="'$(TargetRid)' == '' and '$(SourceBuildNonPortable)' == 'true'">$([System.Runtime.InteropServices.RuntimeInformation]::RuntimeIdentifier)</TargetRid>
|
|
<TargetRid Condition="'$(TargetRid)' == ''">$(__DistroRid)</TargetRid>
|
|
|
|
<!-- Split e.g. 'fedora.33-x64' into 'fedora.33' and 'x64'. -->
|
|
<_targetRidPlatformIndex>$(TargetRid.LastIndexOfAny("-"))</_targetRidPlatformIndex>
|
|
<TargetRidWithoutPlatform>$(TargetRid.Substring(0, $(_targetRidPlatformIndex)))</TargetRidWithoutPlatform>
|
|
<TargetRidPlatform>$(TargetRid.Substring($(_targetRidPlatformIndex)).TrimStart('-'))</TargetRidPlatform>
|
|
|
|
<LogVerbosity Condition="'$(LogVerbosity)' == ''">minimal</LogVerbosity>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<!-- Work around issue where local clone may cause failure using non-origin remote fallback: https://github.com/dotnet/sourcelink/issues/629 -->
|
|
<InnerBuildEnv Include="EnableSourceControlManagerQueries=false" />
|
|
<InnerBuildEnv Include="EnableSourceLink=false" />
|
|
<InnerBuildEnv Include="DisableSourceLink=true" />
|
|
<InnerBuildEnv Include="DeterministicSourcePaths=false" />
|
|
</ItemGroup>
|
|
|
|
<Target Name="GetRuntimeSourceBuildCommandConfiguration"
|
|
BeforeTargets="GetSourceBuildCommandConfiguration">
|
|
<PropertyGroup>
|
|
<InnerBuildArgs>$(InnerBuildArgs) --arch $(TargetRidPlatform)</InnerBuildArgs>
|
|
<InnerBuildArgs>$(InnerBuildArgs) --configuration $(Configuration)</InnerBuildArgs>
|
|
<InnerBuildArgs>$(InnerBuildArgs) --ci</InnerBuildArgs>
|
|
<InnerBuildArgs>$(InnerBuildArgs) --allconfigurations</InnerBuildArgs>
|
|
<InnerBuildArgs>$(InnerBuildArgs) --verbosity $(LogVerbosity)</InnerBuildArgs>
|
|
<InnerBuildArgs>$(InnerBuildArgs) --nodereuse false</InnerBuildArgs>
|
|
<InnerBuildArgs>$(InnerBuildArgs) --warnAsError false</InnerBuildArgs>
|
|
<InnerBuildArgs>$(InnerBuildArgs) --cmakeargs -DCLR_CMAKE_USE_SYSTEM_LIBUNWIND=TRUE</InnerBuildArgs>
|
|
<InnerBuildArgs>$(InnerBuildArgs) /p:MicrosoftNetFrameworkReferenceAssembliesVersion=1.0.0</InnerBuildArgs>
|
|
<InnerBuildArgs>$(InnerBuildArgs) /p:ContinuousIntegrationBuild=true</InnerBuildArgs>
|
|
<InnerBuildArgs>$(InnerBuildArgs) /p:PackageRid=$(TargetRid)</InnerBuildArgs>
|
|
<InnerBuildArgs>$(InnerBuildArgs) /p:NoPgoOptimize=true</InnerBuildArgs>
|
|
<InnerBuildArgs>$(InnerBuildArgs) /p:KeepNativeSymbols=true</InnerBuildArgs>
|
|
<InnerBuildArgs>$(InnerBuildArgs) /p:RuntimeOS=$(TargetRidWithoutPlatform)</InnerBuildArgs>
|
|
<InnerBuildArgs>$(InnerBuildArgs) /p:PortableBuild=$(SourceBuildPortable)</InnerBuildArgs>
|
|
<InnerBuildArgs>$(InnerBuildArgs) /p:BuildDebPackage=false</InnerBuildArgs>
|
|
</PropertyGroup>
|
|
</Target>
|
|
|
|
<Target Name="CategorizeRuntimeSupplementalArtifacts"
|
|
BeforeTargets="GetCategorizedIntermediateNupkgContents">
|
|
<ItemGroup>
|
|
<!--
|
|
Runtime artifacts are too large to fit into a single package (Azure DevOps feeds 500 mb constraint).
|
|
Split large components into separate packages.
|
|
-->
|
|
<IntermediateNupkgArtifactFile Include="$(CurrentRepoSourceBuildArtifactsPackagesDir)Shipping\dotnet-runtime-*.tar.gz" Category="runtime" />
|
|
|
|
<IntermediateNupkgArtifactFile
|
|
Include="
|
|
$(CurrentRepoSourceBuildArtifactsPackagesDir)Shipping\dotnet-crossgen2-*.tar.gz;
|
|
$(CurrentRepoSourceBuildArtifactsPackagesDir)Shipping\Microsoft.NETCore.App.Crossgen2.*.nupkg"
|
|
Category="Crossgen2Pack" />
|
|
</ItemGroup>
|
|
</Target>
|
|
|
|
</Project>
|