From 7fc79c05f11ec316c8284d9402f6fe4c3c70fb10 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Patrick=20Jos=C3=A9=20Pereira?= Date: Mon, 15 Jul 2024 03:53:47 -0300 Subject: [PATCH] Update CI deployment (#139) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit At the moment, it appears that musl targets are not working: https://github.com/rust-windowing/winit/issues/1818 To use gnu, it's necessary to use glib 2.27, for that, cross need to be installed manually from development branch: https://github.com/cross-rs/cross/issues/1510 --------- Signed-off-by: Patrick José Pereira --- .github/workflows/rust.yml | 40 ++++++++++++++++++++++---------------- 1 file changed, 23 insertions(+), 17 deletions(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 930f4645..5a5854f7 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -114,17 +114,14 @@ jobs: - os: macos-latest TARGET: aarch64-apple-darwin - - os: macos-latest - TARGET: x86_64-apple-darwin - - os: ubuntu-latest - TARGET: arm-unknown-linux-musleabihf + TARGET: aarch64-unknown-linux-gnu - os: ubuntu-latest - TARGET: armv7-unknown-linux-musleabihf + TARGET: armv7-unknown-linux-gnueabihf - os: ubuntu-latest - TARGET: x86_64-unknown-linux-musl + TARGET: x86_64-unknown-linux-gnu - os: windows-latest TARGET: x86_64-pc-windows-msvc @@ -135,17 +132,26 @@ jobs: run: echo "${{ matrix.TARGET }}" - uses: actions/checkout@master - - uses: actions-rs/toolchain@v1.0.1 - with: - toolchain: stable - target: ${{ matrix.TARGET }} - override: true - - - uses: actions-rs/cargo@v1 - with: - use-cross: true - command: build - args: --verbose --release --target=${{ matrix.TARGET }} + - name: Install build dependencies - Rustup + run: | + curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --default-toolchain stable --profile default --target ${{ matrix.TARGET }} -y + echo "$HOME/.cargo/bin" >> $GITHUB_PATH + + # For linux, it's necessary to use cross from the git repository to avoid glibc problems + # Ref: https://github.com/cross-rs/cross/issues/1510 + - name: Install cross for linux + if: contains(matrix.TARGET, 'linux') + run: | + cargo install cross --git https://github.com/cross-rs/cross --rev 1b8cf50d20180c1a394099e608141480f934b7f7 + + - name: Install cross for mac and windows + if: ${{ !contains(matrix.TARGET, 'linux') }} + run: | + cargo install cross + + - name: Build + run: | + cross build --verbose --release --target=${{ matrix.TARGET }} - name: Rename run: cp target/${{ matrix.TARGET }}/release/eframe_template${{ matrix.EXTENSION }} eframe_template-${{ matrix.TARGET }}${{ matrix.EXTENSION }}