mirror of
https://github.com/fish-shell/fish-shell.git
synced 2024-12-20 14:23:53 +08:00
3360dcbebc
For x86_64 and cross-compiled for aarch64, manually triggered It *seems* to work, but I had to explicitly disable gettext for it (which is AFAICT currently non-functional under musl anyway). Also it will create one .zip containing two .tar.xzs. It is about 8MB, which should be fine, tbh.
48 lines
1.3 KiB
YAML
48 lines
1.3 KiB
YAML
name: staticbuilds
|
|
|
|
on:
|
|
# release:
|
|
# types: [published]
|
|
# schedule:
|
|
# - cron: "14 13 * * *"
|
|
workflow_dispatch:
|
|
|
|
env:
|
|
CTEST_PARALLEL_LEVEL: "1"
|
|
CMAKE_BUILD_PARALLEL_LEVEL: "4"
|
|
|
|
jobs:
|
|
staticbuilds:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
steps:
|
|
- uses: dtolnay/rust-toolchain@1.70
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
- name: Prepare
|
|
run: |
|
|
sudo apt install python3-sphinx
|
|
rustup target add x86_64-unknown-linux-musl
|
|
rustup target add aarch64-unknown-linux-musl
|
|
sudo apt install musl-tools crossbuild-essential-arm64 -y
|
|
- name: Build
|
|
run: |
|
|
CMAKE_WITH_GETTEXT=0 CC=aarch64-linux-gnu-gcc RUSTFLAGS="-C linker=aarch64-linux-gnu-gcc -C link-arg=-lgcc" cargo build --release --target aarch64-unknown-linux-musl
|
|
cargo build --release --target x86_64-unknown-linux-musl
|
|
- name: Compress
|
|
run: |
|
|
tar -cazf fish-amd64.tar.xz -C target/x86_64-unknown-linux-musl/release/ fish{,_indent,_key_reader}
|
|
tar -cazf fish-aarch64.tar.xz -C target/aarch64-unknown-linux-musl/release/ fish{,_indent,_key_reader}
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: fish
|
|
path: |
|
|
fish-amd64.tar.xz
|
|
fish-aarch64.tar.xz
|
|
retention-days: 14
|