From 71024f76110f9c3c23bce366bd521c54c70f5bed Mon Sep 17 00:00:00 2001 From: Felix Obenhuber Date: Thu, 28 Mar 2024 07:45:54 +0100 Subject: [PATCH] cp --- .github/workflows/ci.yaml | 24 +++++++++++++++++++++--- .github/workflows/release.yaml | 11 ++++++++++- 2 files changed, 31 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index f06f6cc0b..9918156dd 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -2,8 +2,8 @@ name: ci on: pull_request: push: - branches: - - main + # branches: + # - main workflow_dispatch: jobs: get-msrv: @@ -47,13 +47,24 @@ jobs: toolchain: ${{ matrix.rust }} components: rustfmt, clippy + - name: Install Cross on Ubuntu + if: matrix.os == 'ubuntu-latest' + run: cargo install --git https://github.com/cross-rs/cross.git --rev 085092c cross + - name: Check formatting run: cargo fmt --all -- --check - name: Build - id: build run: cargo build --verbose + - name: Build target aarch64-linux-android + if: matrix.os == 'ubuntu-latest' + uses: actions-rs/cargo@v1 + with: + use-cross: true + command: build + args: --target=aarch64-linux-android --verbose + # This is useful for debugging problems when the expected build artifacts # (like shell completions and man pages) aren't generated. - name: Show build.rs stderr @@ -103,6 +114,13 @@ jobs: name: ${{ matrix.os }}-${{ matrix.rust }}-failed_snapshots path: '**/*.snap.new' + - name: Upload android binary + if: ${{ matrix.os == 'ubuntu-latest' && ( success() || steps.build.outcome == 'success' ) }} + uses: actions/upload-artifact@v3 + with: + name: aarch64-linux-android-${{ matrix.rust }} + path: target/aarch64-linux-android/debug/bandwhich + - name: Upload unix binary if: ${{ matrix.os != 'windows-latest' && ( success() || steps.build.outcome == 'success' ) }} uses: actions/upload-artifact@v3 diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index a9ea03352..c2e8f2200 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -52,11 +52,15 @@ jobs: strategy: matrix: build: + - aarch64-linux-android - linux-x64-gnu - linux-x64-musl - macos-x64 - windows-x64-msvc include: + - build: aarch64-linux-android + os: ubuntu-latest + target: aarch64-linux-android - build: linux-x64-gnu os: ubuntu-latest target: x86_64-unknown-linux-gnu @@ -84,13 +88,18 @@ jobs: if: matrix.target == 'x86_64-unknown-linux-musl' run: sudo apt-get install -y --no-install-recommends musl-tools + - name: Install cross + if: build.target == 'aarch64-linux-android' + run: cargo install --git https://github.com/cross-rs/cross.git --rev 085092c cross + - name: Build release binary shell: bash env: + CARGO: ${{ contains(matrix.build, 'aarch64-linux-android') && 'cross' || 'cargo' }} RUSTFLAGS: "-C strip=symbols" run: | mkdir -p "$BANDWHICH_GEN_DIR" - cargo build --verbose --release --target ${{ matrix.target }} + $CARGO build --verbose --release --target ${{ matrix.target }} - name: Collect build artifacts shell: bash