Add cross-compile workflow with out-of-source build #16545
Add cross-compile workflow with out-of-source build #16545hsbt wants to merge 4 commits intoruby:masterfrom
Conversation
06b512b to
6dcb554
Compare
There was a problem hiding this comment.
Pull request overview
Adds a dedicated CI workflow to exercise out-of-source builds and cross-compilation, to catch cross-compile regressions earlier (e.g., issues like #16456).
Changes:
- Introduces a new
crosscompileGitHub Actions workflow. - Builds a native “baseruby”, then configures and builds Ruby for an aarch64 GNU/Linux host in an out-of-source
build/directory. - Verifies the produced installed binary is an aarch64-targeted executable.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
.github/workflows/crosscompile.yml
Outdated
| - uses: ./.github/actions/setup/directories | ||
| with: | ||
| srcdir: src | ||
| builddir: build | ||
| makeup: true | ||
|
|
||
| - name: Install cross-compilation toolchain | ||
| run: | | ||
| sudo dpkg --add-architecture ${{ matrix.arch }} | ||
| cat <<'EOS' | sudo tee /etc/apt/sources.list.d/ports-${{ matrix.arch }}.list |
There was a problem hiding this comment.
.github/actions/setup/directories may generate src/configure by running ./autogen.sh (it only does so when autoreconf is available). Since this repo does not ship a pre-generated configure script, installing autoconf/autoreconf after this step can leave ../src/configure missing and make the workflow dependent on whatever happens to be preinstalled on the runner. Move the toolchain install (at least autoconf, and anything else needed for autoreconf) before setup/directories, or ensure setup/directories runs after autoconf is installed.
This comment has been minimized.
This comment has been minimized.
a9ea32c to
af99f0b
Compare
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
af99f0b to
748e2b7
Compare
This reverts commit 748e2b7.
|
This workflow has been merged at #16456 |
We don't have CI matrix for out-of-source build & cross compile. This workflow helps to detect issues like for #16456 at early time.