File: ci-android-jni.yml

package info (click to toggle)
libavif 1.4.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 21,648 kB
  • sloc: ansic: 30,743; cpp: 14,606; xml: 1,507; sh: 1,296; java: 307; makefile: 57
file content (47 lines) | stat: -rw-r--r-- 1,674 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
name: CI Android JNI
on: [push, pull_request]

permissions:
  contents: read

# Cancel the workflow if a new one is triggered from the same PR, branch, or tag, except on main.
concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}

jobs:
  build-android-jni:
    runs-on: ubuntu-latest
    strategy:
      fail-fast: false

    steps:
      - name: Checkout the repository
        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
      - name: Download and Setup the Android NDK
        uses: nttld/setup-ndk@ed92fe6cadad69be94a966a7ee3271275e62f779 # v1.6.0
        id: setup-ndk
        with:
          # r25c is the same as 25.2.9519653.
          ndk-version: r25c
          add-to-path: false
      - uses: ./.github/actions/setup-linux
        with:
          codec-aom: "LOCAL"
          codec-dav1d: "LOCAL"
      - name: Setup JDK
        uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0
        with:
          distribution: "zulu"
          java-version: 17
      - name: Download and Setup the Android SDK
        uses: android-actions/setup-android@9fc6c4e9069bf8d3d10b2204b1fb8f6ef7065407 # v3.2.2
      - name: Install CMake in the Android SDK
        # This is the same version of cmake that is found in build.gradle. This
        # will be used to build libavif and the JNI bindings.
        run: sdkmanager "cmake;3.22.1"
      - name: Build the libavif JNI Wrapper
        working-directory: android_jni
        run: ./gradlew --no-daemon assembleRelease
        env:
          ANDROID_NDK_HOME: ${{ steps.setup-ndk.outputs.ndk-path }}