53 lines
1.3 KiB
YAML
53 lines
1.3 KiB
YAML
name: Build ksud
|
|
on:
|
|
workflow_call:
|
|
inputs:
|
|
target:
|
|
required: true
|
|
type: string
|
|
os:
|
|
required: false
|
|
type: string
|
|
default: ubuntu-latest
|
|
use_cache:
|
|
required: false
|
|
type: boolean
|
|
default: true
|
|
jobs:
|
|
build:
|
|
runs-on: ${{ inputs.os }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: Download artifacts
|
|
uses: actions/download-artifact@v4
|
|
|
|
- name: Prepare LKM fies
|
|
run: |
|
|
cp android*-lkm/*_kernelsu.ko ./userspace/ksud/bin/aarch64/
|
|
|
|
# cross build failed after Rust 1.68, see https://github.com/cross-rs/cross/issues/1222
|
|
- name: Setup rustup
|
|
run: |
|
|
rustup default 1.67.0
|
|
rustup target add x86_64-apple-darwin
|
|
rustup target add aarch64-apple-darwin
|
|
- uses: Swatinem/rust-cache@v2
|
|
with:
|
|
workspaces: userspace/ksud
|
|
cache-targets: false
|
|
|
|
- name: Install cross
|
|
run: cargo install cross --locked
|
|
|
|
- name: Build ksud
|
|
run: cross build --target ${{ inputs.target }} --release --manifest-path ./userspace/ksud/Cargo.toml
|
|
|
|
- name: Upload ksud artifact
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: ksud-${{ inputs.target }}
|
|
path: userspace/ksud/target/**/release/ksud*
|