Skip to content

cmake

cmake #4

Workflow file for this run

name: Build Android
on:
push:
branches:
- main
paths:
- '.github/workflows/build-android.yml'
- 'src/**'
- 'include/**'
- 'example/**'
- 'CMakeLists.txt'
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
with:
submodules: recursive
- name: Setup cmake
uses: jwlawson/actions-setup-cmake@v2
with:
cmake-version: '3.26.0'
- name: Setup NDK
run: |
wget https://dl.google.com/android/repository/android-ndk-r27-linux.zip
unzip android-ndk-r27-linux.zip
export ANDROID_NDK=${PWD}/android-ndk-r27
- name: Determine CPU Cores
id: cpu-info
run: echo "CPU_CORES=$(nproc)" >> $GITHUB_ENV
- name: Configure CMake
run: cmake -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK}/build/cmake/android.toolchain.cmake -DANDROID_ABI=arm64-v8a -DANDROID_PLATFORM=android-21
- name: Build
run: cmake --build build --config Release -- -j${{ env.CPU_CORES }}
- name: Print Project Files
run: ls -R
- name: Upload Build Artifacts
uses: actions/upload-artifact@v3
with:
name: android-arm64-v8a
path: lib/