From 4f5c8be38e9a0f095ff09645858b50873f1e74af Mon Sep 17 00:00:00 2001 From: Michael Zhao Date: Thu, 14 May 2020 16:12:31 +0800 Subject: [PATCH] build: Added a workflow to cross-build targetting AArch64 The result of the workflow can be seen in Checks tab of a PR. Two targets have been added: - stable aarch64-unknown-linux-gnu - stable aarch64-unknown-linux-musl Note: a temporary step was added before building. We used "sed" command to remove "with-serde" feature of kvm-bindings in vmm/Cargo.toml. This step should be removed in future when kvm-bindings is ready. Signed-off-by: Michael Zhao --- .github/workflows/cross-build.yaml | 32 ++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 .github/workflows/cross-build.yaml diff --git a/.github/workflows/cross-build.yaml b/.github/workflows/cross-build.yaml new file mode 100644 index 000000000..edc413b5c --- /dev/null +++ b/.github/workflows/cross-build.yaml @@ -0,0 +1,32 @@ +name: Cloud Hypervisor Cross Build +on: [pull_request, create] + +jobs: + build: + if: github.event_name == 'pull_request' + name: Build + runs-on: ubuntu-latest + strategy: + matrix: + rust: + - stable + target: + - aarch64-unknown-linux-gnu + - aarch64-unknown-linux-musl + steps: + - name: Code checkout + uses: actions/checkout@v2 + - name: Install Rust toolchain (${{ matrix.rust }}) + uses: actions-rs/toolchain@v1 + with: + toolchain: ${{ matrix.rust }} + target: ${{ matrix.target }} + override: true + - name: Disable "with-serde" in kvm-bindings + run: sed -i 's/"with-serde",\ //g' vmm/Cargo.toml + - name: Build + uses: actions-rs/cargo@v1 + with: + use-cross: true + command: build + args: --target=${{ matrix.target }} --no-default-features --features "mmio"