From a962b181b54e8f57f1470bca8bb2db9a562d7827 Mon Sep 17 00:00:00 2001 From: ee7 <45465154+ee7@users.noreply.github.com> Date: Thu, 17 Aug 2023 10:59:26 +0200 Subject: [PATCH] .github: cross-compile riscv64 Linux asset (#798) Continue the recent `zig cc` work [1], such that the next configlet release will have two new release assets: configlet_4.0.0-beta.14_linux_riscv64.tar.gz configlet_4.0.0-beta.14_linux_riscv64.tar.gz.minisig where the archive contains the executable: $ file ./configlet ./configlet: ELF 64-bit LSB executable, UCB RISC-V, RVC, double-float ABI, version 1 (SYSV), statically linked, stripped The riscv64-linux-musl target will have Tier 1 Zig support [2]. Refs: #24 [1] 0e8d6659e43d, ".github, config: use Zig to cross-compile arm64 Linux asset", 2023-08-13 [2] https://ziglang.org/download/0.11.0/release-notes.html#Support-Table --- .github/bin/cross-compile | 10 +++++++++- .github/workflows/build.yml | 3 +++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/.github/bin/cross-compile b/.github/bin/cross-compile index d175d43c..b1c12a4d 100755 --- a/.github/bin/cross-compile +++ b/.github/bin/cross-compile @@ -8,7 +8,15 @@ zig_target="${ZIG_TARGET}" cross_compile() { local target="$1" - local arch='arm64' + + local zig_arch + zig_arch="$(cut -d'-' -f1 <<< "${target}")" + local arch + case "${zig_arch}" in + aarch64) arch='arm64' ;; + *) arch="${zig_arch}" ;; + esac + local os os="$(cut -d'-' -f2 <<< "${target}")" local nim_os diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 27bf092f..7c063d55 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -81,6 +81,9 @@ jobs: - runs-on: ubuntu-22.04 zig_target: aarch64-linux-musl + - runs-on: ubuntu-22.04 + zig_target: riscv64-linux-musl + - runs-on: macos-12 zig_target: aarch64-macos-none