scripts: replace QEMU emulation with cross-compilation for arm64 builds#448
Open
swasik wants to merge 2 commits into
Open
scripts: replace QEMU emulation with cross-compilation for arm64 builds#448swasik wants to merge 2 commits into
swasik wants to merge 2 commits into
Conversation
- Add unified release script that orchestrates tag, build, and upload - Always pass version explicitly to build-release and upload-release - Add --init to docker run for proper signal forwarding (Ctrl+C works) - Add -t flag to docker run when stdout is a terminal - Derive release target repo from origin remote - Set gh repo default before upload to support fork workflows - Add colored output to all release scripts (disabled in non-TTY) - Print Copilot prompt for generating release notes after completion - Update releasing.md documentation
- run-with-release-toolchain now uses native cross-compilation (gcc-aarch64-linux-gnu) instead of QEMU-emulated Docker containers, significantly reducing build time - Cross-compiler, Rust target, CC/CXX/AR/linker env vars set automatically when TARGETARCH differs from host architecture - build-release adds dependency validation step at the start - Output paths handled dynamically (cross builds add target-triple subdir) - upload-release searches multiple candidate paths for tarballs - QEMU is still used for Docker image builds (--platform) but no longer for compilation
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.
Changes
gcc-aarch64-linux-gnu/g++-aarch64-linux-gnuinstead of QEMU emulationdocker build --platform)CARGO_BUILD_TARGET,CC_*,CXX_*,AR_*,CARGO_TARGET_*_LINKERenv vars set correctly (underscore-normalized forcccrate compatibility)apt-get), thenchowns target dir back to host UID/GIDrelease_dir_for()helper resolves output path whether cross or native buildupload-releasesearches multiple candidate paths for tarballsbuild-releasetorelease(avoids duplicate checks)Tests
Dependencies
Depends on #436
Fixes: VECTOR-665