Android: push trunk back to API 24, stop rebuilding corelibs for the linux host, and update trunk CI to NDK 28c in preparation for the upcoming LTS NDK 30 release#528
Open
finagolfin wants to merge 3 commits intoswiftlang:mainfrom
Conversation
Member
Author
|
Rebased and updated this to NDK 28c for trunk, looking into a fix for the duplicated swiftmodules next, #510, but found the reason. |
…new Android arch is built
Temporarily disable a handful of trunk tests that now fail.
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
The Android workgroup agreed on pushing the CI and SDK back to be built against API 24, so this pull does so for trunk alone, as we're still waiting on a pull for 6.3, swiftlang/swift-corelibs-foundation#5398.
I also added some flags to avoid rebuilding some corelibs for the linux host, as we currently invoke
build_scriptonce for each Android arch, and that script deletes and rebuilds the previously built corelibs by default each time, so this makes sure we don't do that.The real solution is to add a build flag to avoid building the corelibs for the host altogether when building cross-compilation toolchains like this, so I'm working on a handful of pulls for that and to slim down the number of repos checked out for these SDK builds, but this pull will do in the meantime.
What does the CI team think about adding some github CI for these Android pulls, so we can check them before merging? I'm working on an external github CI, swift-android-sdk#19, that will run much more often than this official CI and alert me to problems much more quickly, but that wouldn't be as useful for new contributors that would have to find that repo first.
Also, it would be good if we could add some compiler caching to this official Android CI and set it up so it runs on every compiler pull before merging, though this new Android CI job would not be required to pass yet for those pulls to be merged.