name: android-armv7-cpu on: push: branches: [master] paths: - '.github/workflows/android-armv7-cpu.yml' - 'CMakeLists.txt' - 'cmake/**' - 'src/*' - 'src/layer/*' - 'src/layer/arm/**' pull_request: branches: [master] paths: - '.github/workflows/android-armv7-cpu.yml' - 'CMakeLists.txt' - 'cmake/**' - 'src/*' - 'src/layer/*' - 'src/layer/arm/**' concurrency: group: android-armv7-cpu-${{ github.ref }} cancel-in-progress: true permissions: contents: read jobs: android-armv7: runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v4 - name: build run: | mkdir build && cd build cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_LATEST_HOME/build/cmake/android.toolchain.cmake -DANDROID_ABI="armeabi-v7a" -DANDROID_ARM_NEON=ON -DANDROID_PLATFORM=android-14 .. cmake --build . -j 2 - name: build-shared run: | mkdir build-shared && cd build-shared cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_LATEST_HOME/build/cmake/android.toolchain.cmake -DANDROID_ABI="armeabi-v7a" -DANDROID_ARM_NEON=ON -DANDROID_PLATFORM=android-14 -DNCNN_SHARED_LIB=ON -DNCNN_ENABLE_LTO=OFF .. cmake --build . -j 2 - name: ndk-r16b run: | wget https://dl.google.com/android/repository/android-ndk-r16b-linux-x86_64.zip -O $GITHUB_WORKSPACE/android-ndk-r16b-linux-x86_64.zip cd $GITHUB_WORKSPACE && unzip -q android-ndk-r16b-linux-x86_64.zip - name: build-noneon run: | mkdir build-noneon && cd build-noneon cmake -DCMAKE_TOOLCHAIN_FILE=$GITHUB_WORKSPACE/android-ndk-r16b/build/cmake/android.toolchain.cmake -DANDROID_ABI="armeabi-v7a" -DANDROID_ARM_NEON=OFF -DANDROID_PLATFORM=android-14 .. cmake --build . -j 2 - name: build-noneon-shared run: | mkdir build-noneon-shared && cd build-noneon-shared cmake -DCMAKE_TOOLCHAIN_FILE=$GITHUB_WORKSPACE/android-ndk-r16b/build/cmake/android.toolchain.cmake -DANDROID_ABI="armeabi-v7a" -DANDROID_ARM_NEON=OFF -DANDROID_PLATFORM=android-14 -DNCNN_SHARED_LIB=ON -DNCNN_ENABLE_LTO=OFF .. cmake --build . -j 2