|
- name: CI
-
- on: [push, pull_request]
-
- jobs:
- linux-gcc:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v1
- - name: protobuf
- run: sudo apt-get install libprotobuf-dev protobuf-compiler libopencv-dev
- - name: configure
- run: mkdir build && cd build && cmake ..
- - name: build
- run: cmake --build build -j 2
- - name: test
- run: cd build && ctest --output-on-failure -j 2
-
- linux-gcc-gpu:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v1
- - name: protobuf
- run: sudo apt-get install libprotobuf-dev protobuf-compiler libopencv-dev
- - name: cache-vulkansdk
- id: cache-vulkansdk
- uses: actions/cache@v1
- with:
- path: "1.1.114.0"
- key: vulkansdk-linux-x86_64-1.1.114.0
- - name: vulkansdk
- if: steps.cache-vulkansdk.outputs.cache-hit != 'true'
- run: |
- wget https://sdk.lunarg.com/sdk/download/1.1.114.0/linux/vulkansdk-linux-x86_64-1.1.114.0.tar.gz?Human=true -O vulkansdk-linux-x86_64-1.1.114.0.tar.gz
- tar -xf vulkansdk-linux-x86_64-1.1.114.0.tar.gz
- rm -rf 1.1.114.0/source 1.1.114.0/samples
- find 1.1.114.0 -type f | grep -v -E 'vulkan|glslang' | xargs rm
- - name: cache-swiftshader
- id: cache-swiftshader
- uses: actions/cache@v1
- with:
- path: swiftshader-install
- key: swiftshader-linux-install
- - name: checkout-swiftshader
- if: steps.cache-swiftshader.outputs.cache-hit != 'true'
- uses: actions/checkout@v2
- with:
- repository: google/swiftshader
- path: swiftshader
- ref: 59465799210b3f4962af1a9dc44a4ffecb422c10
- - name: checkout-swiftshader-submodules
- if: steps.cache-swiftshader.outputs.cache-hit != 'true'
- run: |
- cd swiftshader
- git submodule update --init --recursive
- - name: swiftshader
- if: steps.cache-swiftshader.outputs.cache-hit != 'true'
- run: |
- cd swiftshader
- mkdir -p build; cd build
- cmake -DCMAKE_INSTALL_PREFIX=install -DBUILD_EGL=0 -DBUILD_GLESv2=0 -DBUILD_GLES_CM=0 -DBUILD_VULKAN=1 -DBUILD_SAMPLES=0 -DBUILD_TESTS=0 -DWARNINGS_AS_ERRORS=0 ..
- cmake --build . -j 2
- mkdir $GITHUB_WORKSPACE/swiftshader-install
- cp Linux/* $GITHUB_WORKSPACE/swiftshader-install
- - name: configure
- run: export VULKAN_SDK=`pwd`/1.1.114.0/x86_64 && mkdir build && cd build && cmake -DNCNN_VULKAN=ON ..
- - name: build
- run: cmake --build build -j 2
- - name: test
- run: |
- export VK_ICD_FILENAMES="$GITHUB_WORKSPACE/swiftshader-install/vk_swiftshader_icd.json"
- cd build && ctest --output-on-failure -j 2
-
- linux-clang:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v1
- - name: protobuf
- run: sudo apt-get install libprotobuf-dev protobuf-compiler libopencv-dev
- - name: configure
- env:
- CC: clang
- CXX: clang++
- run: mkdir build && cd build && cmake ..
- - name: build
- run: cmake --build build -j 2
- - name: test
- run: cd build && ctest --output-on-failure -j 2
-
- linux-clang-gpu:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v1
- - name: protobuf
- run: sudo apt-get install libprotobuf-dev protobuf-compiler libopencv-dev
- - name: cache-vulkansdk
- id: cache-vulkansdk
- uses: actions/cache@v1
- with:
- path: "1.1.114.0"
- key: vulkansdk-linux-x86_64-1.1.114.0
- - name: vulkansdk
- if: steps.cache-vulkansdk.outputs.cache-hit != 'true'
- run: |
- wget https://sdk.lunarg.com/sdk/download/1.1.114.0/linux/vulkansdk-linux-x86_64-1.1.114.0.tar.gz?Human=true -O vulkansdk-linux-x86_64-1.1.114.0.tar.gz
- tar -xf vulkansdk-linux-x86_64-1.1.114.0.tar.gz
- rm -rf 1.1.114.0/source 1.1.114.0/samples
- find 1.1.114.0 -type f | grep -v -E 'vulkan|glslang' | xargs rm
- - name: cache-swiftshader
- id: cache-swiftshader
- uses: actions/cache@v1
- with:
- path: swiftshader-install
- key: swiftshader-linux-install
- - name: checkout-swiftshader
- if: steps.cache-swiftshader.outputs.cache-hit != 'true'
- uses: actions/checkout@v2
- with:
- repository: google/swiftshader
- path: swiftshader
- ref: 59465799210b3f4962af1a9dc44a4ffecb422c10
- - name: checkout-swiftshader-submodules
- if: steps.cache-swiftshader.outputs.cache-hit != 'true'
- run: |
- cd swiftshader
- git submodule update --init --recursive
- - name: swiftshader
- if: steps.cache-swiftshader.outputs.cache-hit != 'true'
- run: |
- cd swiftshader
- mkdir -p build; cd build
- cmake -DCMAKE_INSTALL_PREFIX=install -DBUILD_EGL=0 -DBUILD_GLESv2=0 -DBUILD_GLES_CM=0 -DBUILD_VULKAN=1 -DBUILD_SAMPLES=0 -DBUILD_TESTS=0 -DWARNINGS_AS_ERRORS=0 ..
- cmake --build . -j 2
- mkdir $GITHUB_WORKSPACE/swiftshader-install
- cp Linux/* $GITHUB_WORKSPACE/swiftshader-install
- - name: configure
- env:
- CC: clang
- CXX: clang++
- run: export VULKAN_SDK=`pwd`/1.1.114.0/x86_64 && mkdir build && cd build && cmake -DNCNN_VULKAN=ON ..
- - name: build
- run: cmake --build build -j 2
- - name: test
- run: |
- export VK_ICD_FILENAMES="$GITHUB_WORKSPACE/swiftshader-install/vk_swiftshader_icd.json"
- cd build && ctest --output-on-failure -j 2
-
- linux-mips-mti:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v1
- - name: mips-mti-compiler
- run: |
- wget https://codescape.mips.com/components/toolchain/2019.09-01/Codescape.GNU.Tools.Package.2019.09-01.for.MIPS.MTI.Linux.CentOS-6.x86_64.tar.gz -O mips-mti-linux-gnu.tar.gz
- tar -zxf mips-mti-linux-gnu.tar.gz
- - name: configure
- run: |
- export PATH=`pwd`/mips-mti-linux-gnu/2019.09-01/bin:$PATH
- mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=../toolchains/mips-mti-linux-gnu.toolchain.cmake -DNCNN_BUILD_TOOLS=OFF ..
- - name: build
- run: cmake --build build -j 2
-
- macos-clang:
- runs-on: macos-latest
- steps:
- - uses: actions/checkout@v1
- - name: protobuf
- run: brew install protobuf opencv3
- - name: configure
- run: mkdir build && cd build && cmake ..
- - name: build
- run: cmake --build build -j 2
- - name: test
- run: cd build && ctest --output-on-failure -j 2
-
- macos-clang-gpu:
- runs-on: macos-latest
- steps:
- - uses: actions/checkout@v1
- - name: protobuf
- run: brew install protobuf opencv3
- - name: cache-vulkansdk
- id: cache-vulkansdk
- uses: actions/cache@v1
- with:
- path: "vulkansdk-macos-1.1.114.0"
- key: vulkansdk-macos-1.1.114.0
- - name: vulkansdk
- if: steps.cache-vulkansdk.outputs.cache-hit != 'true'
- run: |
- wget https://sdk.lunarg.com/sdk/download/1.1.114.0/mac/vulkansdk-macos-1.1.114.0.tar.gz?Human=true -O vulkansdk-macos-1.1.114.0.tar.gz
- tar -xf vulkansdk-macos-1.1.114.0.tar.gz
- rm -rf vulkansdk-macos-1.1.114.0/Applications
- find vulkansdk-macos-1.1.114.0 -type f | grep -v -E 'vulkan|glslang|MoltenVK' | xargs rm
- - name: cache-swiftshader
- id: cache-swiftshader
- uses: actions/cache@v1
- with:
- path: swiftshader-install
- key: swiftshader-macos-install
- - name: checkout-swiftshader
- if: steps.cache-swiftshader.outputs.cache-hit != 'true'
- uses: actions/checkout@v2
- with:
- repository: google/swiftshader
- path: swiftshader
- ref: 59465799210b3f4962af1a9dc44a4ffecb422c10
- - name: checkout-swiftshader-submodules
- if: steps.cache-swiftshader.outputs.cache-hit != 'true'
- run: |
- cd swiftshader
- git submodule update --init --recursive
- - name: swiftshader
- if: steps.cache-swiftshader.outputs.cache-hit != 'true'
- run: |
- cd swiftshader
- mkdir -p build; cd build
- cmake -DCMAKE_INSTALL_PREFIX=install -DBUILD_EGL=0 -DBUILD_GLESv2=0 -DBUILD_GLES_CM=0 -DBUILD_VULKAN=1 -DBUILD_SAMPLES=0 -DBUILD_TESTS=0 -DWARNINGS_AS_ERRORS=0 ..
- cmake --build . -j 2
- mkdir $GITHUB_WORKSPACE/swiftshader-install
- cp Darwin/* $GITHUB_WORKSPACE/swiftshader-install
- - name: configure
- run: export VULKAN_SDK=`pwd`/vulkansdk-macos-1.1.114.0/macOS && mkdir build && cd build && cmake -DNCNN_VULKAN=ON ..
- - name: build
- run: cmake --build build -j 2
- # - name: test
- # run: |
- # find "swiftshader-install/"
- # find "vulkansdk-macos-1.1.114.0/"
- # export DYLD_LIBRARY_PATH="vulkansdk-macos-1.1.114.0/macOS/lib":$DYLD_LIBRARY_PATH
- # export VK_ICD_FILENAMES="$GITHUB_WORKSPACE/swiftshader-install/vk_swiftshader_icd.json"
- # ./vulkansdk-macos-1.1.114.0/macOS/bin/vulkaninfo
- # cd build && ctest --output-on-failure -j 2
- # export VK_ICD_FILENAMES="vulkansdk-macos-1.1.114.0/macOS/etc/vulkan/icd.d/MoltenVK_icd.json"
- # cd build && ctest --output-on-failure -j 2
-
- windows-vs2019:
- runs-on: windows-latest
- steps:
- - uses: actions/checkout@v1
- - name: cache-protobuf
- id: cache-protobuf
- uses: actions/cache@v1
- with:
- path: "protobuf-install"
- key: protobuf-windows-install
- - name: protobuf
- if: steps.cache-protobuf.outputs.cache-hit != 'true'
- run: |
- Invoke-WebRequest -Uri https://github.com/protocolbuffers/protobuf/archive/v3.11.2.zip -OutFile protobuf-3.11.2.zip
- 7z x ./protobuf-3.11.2.zip
- cd protobuf-3.11.2
- mkdir build-vs2019; cd build-vs2019; cmake -DCMAKE_INSTALL_PREFIX="$env:GITHUB_WORKSPACE\protobuf-install" -Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_MSVC_STATIC_RUNTIME=OFF ../cmake
- cmake --build . --config Release -j 2
- cmake --build . --config Release --target install
- - name: configure
- run: |
- mkdir build; cd build
- cmake -DProtobuf_INCLUDE_DIR="$env:GITHUB_WORKSPACE\protobuf-install\include" -DProtobuf_LIBRARIES="$env:GITHUB_WORKSPACE\protobuf-install\lib\libprotobuf.lib" -DProtobuf_PROTOC_EXECUTABLE="$env:GITHUB_WORKSPACE\protobuf-install\bin\protoc.exe" ..
- - name: build
- run: cmake --build build --config Release -j 2
- - name: test
- run: cd build; ctest --output-on-failure -j 2
-
- windows-vs2019-gpu:
- runs-on: windows-latest
- steps:
- - uses: actions/checkout@v1
- - name: cache-protobuf
- id: cache-protobuf
- uses: actions/cache@v1
- with:
- path: "protobuf-install"
- key: protobuf-windows-install
- - name: protobuf
- if: steps.cache-protobuf.outputs.cache-hit != 'true'
- run: |
- Invoke-WebRequest -Uri https://github.com/protocolbuffers/protobuf/archive/v3.11.2.zip -OutFile protobuf-3.11.2.zip
- 7z x ./protobuf-3.11.2.zip
- cd protobuf-3.11.2
- mkdir build-vs2019; cd build-vs2019; cmake -DCMAKE_INSTALL_PREFIX="$env:GITHUB_WORKSPACE\protobuf-install" -Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_MSVC_STATIC_RUNTIME=OFF ../cmake
- cmake --build . --config Release -j 2
- cmake --build . --config Release --target install
- - name: cache-vulkansdk
- id: cache-vulkansdk
- uses: actions/cache@v1
- with:
- path: "VulkanSDK"
- key: VulkanSDK-1.1.114.0-Installer
- - name: vulkansdk
- if: steps.cache-vulkansdk.outputs.cache-hit != 'true'
- run: |
- Invoke-WebRequest -Uri https://sdk.lunarg.com/sdk/download/1.1.114.0/windows/VulkanSDK-1.1.114.0-Installer.exe?Human=true -OutFile VulkanSDK-1.1.114.0-Installer.exe
- 7z x -aoa ./VulkanSDK-1.1.114.0-Installer.exe -oVulkanSDK
- Remove-Item .\VulkanSDK\Demos, .\VulkanSDK\glslang, .\VulkanSDK\Samples, .\VulkanSDK\shaderc, .\VulkanSDK\spirv-tools, .\VulkanSDK\Third-Party, .\VulkanSDK\Tools, .\VulkanSDK\Tools32 -Recurse
- - name: cache-swiftshader
- id: cache-swiftshader
- uses: actions/cache@v1
- with:
- path: swiftshader-install
- key: swiftshader-windows-install
- - name: checkout-swiftshader
- if: steps.cache-swiftshader.outputs.cache-hit != 'true'
- uses: actions/checkout@v2
- with:
- repository: google/swiftshader
- path: swiftshader
- ref: 59465799210b3f4962af1a9dc44a4ffecb422c10
- - name: checkout-swiftshader-submodules
- if: steps.cache-swiftshader.outputs.cache-hit != 'true'
- run: |
- cd swiftshader
- git submodule update --init --recursive
- - name: swiftshader
- if: steps.cache-swiftshader.outputs.cache-hit != 'true'
- run: |
- cd swiftshader
- mkdir build-vs2019; cd build-vs2019
- cmake -DCMAKE_INSTALL_PREFIX=install -DBUILD_EGL=0 -DBUILD_GLESv2=0 -DBUILD_GLES_CM=0 -DBUILD_VULKAN=1 -DBUILD_SAMPLES=0 -DBUILD_TESTS=0 -DWARNINGS_AS_ERRORS=0 ..
- cmake --build . --config Release -j 2
- mkdir "$env:GITHUB_WORKSPACE/swiftshader-install"
- Copy-Item -Path "Windows\*" -Destination "$env:GITHUB_WORKSPACE\swiftshader-install"
- - name: configure
- run: |
- $env:VULKAN_SDK="$(pwd)/VulkanSDK"
- mkdir build; cd build
- cmake -DProtobuf_INCLUDE_DIR="$env:GITHUB_WORKSPACE\protobuf-install\include" -DProtobuf_LIBRARIES="$env:GITHUB_WORKSPACE\protobuf-install\lib\libprotobuf.lib" -DProtobuf_PROTOC_EXECUTABLE="$env:GITHUB_WORKSPACE\protobuf-install\bin\protoc.exe" -DNCNN_VULKAN=ON ..
- - name: build
- run: cmake --build build --config Release -j 2
- - name: test
- run: |
- Copy-Item -Path '.\VulkanSDK\RunTimeInstaller\x64\vulkan-1.dll' -Destination 'build\tests'
- $env:VK_ICD_FILENAMES="$env:GITHUB_WORKSPACE\swiftshader-install\vk_swiftshader_icd.json"
- cd build; ctest --output-on-failure -j 2
-
- android-armv7:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v1
- - name: configure
- run: mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_HOME/ndk-bundle/build/cmake/android.toolchain.cmake -DANDROID_ABI="armeabi-v7a" -DANDROID_ARM_NEON=ON -DANDROID_PLATFORM=android-14 ..
- - name: build
- run: cmake --build build -j 2
-
- android-armv7-gpu:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v1
- - name: cache-vulkansdk
- id: cache-vulkansdk
- uses: actions/cache@v1
- with:
- path: "1.1.114.0"
- key: vulkansdk-linux-x86_64-1.1.114.0
- - name: vulkansdk
- if: steps.cache-vulkansdk.outputs.cache-hit != 'true'
- run: |
- wget https://sdk.lunarg.com/sdk/download/1.1.114.0/linux/vulkansdk-linux-x86_64-1.1.114.0.tar.gz?Human=true -O vulkansdk-linux-x86_64-1.1.114.0.tar.gz
- tar -xf vulkansdk-linux-x86_64-1.1.114.0.tar.gz
- rm -rf 1.1.114.0/source 1.1.114.0/samples
- find 1.1.114.0 -type f | grep -v -E 'vulkan|glslang' | xargs rm
- - name: configure
- run: export PATH=`pwd`/1.1.114.0/x86_64/bin:$PATH && mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_HOME/ndk-bundle/build/cmake/android.toolchain.cmake -DANDROID_ABI="armeabi-v7a" -DANDROID_ARM_NEON=ON -DANDROID_PLATFORM=android-24 -DNCNN_VULKAN=ON ..
- - name: build
- run: cmake --build build -j 2
-
- android-aarch64:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v1
- - name: configure
- run: mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_HOME/ndk-bundle/build/cmake/android.toolchain.cmake -DANDROID_ABI="arm64-v8a" -DANDROID_PLATFORM=android-21 ..
- - name: build
- run: cmake --build build -j 2
-
- android-aarch64-gpu:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v1
- - name: cache-vulkansdk
- id: cache-vulkansdk
- uses: actions/cache@v1
- with:
- path: "1.1.114.0"
- key: vulkansdk-linux-x86_64-1.1.114.0
- - name: vulkansdk
- if: steps.cache-vulkansdk.outputs.cache-hit != 'true'
- run: |
- wget https://sdk.lunarg.com/sdk/download/1.1.114.0/linux/vulkansdk-linux-x86_64-1.1.114.0.tar.gz?Human=true -O vulkansdk-linux-x86_64-1.1.114.0.tar.gz
- tar -xf vulkansdk-linux-x86_64-1.1.114.0.tar.gz
- rm -rf 1.1.114.0/source 1.1.114.0/samples
- find 1.1.114.0 -type f | grep -v -E 'vulkan|glslang' | xargs rm
- - name: configure
- run: export PATH=`pwd`/1.1.114.0/x86_64/bin:$PATH && mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_HOME/ndk-bundle/build/cmake/android.toolchain.cmake -DANDROID_ABI="arm64-v8a" -DANDROID_PLATFORM=android-24 -DNCNN_VULKAN=ON ..
- - name: build
- run: cmake --build build -j 2
-
- android-x86:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v1
- - name: configure
- run: mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_HOME/ndk-bundle/build/cmake/android.toolchain.cmake -DANDROID_ABI="x86" -DANDROID_PLATFORM=android-14 ..
- - name: build
- run: cmake --build build -j 2
-
- android-x86-gpu:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v1
- - name: cache-vulkansdk
- id: cache-vulkansdk
- uses: actions/cache@v1
- with:
- path: "1.1.114.0"
- key: vulkansdk-linux-x86_64-1.1.114.0
- - name: vulkansdk
- if: steps.cache-vulkansdk.outputs.cache-hit != 'true'
- run: |
- wget https://sdk.lunarg.com/sdk/download/1.1.114.0/linux/vulkansdk-linux-x86_64-1.1.114.0.tar.gz?Human=true -O vulkansdk-linux-x86_64-1.1.114.0.tar.gz
- tar -xf vulkansdk-linux-x86_64-1.1.114.0.tar.gz
- rm -rf 1.1.114.0/source 1.1.114.0/samples
- find 1.1.114.0 -type f | grep -v -E 'vulkan|glslang' | xargs rm
- - name: configure
- run: export PATH=`pwd`/1.1.114.0/x86_64/bin:$PATH && mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_HOME/ndk-bundle/build/cmake/android.toolchain.cmake -DANDROID_ABI="x86" -DANDROID_PLATFORM=android-24 -DNCNN_VULKAN=ON ..
- - name: build
- run: cmake --build build -j 2
-
- android-x86_64:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v1
- - name: configure
- run: mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_HOME/ndk-bundle/build/cmake/android.toolchain.cmake -DANDROID_ABI="x86_64" -DANDROID_PLATFORM=android-21 ..
- - name: build
- run: cmake --build build -j 2
-
- android-x86_64-gpu:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v1
- - name: cache-vulkansdk
- id: cache-vulkansdk
- uses: actions/cache@v1
- with:
- path: "1.1.114.0"
- key: vulkansdk-linux-x86_64-1.1.114.0
- - name: vulkansdk
- if: steps.cache-vulkansdk.outputs.cache-hit != 'true'
- run: |
- wget https://sdk.lunarg.com/sdk/download/1.1.114.0/linux/vulkansdk-linux-x86_64-1.1.114.0.tar.gz?Human=true -O vulkansdk-linux-x86_64-1.1.114.0.tar.gz
- tar -xf vulkansdk-linux-x86_64-1.1.114.0.tar.gz
- rm -rf 1.1.114.0/source 1.1.114.0/samples
- find 1.1.114.0 -type f | grep -v -E 'vulkan|glslang' | xargs rm
- - name: configure
- run: export PATH=`pwd`/1.1.114.0/x86_64/bin:$PATH && mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_HOME/ndk-bundle/build/cmake/android.toolchain.cmake -DANDROID_ABI="x86_64" -DANDROID_PLATFORM=android-24 -DNCNN_VULKAN=ON ..
- - name: build
- run: cmake --build build -j 2
-
- ios-iphoneos:
- runs-on: macos-latest
- steps:
- - uses: actions/checkout@v1
- - name: configure
- run: mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=../toolchains/ios.toolchain.cmake -DIOS_PLATFORM=OS ..
- - name: build
- run: cmake --build build -j 2
-
- ios-iphoneos-gpu:
- runs-on: macos-latest
- steps:
- - uses: actions/checkout@v1
- - name: cache-vulkansdk
- id: cache-vulkansdk
- uses: actions/cache@v1
- with:
- path: "vulkansdk-macos-1.1.114.0"
- key: vulkansdk-macos-1.1.114.0
- - name: vulkansdk
- if: steps.cache-vulkansdk.outputs.cache-hit != 'true'
- run: |
- wget https://sdk.lunarg.com/sdk/download/1.1.114.0/mac/vulkansdk-macos-1.1.114.0.tar.gz?Human=true -O vulkansdk-macos-1.1.114.0.tar.gz
- tar -xf vulkansdk-macos-1.1.114.0.tar.gz
- rm -rf vulkansdk-macos-1.1.114.0/Applications
- find vulkansdk-macos-1.1.114.0 -type f | grep -v -E 'vulkan|glslang|MoltenVK' | xargs rm
- - name: configure
- run: export VULKAN_SDK=`pwd`/vulkansdk-macos-1.1.114.0/macOS && mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=../toolchains/ios.toolchain.cmake -DIOS_PLATFORM=OS64 -DVulkan_INCLUDE_DIR=`pwd`/../vulkansdk-macos-1.1.114.0/MoltenVK/include -DVulkan_LIBRARY=`pwd`/../vulkansdk-macos-1.1.114.0/MoltenVK/iOS/dynamic/libMoltenVK.dylib -DNCNN_VULKAN=ON ..
- - name: build
- run: cmake --build build -j 2
-
- ios-iphonesimulator:
- runs-on: macos-latest
- steps:
- - uses: actions/checkout@v1
- - name: configure
- run: mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=../toolchains/ios.toolchain.cmake -DIOS_PLATFORM=SIMULATOR ..
- - name: build
- run: cmake --build build -j 2
-
- webassembly:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v1
- - name: emsdk
- run: |
- git clone https://github.com/emscripten-core/emsdk.git
- cd emsdk
- ./emsdk install latest
- ./emsdk activate latest
- - name: configure
- run: source emsdk/emsdk_env.sh && mkdir build && cd build && cmake -DCMAKE_TOOLCHAIN_FILE=../emsdk/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake ..
- - name: build
- run: cmake --build build -j 2
|