-
Notifications
You must be signed in to change notification settings - Fork 10.5k
🍒 Cherry pick StdlibDeploymentTarget to 6.2 #82838
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
Conversation
[Concurrency][Stdlib] Add SwiftStdlibCurrentOS availability, use it.
Rename SwiftStdlibCurrentOS to StdlibDeploymentTarget.
@swift-ci Please test |
Explanation: The existing availability set-up had a problem wherein it was difficult or impossible to use newly added code to reimplement older code because the availability annotations are applied even within the defining module. To fix this, I'd added a new |
…loyment-version [Build] Fix the minimal-stdlib build by setting a deployment version.
The availability flags keep increasing the number of characters on the command line overflowing the maximum character length on Windows and making the commands harder to read. This patch moves the generated arguments into a separate response file so that they can continue to grow without running into argument length limitations.
@swift-ci Please test |
CC: @tshortli |
|
||
// This no longer warns, because of the use of StdlibDeploymentTarget in the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A bit unfortunate
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Agreed. I couldn't see a good way around that for this test.
# NOTE: The build system will define another macro, StdlibDeploymentTarget, for | ||
# each SwiftStdlib macro defined in this file. The difference between the | ||
# two is the the StdlibDeploymentTarget macro will never be set to a | ||
# higher version than the machine on which we are building. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would find this clearer phrased as
# higher version than the machine on which we are building. | |
# higher version than the deployment target for which we are building. |
eefdd69
We need this to avoid assertion failures or crashes from the Concurrency runtime.
rdar://155214488