-
Notifications
You must be signed in to change notification settings - Fork 86
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
Speed up aarch64 builds using Static Linux SDK #265
Conversation
steps: | ||
- uses: swift-actions/setup-swift@v2 |
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.
setup-swift
does not support Swift6🥲
.github/workflows/release.yml
Outdated
- if: startsWith(matrix.destination.name, 'macos') | ||
run: sudo xcode-select -s /Applications/Xcode_16.app |
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.
swiftly's macOS support is not released yet so do the alternative here.
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.
LGTM!
Motivation
Currently, the mockolo binary for aarch64 on Ubuntu is built on an x86_64 machine using Docker and qemu, which is extremely slow.
With the release of Static Linux SDK in Swift 6, we can speed up the build process for aarch64 Linux.
Changes
In the GitHub Actions for the release build, we install the Static Linux SDK and use it.
As a result, the size of the artifact bundle has increased. To address this, we provide a lightweight artifact bundle without Linux support for users who only use mockolo on macOS.
Misc
Since the Static Linux SDK uses musl, mockolo will be able to run on more Linux distributions. However, we do not have a strong motivation to actively support these additional distributions, so this is more of a bonus.