diff --git a/.github/workflows/esp32.yml b/.github/workflows/esp32.yml index aff35ffab4a..c0cd710d1f2 100644 --- a/.github/workflows/esp32.yml +++ b/.github/workflows/esp32.yml @@ -1,6 +1,8 @@ -name: esp32 +name: ESP32 on: + workflow_dispatch: push: + branches: [master] paths: - '.github/workflows/esp32.yml' - 'CMakeLists.txt' @@ -21,7 +23,6 @@ on: - 'src/layer/x86/**' - 'src/layer/vulkan/**' - 'tests/**' - workflow_dispatch: concurrency: group: esp32-${{ github.ref }} cancel-in-progress: true @@ -38,13 +39,13 @@ jobs: with: submodules: true - - name: Set up Python - uses: actions/setup-python@v4 - with: + - name: setup-python + - uses: actions/setup-python@v5 + with: python-version: '3.8' - name: Install dependencies - run: sudo apt-get install -y cmake ninja-build ccache + run: sudo apt-get install -y cmake ninja-build ccache - name: Cache-ESP-IDF id: Cache-ESP-IDF @@ -68,23 +69,22 @@ jobs: echo "::add-path::${IDF_PATH}/components" - name: Create toolchain file - run: | - mkdir -p toolchains - echo "set(CMAKE_SYSTEM_NAME freertos)" > toolchains/esp32.toolchain.cmake - echo "set(CMAKE_SYSTEM_PROCESSOR xtensa-esp32)" >> toolchains/esp32.toolchain.cmake - echo "include(\$ENV{IDF_PATH}/tools/cmake/toolchain-esp32.cmake)" >> toolchains/esp32.toolchain.cmake - echo "set(CMAKE_TRY_COMPILE_TARGET_TYPE STATIC_LIBRARY)" >> toolchains/esp32.toolchain.cmake - echo "set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)" >> toolchains/esp32.toolchain.cmake - echo "set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)" >> toolchains/esp32.toolchain.cmake - echo "set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)" >> toolchains/esp32.toolchain.cmake - echo "set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)" >> toolchains/esp32.toolchain.cmake - echo "set(CMAKE_C_FLAGS \"\${CMAKE_C_FLAGS}\" CACHE STRING \"c flags\")" >> toolchains/esp32.toolchain.cmake - echo "set(CMAKE_CXX_FLAGS \"\${CMAKE_CXX_FLAGS}\" CACHE STRING \"c++ flags\")" >> toolchains/esp32.toolchain.cmake + run: | + mkdir -p toolchains + echo "set(CMAKE_SYSTEM_NAME freertos)" > toolchains/esp32.toolchain.cmake + echo "set(CMAKE_SYSTEM_PROCESSOR xtensa-esp32)" >> toolchains/esp32.toolchain.cmake + echo "include(\$ENV{IDF_PATH}/tools/cmake/toolchain-esp32.cmake)" >> toolchains/esp32.toolchain.cmake + echo "set(CMAKE_TRY_COMPILE_TARGET_TYPE STATIC_LIBRARY)" >> toolchains/esp32.toolchain.cmake + echo "set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)" >> toolchains/esp32.toolchain.cmake + echo "set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)" >> toolchains/esp32.toolchain.cmake + echo "set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)" >> toolchains/esp32.toolchain.cmake + echo "set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)" >> toolchains/esp32.toolchain.cmake + echo "set(CMAKE_C_FLAGS \"\${CMAKE_C_FLAGS}\" CACHE STRING \"c flags\")" >> toolchains/esp32.toolchain.cmake + echo "set(CMAKE_CXX_FLAGS \"\${CMAKE_CXX_FLAGS}\" CACHE STRING \"c++ flags\")" >> toolchains/esp32.toolchain.cmake - name: Build NCNN for ESP32 - run: | - mkdir -p build-esp32 && cd build-esp32 - cmake -DCMAKE_TOOLCHAIN_FILE="$env:GITHUB_WORKSPACE/ncnn/toolchains/esp32.toolchain.cmake" -DCMAKE_BUILD_TYPE=Release .. - make -j4 - make install - + run: | + mkdir -p build-esp32 && cd build-esp32 + cmake -DCMAKE_TOOLCHAIN_FILE="$env:GITHUB_WORKSPACE/ncnn/toolchains/esp32.toolchain.cmake" -DCMAKE_BUILD_TYPE=Release .. + make -j4 + make install