-
Notifications
You must be signed in to change notification settings - Fork 441
Support for short stack builds. #18463
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
18 commits
Select commit
Hold shift + click to select a range
d78dbac
Support for short stack builds.
directhex b43bf5d
Merge remote-tracking branch 'origin/main' into shortstack
directhex 69f1c58
Refreshed for the glourious TargetOS/TargetArchitecture future
directhex e06a805
Fix build locally, push to test on Mac
directhex 5028977
change rootrepo
directhex 68bdaff
Merge branch 'main' into shortstack
directhex 30138aa
Merge branch 'main' into shortstack
directhex d5e8ffb
Merge remote-tracking branch 'origin/main' into shortstack
directhex efb2c9e
Temporarily enable full build so we can test CI
directhex 33400c9
Add Android x64 to build, let's see what happens
directhex 1400ef0
Add patch since runtime sync is out of date & missing needed patch
directhex 280a9e0
fix paths in patch
directhex d83ebb2
Revert "Temporarily enable full build so we can test CI"
directhex 3df779e
If we want to do a short stack Windows build, tweak the RID
3a55a8e
Merge branch 'main' into shortstack
directhex b426ce6
Annotate patch
directhex 33c4717
Merge branch 'main' into shortstack
directhex 64e1ffe
That error message was thoroughly unhelpful
directhex File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
48 changes: 48 additions & 0 deletions
48
src/SourceBuild/patches/runtime/0002-short-stack-support.patch
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
From 6e36330872998c791a2c0d31b688e1bdece2451f Mon Sep 17 00:00:00 2001 | ||
From: Jo Shields <[email protected]> | ||
Date: Fri, 2 Feb 2024 06:56:20 -0500 | ||
Subject: [PATCH] Source built short stack support (#97725) | ||
|
||
Backport: https://github.com/dotnet/runtime/pull/97725 | ||
|
||
--- a/eng/SourceBuild.props 2024-02-07 11:01:33.807337902 -0500 | ||
directhex marked this conversation as resolved.
Show resolved
Hide resolved
|
||
+++ b/eng/SourceBuild.props 2024-02-05 16:48:58.219933758 -0500 | ||
@@ -15,6 +15,7 @@ | ||
<!-- Split e.g. 'fedora.33-x64' into 'fedora.33' and 'x64'. --> | ||
<_targetRidPlatformIndex>$(TargetRid.LastIndexOf('-'))</_targetRidPlatformIndex> | ||
<TargetArch>$(TargetRid.Substring($(_targetRidPlatformIndex)).TrimStart('-'))</TargetArch> | ||
+ <TargetOS>$(TargetRid.Substring(0, $(_targetRidPlatformIndex)))</TargetOS> | ||
|
||
<_hostRidPlatformIndex>$(_hostRid.LastIndexOf('-'))</_hostRidPlatformIndex> | ||
<_hostArch>$(_hostRid.Substring($(_hostRidPlatformIndex)).TrimStart('-'))</_hostArch> | ||
@@ -22,6 +23,17 @@ | ||
<LogVerbosity Condition="'$(LogVerbosity)' == ''">minimal</LogVerbosity> | ||
</PropertyGroup> | ||
|
||
+ <PropertyGroup Label="ShortStacks"> | ||
+ <ShortStack Condition="'$(TargetOS)' == 'wasi'">true</ShortStack> | ||
+ <ShortStack Condition="'$(TargetOS)' == 'browser'">true</ShortStack> | ||
+ <ShortStack Condition="'$(TargetOS)' == 'ios'">true</ShortStack> | ||
+ <ShortStack Condition="'$(TargetOS)' == 'iossimulator'">true</ShortStack> | ||
+ <ShortStack Condition="'$(TargetOS)' == 'tvos'">true</ShortStack> | ||
+ <ShortStack Condition="'$(TargetOS)' == 'tvossimulator'">true</ShortStack> | ||
+ <ShortStack Condition="'$(TargetOS)' == 'maccatalyst'">true</ShortStack> | ||
+ <ShortStack Condition="'$(TargetOS)' == 'android'">true</ShortStack> | ||
+ </PropertyGroup> | ||
+ | ||
<Target Name="GetRuntimeSourceBuildCommandConfiguration" | ||
BeforeTargets="GetSourceBuildCommandConfiguration"> | ||
<PropertyGroup> | ||
@@ -29,9 +41,10 @@ | ||
This allows to build the repository using './build.sh <args> /p:DotNetBuildFromSource=true'. | ||
Properties that control flags from source-build, and the expected output for source-build should be added to this file. --> | ||
<InnerBuildArgs>$(InnerBuildArgs) $(FlagParameterPrefix)arch $(TargetArch)</InnerBuildArgs> | ||
- <InnerBuildArgs Condition=" '$(TargetArch)' != '$(_hostArch)' ">$(InnerBuildArgs) $(FlagParameterPrefix)cross</InnerBuildArgs> | ||
+ <InnerBuildArgs>$(InnerBuildArgs) $(FlagParameterPrefix)os $(TargetOS)</InnerBuildArgs> | ||
+ <InnerBuildArgs Condition="'$(TargetArch)' != '$(_hostArch)' and '$(ShortStack)' != 'true'">$(InnerBuildArgs) $(FlagParameterPrefix)cross</InnerBuildArgs> | ||
<InnerBuildArgs>$(InnerBuildArgs) $(FlagParameterPrefix)configuration $(Configuration)</InnerBuildArgs> | ||
- <InnerBuildArgs>$(InnerBuildArgs) $(FlagParameterPrefix)allconfigurations</InnerBuildArgs> | ||
+ <InnerBuildArgs Condition="'$(ShortStack)' != 'true'">$(InnerBuildArgs) $(FlagParameterPrefix)allconfigurations</InnerBuildArgs> | ||
<InnerBuildArgs>$(InnerBuildArgs) $(FlagParameterPrefix)verbosity $(LogVerbosity)</InnerBuildArgs> | ||
<InnerBuildArgs>$(InnerBuildArgs) $(FlagParameterPrefix)nodereuse $(ArcadeFalseBoolBuildArg)</InnerBuildArgs> | ||
<InnerBuildArgs>$(InnerBuildArgs) $(FlagParameterPrefix)warnAsError $(ArcadeFalseBoolBuildArg)</InnerBuildArgs> |
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.