feat: Enable cross compilation to increase glibc compatibility#160
Open
esafak wants to merge 1 commit intofornwall:mainfrom
Open
feat: Enable cross compilation to increase glibc compatibility#160esafak wants to merge 1 commit intofornwall:mainfrom
esafak wants to merge 1 commit intofornwall:mainfrom
Conversation
* Enable `workflow_dispatch` for the release workflow. * Update conditional logic in `create-release`, `crates`, and `binaries-release` jobs to check for `push` events and tag creation only. * Rename the `binaries` job to `binaries-release`. * Add a new job named `binaries-test` that runs on `workflow_dispatch` to build and upload test binaries as artifacts. * Remove the definition of the `GLIBC_VERSION` environment variable from `.github/workflows/release.yml`. * Inline the hardcoded value `2.28` where `\$ env.GLIBC_VERSION ` was previously used for `x86_64-unknown-linux-gnu` and `aarch64-unknown-linux-gnu` targets in both release job matrices. * Update GLIBC version usage in matrix targets for the new `binaries-test` job to use the format `target.2.28` for glibc-dependent builds. Signed-off-by: Emre Şafak <3928300+esafak@users.noreply.github.com>
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.
Why
The current build workflow only supports glibc 2.39, from ubuntu 24. This means users on older operating systems, for example, those running self-hosted Github Runners can't use
rust-script.This will
workflow_dispatchfor the release workflow.create-release,crates, andbinaries-releasejobs to check forpushevents and tag creation only.binariesjob tobinaries-release.binaries-testthat runs onworkflow_dispatchto build and upload test binaries as artifacts.GLIBC_VERSIONenvironment variable from.github/workflows/release.yml.2.28where\$ env.GLIBC_VERSIONwas previously used forx86_64-unknown-linux-gnuandaarch64-unknown-linux-gnutargets in both release job matrices.binaries-testjob to use the formattarget.2.28for glibc-dependent builds.Testing
I manually triggered the release workflow and downloaded the rust-script-aarch64-unknown-linux-gnu.2.28 artifact, then inspected it in nushell:
The highest number determines the glibc requirement, QED.