• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1name: Build CI - Android
2# Build CI for Android
3
4on: [ push, pull_request ]
5
6jobs:
7  build:
8    runs-on: ${{ matrix.os }}
9
10    strategy:
11      fail-fast: true
12      matrix:
13        os: [ubuntu-latest]
14        abi: [armeabi-v7a, arm64-v8a, x86, x86_64]
15
16    steps:
17    - name: Checkout the repository
18      uses: actions/checkout@v3
19
20    - name: Set up JDK 17
21      uses: actions/setup-java@v3
22      with:
23        java-version: '17'
24        distribution: 'temurin'
25
26    - name: Download and Setup the Android NDK
27      uses: nttld/setup-ndk@v1
28      id: setup-ndk
29      with:
30        # r25c is the same as 25.2.9519653.
31        ndk-version: r25c
32        add-to-path: false
33
34    - name: Setup ninja
35      uses: seanmiddleditch/gha-setup-ninja@master
36
37    - name: Setup cmake
38      uses: jwlawson/actions-setup-cmake@v2
39
40    - name: Configure CMake
41      shell: bash
42      run: |
43        mkdir build
44        cmake -G Ninja -B build -DCMAKE_TOOLCHAIN_FILE=./cmake/toolchains/android.cmake -DUHDR_ANDROID_NDK_PATH=${{ steps.setup-ndk.outputs.ndk-path }} -DUHDR_BUILD_TESTS=1 -DUHDR_ENABLE_LOGS=1 -DUHDR_BUILD_DEPS=1 -DANDROID_ABI=${{ matrix.abi }} -DANDROID_PLATFORM=android-23 -DUHDR_BUILD_JAVA=1 -DUHDR_ENABLE_WERROR=1
45
46    - name: Build
47      run: cmake --build build
48