Skip to content

Compile for aarch64 and i686 targets on CI in addition to x86_64 #200

Compile for aarch64 and i686 targets on CI in addition to x86_64

Compile for aarch64 and i686 targets on CI in addition to x86_64 #200

Workflow file for this run

name: Build
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
env:
CARGO_TERM_COLOR: always
jobs:
build:
strategy:
fail-fast: false
matrix:
include:
- TARGET: x86_64-unknown-linux-gnu
OS: ubuntu-latest
- TARGET: aarch64-unknown-linux-gnu
OS: ubuntu-latest
- TARGET: i686-unknown-linux-gnu
OS: ubuntu-latest
runs-on: ${{ matrix.OS }}
env:
TARGET: ${{ matrix.TARGET }}
steps:
- uses: actions/checkout@v2
with:
submodules: 'recursive'
- name: Create Cargo config file
run: |
cat >>~/.cargo/config <<EOF
[target.aarch64-unknown-linux-gnu]
rustflags = ["-C", "link-arg=-fuse-ld=lld"]
[target.x86_64-unknown-linux-gnu]
rustflags = ["-C", "link-arg=-fuse-ld=lld"]
[target.i686-unknown-linux-gnu]
rustflags = ["-C", "link-arg=-fuse-ld=lld"]
EOF
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: nightly
default: true
profile: minimal
target: ${{ matrix.target }}
- name: Build
run: cargo build --all --target $TARGET
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
submodules: 'recursive'
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: nightly
default: true
profile: minimal
- name: Install dependencies
run: sudo apt-get install -y acpica-tools
- name: Run tests
run: cargo test --all
- name: Run AML test suite
run: cargo run --bin aml_tester -- -p tests --reset