slint/.github/workflows/servo_example.yaml
2025-11-26 15:38:03 +01:00

57 lines
1.9 KiB
YAML

# Copyright © SixtyFPS GmbH <info@slint.dev>
# SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-Royalty-free-2.0 OR LicenseRef-Slint-Software-3.0
name: Servo example
on:
workflow_dispatch:
workflow_call:
jobs:
matrix_build:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v6
# required for servo
- name: Install uv
uses: astral-sh/setup-uv@v7
- name: Install rust
uses: ./.github/actions/setup-rust
- name: Install dependencies
uses: ./.github/actions/install-linux-dependencies
- name: Install skia dependencies
uses: ./.github/actions/install-skia-dependencies
- name: Build
working-directory: examples/servo
run: cargo build --release
android_build:
runs-on: ubuntu-latest
env:
CARGO_INCREMENTAL: false
steps:
- uses: actions/checkout@v6
# required for servo
- name: Install uv
uses: astral-sh/setup-uv@v7
- name: Install rust
uses: ./.github/actions/setup-rust
with:
target: aarch64-linux-android
- name: Install dependencies
uses: ./.github/actions/install-linux-dependencies
- name: Install skia dependencies
uses: ./.github/actions/install-skia-dependencies
# required for android
- name: Install API level
run: ${ANDROID_HOME}/cmdline-tools/latest/bin/sdkmanager --install "platforms;android-30"
- name: Install cargo-apk
run: cargo install cargo-apk
- name: Build
working-directory: examples/servo
run: |
export BINDGEN_EXTRA_CLANG_ARGS="--target=aarch64-linux-android30 --sysroot=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/sysroot"
cargo apk build --target aarch64-linux-android --lib