Skip to content

libswift: fixes and improvements for the bootstrapping build #40068

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 2 commits into from
Nov 5, 2021

Conversation

eeckstein
Copy link
Contributor

  • fix some missing dependencies in the bootstrapping build mode
  • improve the bootstrapping-with-hostlibs build mode: this reduces the build time overhead from 3min -> 30seconds.

For details see the commit messages

Don't build the swiftCore module files in the bootstrapping phases. Instead use the module files in the SDK.
This reduces the build time overhead from 3min -> 30seconds.
swiftDarwin and swiftOnoneSupport  didn't depend on building the Swift core library.
This was a subtle bug, because the compiler just picked up the module from the SDK instead of the (still building) Swift module.
It only resulted in compiler errors if the SDK swiftinterface was too new to be parsable by the compiler.
@eeckstein
Copy link
Contributor Author

@swift-ci smoke test

@eeckstein eeckstein merged commit ee95f3f into swiftlang:main Nov 5, 2021
@eeckstein eeckstein deleted the fix-libswift-bootstrapping branch November 5, 2021 21:49
@@ -117,6 +117,12 @@ function(add_bootstrapping_target bootstrapping)
set(target "bootstrapping${bootstrapping}-all")
add_custom_target(${target})

if(${LIBSWIFT_BUILD_MODE} STREQUAL "BOOTSTRAPPING")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@eeckstein Great catch!

Copy link
Contributor

@gottesmm gottesmm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Big +1 from me! Great job Erik!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants