slint/.github/workflows/servo_example.yaml
Burhan Khanzada 1d1a38147d
servo: Make CI use ubuntu runner (#10088)
- Use ubuntu runner for andorid build
- Skip release in android build
2025-11-18 12:45:44 +01:00

59 lines
2 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]
# removed ubuntu build for now as it failed cause related to yeslogic-fontconfig-sys and fontique dlopen feature conflict
os: [macos-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v5
# 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@v5
# 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