From dee195d3f0e94bcaff852b649f84620715bd8525 Mon Sep 17 00:00:00 2001 From: nihui Date: Thu, 4 Apr 2024 10:56:47 +0800 Subject: [PATCH] unified android ci (#5406) --- .github/workflows/android-armv7-cpu.yml | 56 --------- .github/workflows/android-armv7-gpu.yml | 45 -------- .github/workflows/android-armv8-cpu.yml | 41 ------- .github/workflows/android-armv8-gpu.yml | 75 ------------ .github/workflows/android-x64-cpu.yml | 41 ------- .github/workflows/android-x64-gpu.yml | 45 -------- .github/workflows/android-x86-cpu.yml | 41 ------- .github/workflows/android-x86-gpu.yml | 45 -------- .github/workflows/android.yml | 145 ++++++++++++++++++++++++ README.md | 2 +- 10 files changed, 146 insertions(+), 390 deletions(-) delete mode 100644 .github/workflows/android-armv7-cpu.yml delete mode 100644 .github/workflows/android-armv7-gpu.yml delete mode 100644 .github/workflows/android-armv8-cpu.yml delete mode 100644 .github/workflows/android-armv8-gpu.yml delete mode 100644 .github/workflows/android-x64-cpu.yml delete mode 100644 .github/workflows/android-x64-gpu.yml delete mode 100644 .github/workflows/android-x86-cpu.yml delete mode 100644 .github/workflows/android-x86-gpu.yml create mode 100644 .github/workflows/android.yml diff --git a/.github/workflows/android-armv7-cpu.yml b/.github/workflows/android-armv7-cpu.yml deleted file mode 100644 index 3cddc846389..00000000000 --- a/.github/workflows/android-armv7-cpu.yml +++ /dev/null @@ -1,56 +0,0 @@ -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 $(nproc) - - 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 $(nproc) - - - 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 $(nproc) - - 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 $(nproc) diff --git a/.github/workflows/android-armv7-gpu.yml b/.github/workflows/android-armv7-gpu.yml deleted file mode 100644 index d416f7eaf6d..00000000000 --- a/.github/workflows/android-armv7-gpu.yml +++ /dev/null @@ -1,45 +0,0 @@ -name: android-armv7-gpu -on: - push: - branches: [master] - paths: - - '.github/workflows/android-armv7-gpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/arm/**' - - 'src/layer/vulkan/**' - pull_request: - branches: [master] - paths: - - '.github/workflows/android-armv7-gpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/arm/**' - - 'src/layer/vulkan/**' -concurrency: - group: android-armv7-gpu-${{ github.ref }} - cancel-in-progress: true -permissions: - contents: read - -jobs: - android-armv7-gpu: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - 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-21 -DNCNN_VULKAN=ON .. - cmake --build . -j $(nproc) - - 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-21 -DNCNN_VULKAN=ON -DNCNN_SHARED_LIB=ON -DNCNN_ENABLE_LTO=OFF .. - cmake --build . -j $(nproc) diff --git a/.github/workflows/android-armv8-cpu.yml b/.github/workflows/android-armv8-cpu.yml deleted file mode 100644 index 98deabac44b..00000000000 --- a/.github/workflows/android-armv8-cpu.yml +++ /dev/null @@ -1,41 +0,0 @@ -name: android-armv8-cpu -on: - push: - branches: [master] - paths: - - '.github/workflows/android-armv8-cpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/arm/**' - pull_request: - branches: [master] - paths: - - '.github/workflows/android-armv8-cpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/arm/**' -concurrency: - group: android-armv8-cpu-${{ github.ref }} - cancel-in-progress: true -permissions: - contents: read - -jobs: - android-aarch64: - runs-on: ubuntu-latest - 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="arm64-v8a" -DANDROID_PLATFORM=android-21 .. - cmake --build . -j $(nproc) - - 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="arm64-v8a" -DANDROID_PLATFORM=android-21 -DNCNN_SHARED_LIB=ON .. - cmake --build . -j $(nproc) diff --git a/.github/workflows/android-armv8-gpu.yml b/.github/workflows/android-armv8-gpu.yml deleted file mode 100644 index 43ff4cee2de..00000000000 --- a/.github/workflows/android-armv8-gpu.yml +++ /dev/null @@ -1,75 +0,0 @@ -name: android-armv8-gpu -on: - push: - branches: [master] - paths: - - '.github/workflows/android-armv8-gpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/arm/**' - - 'src/layer/vulkan/**' - pull_request: - branches: [master] - paths: - - '.github/workflows/android-armv8-gpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/arm/**' - - 'src/layer/vulkan/**' -concurrency: - group: android-armv8-gpu-${{ github.ref }} - cancel-in-progress: true -permissions: - contents: read - -jobs: - android-aarch64-gpu: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - name: build - run: | - mkdir build && cd build - cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_LATEST_HOME/build/cmake/android.toolchain.cmake -DANDROID_ABI="arm64-v8a" -DANDROID_PLATFORM=android-21 -DNCNN_VULKAN=ON .. - cmake --build . -j $(nproc) - - 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="arm64-v8a" -DANDROID_PLATFORM=android-21 -DNCNN_VULKAN=ON -DNCNN_SHARED_LIB=ON .. - cmake --build . -j $(nproc) - - name: build-termux - run: | - mkdir build-termux && cd build-termux - cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_LATEST_HOME/build/cmake/android.toolchain.cmake -DANDROID_ABI="arm64-v8a" -DANDROID_PLATFORM=android-21 -DNCNN_VULKAN=ON -DNCNN_PLATFORM_API=OFF .. - cmake --build . -j $(nproc) - - name: build-android-29 - run: | - mkdir build-android-29 && cd build-android-29 - cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_LATEST_HOME/build/cmake/android.toolchain.cmake -DANDROID_ABI="arm64-v8a" -DANDROID_PLATFORM=android-29 -DNCNN_VULKAN=ON .. - cmake --build . -j $(nproc) - - name: build-android-29-shared - run: | - mkdir build-android-29-shared && cd build-android-29-shared - cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_LATEST_HOME/build/cmake/android.toolchain.cmake -DANDROID_ABI="arm64-v8a" -DANDROID_PLATFORM=android-29 -DNCNN_VULKAN=ON -DNCNN_SHARED_LIB=ON .. - cmake --build . -j $(nproc) - - android-aarch64-gpu-ndk-r16b: - runs-on: ubuntu-20.04 - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - 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: configure - run: mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=$GITHUB_WORKSPACE/android-ndk-r16b/build/cmake/android.toolchain.cmake -DANDROID_ABI="arm64-v8a" -DANDROID_PLATFORM=android-21 -DNCNN_VULKAN=ON .. - - name: build - run: cmake --build build -j $(nproc) diff --git a/.github/workflows/android-x64-cpu.yml b/.github/workflows/android-x64-cpu.yml deleted file mode 100644 index 0c98606f6f3..00000000000 --- a/.github/workflows/android-x64-cpu.yml +++ /dev/null @@ -1,41 +0,0 @@ -name: android-x64-cpu -on: - push: - branches: [master] - paths: - - '.github/workflows/android-x64-cpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/x86/**' - pull_request: - branches: [master] - paths: - - '.github/workflows/android-x64-cpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/x86/**' -concurrency: - group: android-x64-cpu-${{ github.ref }} - cancel-in-progress: true -permissions: - contents: read - -jobs: - android-x86_64: - runs-on: ubuntu-latest - 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="x86_64" -DANDROID_PLATFORM=android-21 .. - cmake --build . -j $(nproc) - - 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="x86_64" -DANDROID_PLATFORM=android-21 -DNCNN_SHARED_LIB=ON .. - cmake --build . -j $(nproc) diff --git a/.github/workflows/android-x64-gpu.yml b/.github/workflows/android-x64-gpu.yml deleted file mode 100644 index d1260fe7e94..00000000000 --- a/.github/workflows/android-x64-gpu.yml +++ /dev/null @@ -1,45 +0,0 @@ -name: android-x64-gpu -on: - push: - branches: [master] - paths: - - '.github/workflows/android-x64-gpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/x86/**' - - 'src/layer/vulkan/**' - pull_request: - branches: [master] - paths: - - '.github/workflows/android-x64-gpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/x86/**' - - 'src/layer/vulkan/**' -concurrency: - group: android-x64-gpu-${{ github.ref }} - cancel-in-progress: true -permissions: - contents: read - -jobs: - android-x86_64-gpu: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - name: build - run: | - mkdir build && cd build - cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_LATEST_HOME/build/cmake/android.toolchain.cmake -DANDROID_ABI="x86_64" -DANDROID_PLATFORM=android-21 -DNCNN_VULKAN=ON .. - cmake --build . -j $(nproc) - - 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="x86_64" -DANDROID_PLATFORM=android-21 -DNCNN_VULKAN=ON -DNCNN_SHARED_LIB=ON .. - cmake --build . -j $(nproc) diff --git a/.github/workflows/android-x86-cpu.yml b/.github/workflows/android-x86-cpu.yml deleted file mode 100644 index 4dbf9b68cac..00000000000 --- a/.github/workflows/android-x86-cpu.yml +++ /dev/null @@ -1,41 +0,0 @@ -name: android-x86-cpu -on: - push: - branches: [master] - paths: - - '.github/workflows/android-x86-cpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/x86/**' - pull_request: - branches: [master] - paths: - - '.github/workflows/android-x86-cpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/x86/**' -concurrency: - group: android-x86-cpu-${{ github.ref }} - cancel-in-progress: true -permissions: - contents: read - -jobs: - android-x86: - runs-on: ubuntu-latest - 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="x86" -DANDROID_PLATFORM=android-14 .. - cmake --build . -j $(nproc) - - 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="x86" -DANDROID_PLATFORM=android-14 -DNCNN_SHARED_LIB=ON .. - cmake --build . -j $(nproc) diff --git a/.github/workflows/android-x86-gpu.yml b/.github/workflows/android-x86-gpu.yml deleted file mode 100644 index 6186968d316..00000000000 --- a/.github/workflows/android-x86-gpu.yml +++ /dev/null @@ -1,45 +0,0 @@ -name: android-x86-gpu -on: - push: - branches: [master] - paths: - - '.github/workflows/android-x86-gpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/x86/**' - - 'src/layer/vulkan/**' - pull_request: - branches: [master] - paths: - - '.github/workflows/android-x86-gpu.yml' - - 'CMakeLists.txt' - - 'cmake/**' - - 'src/*' - - 'src/layer/*' - - 'src/layer/x86/**' - - 'src/layer/vulkan/**' -concurrency: - group: android-x86-gpu-${{ github.ref }} - cancel-in-progress: true -permissions: - contents: read - -jobs: - android-x86-gpu: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - name: build - run: | - mkdir build && cd build - cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_LATEST_HOME/build/cmake/android.toolchain.cmake -DANDROID_ABI="x86" -DANDROID_PLATFORM=android-21 -DNCNN_VULKAN=ON .. - cmake --build . -j $(nproc) - - 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="x86" -DANDROID_PLATFORM=android-21 -DNCNN_VULKAN=ON -DNCNN_SHARED_LIB=ON .. - cmake --build . -j $(nproc) diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml new file mode 100644 index 00000000000..a6144cc537d --- /dev/null +++ b/.github/workflows/android.yml @@ -0,0 +1,145 @@ +name: android +on: + push: + branches: [master] + paths: + - '.github/workflows/android.yml' + - 'CMakeLists.txt' + - 'cmake/**' + - 'src/*' + - 'src/layer/*' + - 'src/layer/arm/**' + - 'src/layer/x86/**' + - 'src/layer/mips/**' + - 'src/layer/vulkan/**' + pull_request: + branches: [master] + paths: + - '.github/workflows/android.yml' + - 'CMakeLists.txt' + - 'cmake/**' + - 'src/*' + - 'src/layer/*' + - 'src/layer/arm/**' + - 'src/layer/x86/**' + - 'src/layer/mips/**' + - 'src/layer/vulkan/**' +concurrency: + group: android-${{ github.ref }} + cancel-in-progress: true +permissions: + contents: read + +jobs: + build: + runs-on: ubuntu-latest + env: + NCNN_CMAKE_OPTIONS: | + -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_LATEST_HOME/build/cmake/android.toolchain.cmake \ + -DANDROID_PLATFORM=android-21 \ + -DCMAKE_INSTALL_PREFIX=install \ + -DCMAKE_BUILD_TYPE=Release \ + -DNCNN_VULKAN=ON \ + + steps: + - uses: actions/checkout@v4 + with: + submodules: true + + - name: armeabi-v7a + run: | + mkdir build-armeabi-v7a && cd build-armeabi-v7a + cmake ${{ env.NCNN_CMAKE_OPTIONS }} -DANDROID_ABI="armeabi-v7a" -DANDROID_ARM_NEON=ON .. + cmake --build . -j $(nproc) + - name: arm64-v8a + run: | + mkdir build-arm64-v8a && cd build-arm64-v8a + cmake ${{ env.NCNN_CMAKE_OPTIONS }} -DANDROID_ABI="arm64-v8a" .. + cmake --build . -j $(nproc) + - name: x86 + run: | + mkdir build-x86 && cd build-x86 + cmake ${{ env.NCNN_CMAKE_OPTIONS }} -DANDROID_ABI="x86" .. + cmake --build . -j $(nproc) + - name: x86_64 + run: | + mkdir build-x86_64 && cd build-x86_64 + cmake ${{ env.NCNN_CMAKE_OPTIONS }} -DANDROID_ABI="x86_64" .. + cmake --build . -j $(nproc) + + - name: armeabi-v7a-shared + run: | + mkdir build-armeabi-v7a-shared && cd build-armeabi-v7a-shared + cmake ${{ env.NCNN_CMAKE_OPTIONS }} -DANDROID_ABI="armeabi-v7a" -DANDROID_ARM_NEON=ON -DNCNN_SHARED_LIB=ON .. + cmake --build . -j $(nproc) + - name: arm64-v8a-shared + run: | + mkdir build-arm64-v8a-shared && cd build-arm64-v8a-shared + cmake ${{ env.NCNN_CMAKE_OPTIONS }} -DANDROID_ABI="arm64-v8a" -DNCNN_SHARED_LIB=ON .. + cmake --build . -j $(nproc) + - name: x86-shared + run: | + mkdir build-x86-shared && cd build-x86-shared + cmake ${{ env.NCNN_CMAKE_OPTIONS }} -DANDROID_ABI="x86" -DNCNN_SHARED_LIB=ON .. + cmake --build . -j $(nproc) + - name: x86_64-shared + run: | + mkdir build-x86_64-shared && cd build-x86_64-shared + cmake ${{ env.NCNN_CMAKE_OPTIONS }} -DANDROID_ABI="x86_64" -DNCNN_SHARED_LIB=ON .. + cmake --build . -j $(nproc) + + ndk-r16b: + runs-on: ubuntu-latest + env: + NCNN_CMAKE_OPTIONS: | + -DCMAKE_TOOLCHAIN_FILE=$GITHUB_WORKSPACE/android-ndk-r16b/build/cmake/android.toolchain.cmake \ + -DANDROID_PLATFORM=android-21 \ + -DCMAKE_INSTALL_PREFIX=install \ + -DCMAKE_BUILD_TYPE=Release \ + -DNCNN_VULKAN=ON \ + + steps: + - uses: actions/checkout@v4 + with: + submodules: true + + - name: ndk-r16b + env: + DEBIAN_FRONTEND: noninteractive + run: | + sudo apt-get update + sudo apt-get install -y libncurses5 + wget -q 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: armeabi-v7a + run: | + mkdir build-armeabi-v7a && cd build-armeabi-v7a + cmake ${{ env.NCNN_CMAKE_OPTIONS }} -DANDROID_ABI="armeabi-v7a" -DANDROID_ARM_NEON=ON .. + cmake --build . -j $(nproc) + - name: armeabi-v7a-no-neon + run: | + mkdir build-armeabi-v7a-no-neon && cd build-armeabi-v7a-no-neon + cmake ${{ env.NCNN_CMAKE_OPTIONS }} -DANDROID_ABI="armeabi-v7a" -DANDROID_ARM_NEON=OFF .. + cmake --build . -j $(nproc) + - name: arm64-v8a + run: | + mkdir build-arm64-v8a && cd build-arm64-v8a + cmake ${{ env.NCNN_CMAKE_OPTIONS }} -DANDROID_ABI="arm64-v8a" .. + cmake --build . -j $(nproc) + + - name: armeabi-v7a-shared + run: | + mkdir build-armeabi-v7a-shared && cd build-armeabi-v7a-shared + cmake ${{ env.NCNN_CMAKE_OPTIONS }} -DANDROID_ABI="armeabi-v7a" -DANDROID_ARM_NEON=ON -DNCNN_SHARED_LIB=ON .. + cmake --build . -j $(nproc) + - name: armeabi-v7a-no-neon-shared + run: | + mkdir build-armeabi-v7a-no-neon-shared && cd build-armeabi-v7a-no-neon-shared + cmake ${{ env.NCNN_CMAKE_OPTIONS }} -DANDROID_ABI="armeabi-v7a" -DANDROID_ARM_NEON=OFF -DNCNN_SHARED_LIB=ON .. + cmake --build . -j $(nproc) + - name: arm64-v8a-shared + run: | + mkdir build-arm64-v8a-shared && cd build-arm64-v8a-shared + cmake ${{ env.NCNN_CMAKE_OPTIONS }} -DANDROID_ABI="arm64-v8a" -DNCNN_SHARED_LIB=ON .. + cmake --build . -j $(nproc) diff --git a/README.md b/README.md index e97ca3449d5..771fc8c1053 100644 --- a/README.md +++ b/README.md @@ -103,7 +103,7 @@ https://github.com/Tencent/ncnn/releases/latest - [](https://github.com/Tencent/ncnn/actions?query=workflow%3Aandroid-armv7-gpu) + [](https://github.com/Tencent/ncnn/actions?query=workflow%3Aandroid)