From 040be2126c9badf00ee1718ccbec077a76fcffa4 Mon Sep 17 00:00:00 2001 From: Radiicall Date: Fri, 2 May 2025 13:38:33 +0200 Subject: [PATCH] ci: try using cross for cross compile --- .woodpecker/build-and-publish.yml | 11 ++++++----- Cross.toml | 5 +++++ 2 files changed, 11 insertions(+), 5 deletions(-) create mode 100644 Cross.toml diff --git a/.woodpecker/build-and-publish.yml b/.woodpecker/build-and-publish.yml index c605f53..c352476 100644 --- a/.woodpecker/build-and-publish.yml +++ b/.woodpecker/build-and-publish.yml @@ -9,12 +9,13 @@ steps: - cargo build --release - cp target/release/backend target/backend-amd64 - name: build-arm64 - image: rust:alpine + image: rust:bookworm commands: - - apk add musl-dev - - rustup target add aarch64-unknown-linux-musl - - cargo build --target=aarch64-unknown-linux-musl --release - - cp target/aarch64-unknown-linux-musl/release/backend target/backend-arm64 + - CROSS_CONTAINER_IN_CONTAINER=true cargo install -f cross + - CROSS_CONTAINER_IN_CONTAINER=true cross build --target=aarch64-unknown-linux-gnu --release + - cp target/aarch64-unknown-linux/release/backend target/backend-arm64 + volumes: + - /var/run/podman/podman.sock:/var/run/docker.sock - name: container-build-and-publish image: docker commands: diff --git a/Cross.toml b/Cross.toml new file mode 100644 index 0000000..bc094e1 --- /dev/null +++ b/Cross.toml @@ -0,0 +1,5 @@ +[build] +pre-build = [ + "dpkg --add-architecture $CROSS_DEB_ARCH", + "apt-get update && apt-get --assume-yes install libssl-dev:$CROSS_DEB_ARCH" +]