Skip to content

refactor: streamline logging and task optimization logic, removing un… #1

refactor: streamline logging and task optimization logic, removing un…

refactor: streamline logging and task optimization logic, removing un… #1

Workflow file for this run

name: Build
on:
push:
paths: ['src/**', 'CMakeLists.txt']
workflow_dispatch:
env:
BUILD_TYPE: Release
ANDROID_PLATFORM: android-21
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
abi: [arm64-v8a, armeabi-v7a, x86, x86_64]
steps:
- uses: actions/checkout@v4
- uses: nttld/setup-ndk@v1
with:
ndk-version: r25c
- name: Build
run: |
export ANDROID_NDK=${{ steps.setup-ndk.outputs.ndk-path }}
mkdir -p build/${{ matrix.abi }}
cd build/${{ matrix.abi }}
cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK/build/cmake/android.toolchain.cmake \
-DANDROID_ABI=${{ matrix.abi }} \
-DANDROID_PLATFORM=$ANDROID_PLATFORM \
-DCMAKE_BUILD_TYPE=$BUILD_TYPE \
../..
cmake --build . -j$(nproc)
mkdir -p ../../libs/${{ matrix.abi }}
cp bin/task_optimizer ../../libs/${{ matrix.abi }}/
- uses: actions/upload-artifact@v3
with:
name: ${{ matrix.abi }}
path: libs/${{ matrix.abi }}/task_optimizer
package:
needs: build
runs-on: ubuntu-latest
steps:
- uses: actions/download-artifact@v3
with:
path: artifacts
- name: Package
run: |
mkdir -p libs
for abi in arm64-v8a armeabi-v7a x86 x86_64; do
mkdir -p libs/$abi
cp artifacts/$abi/task_optimizer libs/$abi/ 2>/dev/null || true
done
- uses: actions/upload-artifact@v3
with:
name: all-binaries
path: libs/