Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 15 additions & 22 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,13 +37,20 @@ jobs:
contents: read
strategy:
matrix:
build: [x86_64-linux, aarch64-linux, x86_64-macos, aarch64-macos, x86_64-win-msvc]
build:
[
x86_64-linux,
aarch64-linux,
x86_64-macos,
aarch64-macos,
x86_64-win-msvc,
]
include:
- build: x86_64-linux
os: ubuntu-latest
target: x86_64-unknown-linux-gnu
- build: aarch64-linux
os: ubuntu-latest
os: ubuntu-24.04-arm
target: aarch64-unknown-linux-gnu
- build: x86_64-macos
os: macos-latest
Expand All @@ -69,29 +76,15 @@ jobs:
with:
key: ${{ matrix.target }}

- name: Install cross for arm64 compilation
if: matrix.build == 'aarch64-linux'
run: cargo install cross --git https://github.com/cross-rs/cross

- name: Install Dependencies for Linux x86_64
if: matrix.build == 'x86_64-linux'
- name: Install Dependencies for Linux
if: contains(matrix.build, 'linux')
run: sudo apt update && sudo apt install -y libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libxkbcommon-dev

- name: Run tests (arm64)
if: matrix.build == 'aarch64-linux'
run: cross test --locked --target ${{ matrix.target }}

- name: Build debug binary (arm64)
if: matrix.build == 'aarch64-linux'
run: cross build --locked --target ${{ matrix.target }}

- name: Run tests (x86_64)
if: matrix.build != 'aarch64-linux'
run: cargo test
- name: Run tests
run: cargo test --locked

- name: Build debug binary (x86_64)
if: matrix.build != 'aarch64-linux'
run: cargo build
- name: Build debug binary
run: cargo build --locked

- uses: actions/upload-artifact@v5.0.0
with:
Expand Down
30 changes: 14 additions & 16 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: Deploy
on:
workflow_dispatch:
workflow_dispatch:
inputs:
new_version:
description: New version to deploy
Expand All @@ -21,13 +21,20 @@ jobs:
strategy:
fail-fast: false # don't fail other jobs if one fails
matrix:
build: [x86_64-linux, aarch64-linux, x86_64-macos, aarch64-macos, x86_64-win-msvc]
build:
[
x86_64-linux,
aarch64-linux,
x86_64-macos,
aarch64-macos,
x86_64-win-msvc,
]
include:
- build: x86_64-linux
os: ubuntu-latest
target: x86_64-unknown-linux-gnu
- build: aarch64-linux
os: ubuntu-latest
os: ubuntu-24.04-arm
target: aarch64-unknown-linux-gnu
- build: x86_64-macos
os: macos-latest
Expand All @@ -47,26 +54,17 @@ jobs:
uses: dtolnay/rust-toolchain@stable
with:
target: ${{ matrix.target }}

# Cache dependencies
- uses: Swatinem/rust-cache@v2
with:
key: ${{ matrix.target }}-release

- name: Install cross for arm64 compilation
if: matrix.build == 'aarch64-linux'
run: cargo install cross --git https://github.com/cross-rs/cross

- name: Install Dependencies for Linux x86_64
if: matrix.build == 'x86_64-linux'
- name: Install Dependencies for Linux
if: contains(matrix.build, 'linux')
run: sudo apt update && sudo apt install -y libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libxkbcommon-dev

- name: Build release binary (arm64)
if: matrix.build == 'aarch64-linux'
run: cross build --release --locked --target ${{ matrix.target }}

- name: Build release binary (x86_64)
if: matrix.build != 'aarch64-linux'
- name: Build release binary
run: cargo build --release --locked --target ${{ matrix.target }}

- name: Build archive
Expand Down
2 changes: 0 additions & 2 deletions Cross.toml

This file was deleted.