summaryrefslogtreecommitdiff
path: root/.github/workflows/main.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/main.yml')
-rw-r--r--.github/workflows/main.yml108
1 files changed, 65 insertions, 43 deletions
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index 4d92f78..8757522 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -32,10 +32,73 @@ jobs:
- name: Build ${{ matrix.lua }} pkg-config
if: ${{ matrix.os == 'ubuntu-18.04' && matrix.lua != 'lua54' }}
run: |
- sudo apt-get update -y
+ sudo apt-get update
sudo apt-get install -y --no-install-recommends liblua5.3-dev liblua5.2-dev liblua5.1-0-dev libluajit-5.1-dev
cargo build --release --features "${{ matrix.lua }}"
+ build_aarch64_cross_macos:
+ name: Cross-compile to aarch64-apple-darwin
+ runs-on: macos-11.0
+ needs: build
+ strategy:
+ matrix:
+ lua: [lua54, lua53, lua52, lua51, luajit]
+ steps:
+ - uses: actions/checkout@v2
+ - uses: actions-rs/toolchain@v1
+ with:
+ toolchain: nightly
+ target: aarch64-apple-darwin
+ override: true
+ - name: Cross-compile
+ run: cargo build --target aarch64-apple-darwin --features "${{ matrix.lua }} async send serialize vendored"
+
+ build_aarch64_cross_ubuntu:
+ name: Cross-compile to aarch64-unknown-linux-gnu
+ runs-on: ubuntu-18.04
+ needs: build
+ strategy:
+ matrix:
+ lua: [lua54, lua53, lua52, lua51, luajit]
+ steps:
+ - uses: actions/checkout@v2
+ - uses: actions-rs/toolchain@v1
+ with:
+ toolchain: nightly
+ target: aarch64-unknown-linux-gnu
+ override: true
+ - name: Install ARM compiler toolchain
+ run: |
+ sudo apt-get update
+ sudo apt-get install -y --no-install-recommends gcc-aarch64-linux-gnu libc6-dev-arm64-cross
+ shell: bash
+ - name: Cross-compile
+ run: cargo build --target aarch64-unknown-linux-gnu --features "${{ matrix.lua }} async send serialize vendored"
+ shell: bash
+
+ build_armv7_cross_ubuntu:
+ name: Cross-compile to armv7-unknown-linux-gnueabihf
+ runs-on: ubuntu-18.04
+ needs: build
+ strategy:
+ matrix:
+ lua: [lua54, lua53, lua52, lua51]
+ steps:
+ - uses: actions/checkout@v2
+ - uses: actions-rs/toolchain@v1
+ with:
+ toolchain: nightly
+ target: armv7-unknown-linux-gnueabihf
+ override: true
+ - name: Install ARM compiler toolchain
+ run: |
+ sudo apt-get update
+ sudo apt-get install -y --no-install-recommends gcc-arm-linux-gnueabihf libc-dev-armhf-cross
+ shell: bash
+ - name: Cross-compile
+ run: cargo build --target armv7-unknown-linux-gnueabihf --features "${{ matrix.lua }} async send serialize vendored"
+ shell: bash
+
test:
name: Test
runs-on: ${{ matrix.os }}
@@ -72,47 +135,6 @@ jobs:
TRYBUILD=overwrite cargo test --release --features "${{ matrix.lua }} vendored async send serialize" -- --ignored
shell: bash
- test_arm_cross_macos:
- name: Test Cross compilation for ARM from Intel on macOS
- runs-on: macos-11.0
- strategy:
- matrix:
- lua: [lua54, lua53, lua52, lua51]
- steps:
- - uses: actions/checkout@v2
- - uses: actions-rs/toolchain@v1
- with:
- toolchain: nightly
- target: x86_64-apple-darwin
- override: true
- - name: Add ARM target
- run: rustup target add aarch64-apple-darwin
- - name: Cross compile
- run: cargo build --target aarch64-apple-darwin --features "${{ matrix.lua }} async send serialize vendored"
-
- test_arm_cross_ubuntu:
- name: Test cross compilation for ARM from Intel on Linux
- runs-on: ubuntu-18.04
- strategy:
- matrix:
- lua: [lua54, lua53, lua52, lua51]
- steps:
- - uses: actions/checkout@v2
- - uses: actions-rs/toolchain@v1
- with:
- toolchain: nightly
- target: x86_64-unknown-linux-gnu
- override: true
- - name: Add ARM target
- run: rustup target add armv7-unknown-linux-gnueabihf
- - name: Install ARM compiler toolchain
- run: |
- sudo apt-get update -y
- sudo apt-get install -y --no-install-recommends gcc-arm-linux-gnueabihf libc-dev-armhf-cross
- - name: Cross compile
- run: cargo build --target armv7-unknown-linux-gnueabihf --features "${{ matrix.lua }} async send serialize vendored"
- shell: bash
-
test_luajit_macos:
name: Test LuaJIT on macOS
runs-on: macos-latest
@@ -135,7 +157,7 @@ jobs:
shell: bash
test_modules:
- name: Test modules on Linux and macOS
+ name: Test modules
runs-on: ${{ matrix.os }}
needs: build
strategy: