diff --git a/.github/workflows/build_devCI.yml b/.github/workflows/build_devCI.yml deleted file mode 100644 index 30f4395..0000000 --- a/.github/workflows/build_devCI.yml +++ /dev/null @@ -1,77 +0,0 @@ -# CI code is based on -# https://github.com/nihui/realsr-ncnn-vulkan/blob/master/.github/workflows/release.yml -# Modified in here for newer vulkan -# https://github.com/onuralpszr/realsr-ncnn-vulkan/blob/vulkan-ci-version/.github/workflows/CI.yml - - -name: CI -on: [push, pull_request] - -env: - APPLICATION_NAME: gfpgan-ncnn-vulkan - -jobs: - dev-build-windows: - runs-on: windows-latest - steps: - - uses: actions/checkout@v4 - with: - submodules: 'recursive' - - name: cache-vulkansdk - id: cache-vulkansdk - uses: actions/cache@v3 - with: - path: "VulkanSDK" - key: VulkanSDK-1.3.250.1-Installer - - name: cache-opencv - id: cache-opencv - uses: actions/cache@v3 - with: - path: "OpenCV" - key: opencv-4.8.1-windows - - name: vulkansdk - if: steps.cache-vulkansdk.outputs.cache-hit != 'true' - run: | - Invoke-WebRequest -Uri https://sdk.lunarg.com/sdk/download/1.3.250.1/windows/VulkanSDK-1.3.250.1-Installer.exe?Human=true -OutFile VulkanSDK-1.3.250.1-Installer.exe - 7z x -aoa ./VulkanSDK-1.3.250.1-Installer.exe -oVulkanSDK - Remove-Item .\VulkanSDK\Demos -Recurse - - name: install opencv - if: steps.cache-opencv.outputs.cache-hit != 'true' - run: | - Invoke-WebRequest -Uri https://github.com/opencv/opencv/releases/download/4.8.1/opencv-4.8.1-windows.exe -OutFile opencv-4.8.1-windows.exe - 7z x -aoa ./opencv-4.8.1-windows.exe -oOpenCV - - name: build - run: | - $env:OpenCV_DIR="$(pwd)/OpenCV/opencv/build" - $env:VULKAN_SDK="$(pwd)/VulkanSDK" - mkdir build; cd build - cmake -A x64 ../src - cmake --build . --config Release -j 2 - - dev-build-ubuntu: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - submodules: 'recursive' - - name: cache-vulkansdk - id: cache-vulkansdk - uses: actions/cache@v3 - with: - path: "1.3.250.1" - key: vulkansdk-linux-x86_64-1.3.250.1 - - name: setup-vulkansdk - if: steps.cache-vulkansdk.outputs.cache-hit != 'true' - run: | - wget https://sdk.lunarg.com/sdk/download/1.3.250.1/linux/vulkansdk-linux-x86_64-1.3.250.1.tar.gz?Human=true -O vulkansdk-linux-x86_64-1.3.250.1.tar.gz - tar -xf vulkansdk-linux-x86_64-1.3.250.1.tar.gz - rm -rf 1.3.250.1/source 1.3.250.1/samples - find 1.3.250.1 -type f | grep -v -E 'vulkan|glslang' | xargs rm - - name: Build - run: | - sudo apt update - sudo apt install libopencv-dev python3-opencv -y - export VULKAN_SDK=`pwd`/1.3.250.1/x86_64 - mkdir build && cd build - cmake ../src - cmake --build . -j 2 diff --git a/.github/workflows/build_dev_fedora_lunar_vulkan.yml b/.github/workflows/build_dev_fedora_lunar_vulkan.yml new file mode 100644 index 0000000..7a3b625 --- /dev/null +++ b/.github/workflows/build_dev_fedora_lunar_vulkan.yml @@ -0,0 +1,46 @@ +# CI code is based on +# https://github.com/nihui/realsr-ncnn-vulkan/blob/master/.github/workflows/release.yml +# Modified in here for newer vulkan +# https://github.com/onuralpszr/realsr-ncnn-vulkan/blob/vulkan-ci-version/.github/workflows/CI.yml + + +name: Fedora Dev Build (Lunar Vulkan SDK) +on: [pull_request] + +env: + APPLICATION_NAME: gfpgan-ncnn-vulkan + +jobs: + dev-build-fedora-lunar-sdk: + runs-on: ubuntu-latest + container: fedora:latest + steps: + + - name: Install dependencies + run: | + dnf update -y + dnf install wget curl git opencv-devel opencv python3-opencv \ + libomp libomp-devel clang cmake gcc gcc-c++ glslang -y + + - uses: actions/checkout@v4 + with: + submodules: 'recursive' + - name: cache-vulkansdk + id: cache-vulkansdk + uses: actions/cache@v3 + with: + path: "${{ vars.VULKAN_SDK_VERSION }}" + key: vulkansdk-linux-x86_64-${{ vars.VULKAN_SDK_VERSION }} + - name: setup-vulkansdk + if: steps.cache-vulkansdk.outputs.cache-hit != 'true' + run: | + wget https://sdk.lunarg.com/sdk/download/${{ vars.VULKAN_SDK_VERSION }}/linux/vulkansdk-linux-x86_64-${{ vars.VULKAN_SDK_VERSION }}.tar.xz?Human=true -O vulkansdk-linux-x86_64-${{ vars.VULKAN_SDK_VERSION }}.tar.xz + tar -xf vulkansdk-linux-x86_64-${{ vars.VULKAN_SDK_VERSION }}.tar.xz + rm -rf ${{ vars.VULKAN_SDK_VERSION }}/source ${{ vars.VULKAN_SDK_VERSION }}/samples + find ${{ vars.VULKAN_SDK_VERSION }} -type f | grep -v -E 'vulkan|glslang' | xargs rm + - name: Build + run: | + export VULKAN_SDK=`pwd`/${{ vars.VULKAN_SDK_VERSION }}/x86_64 + mkdir build && cd build + cmake ../src + cmake --build . -j 2 diff --git a/.github/workflows/build_dev_fedora_rpm_vulkan.yml b/.github/workflows/build_dev_fedora_rpm_vulkan.yml new file mode 100644 index 0000000..a15c4dc --- /dev/null +++ b/.github/workflows/build_dev_fedora_rpm_vulkan.yml @@ -0,0 +1,33 @@ +# CI code is based on +# https://github.com/nihui/realsr-ncnn-vulkan/blob/master/.github/workflows/release.yml +# Modified in here for newer vulkan +# https://github.com/onuralpszr/realsr-ncnn-vulkan/blob/vulkan-ci-version/.github/workflows/CI.yml + + +name: Fedora Dev Build (RPM Vulkan) +on: [pull_request] + +env: + APPLICATION_NAME: gfpgan-ncnn-vulkan + +jobs: + dev-build-fedora-rpm-vulkan: + runs-on: ubuntu-latest + container: fedora:latest + steps: + + - name: Install dependencies + run: | + dnf update -y + dnf install wget curl git opencv-devel opencv python3-opencv \ + libomp libomp-devel clang cmake gcc gcc-c++ glslang vulkan* -y + + + - uses: actions/checkout@v4 + with: + submodules: 'recursive' + - name: Build + run: | + mkdir build && cd build + cmake ../src + cmake --build . -j 2 diff --git a/.github/workflows/build_dev_ubuntu.yml b/.github/workflows/build_dev_ubuntu.yml new file mode 100644 index 0000000..6415c89 --- /dev/null +++ b/.github/workflows/build_dev_ubuntu.yml @@ -0,0 +1,40 @@ +# CI code is based on +# https://github.com/nihui/realsr-ncnn-vulkan/blob/master/.github/workflows/release.yml +# Modified in here for newer vulkan +# https://github.com/onuralpszr/realsr-ncnn-vulkan/blob/vulkan-ci-version/.github/workflows/CI.yml + + +name: Ubuntu Dev Build +on: [pull_request] + +env: + APPLICATION_NAME: gfpgan-ncnn-vulkan + +jobs: + dev-build-ubuntu: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + submodules: 'recursive' + - name: cache-vulkansdk + id: cache-vulkansdk + uses: actions/cache@v3 + with: + path: "${{ vars.VULKAN_SDK_VERSION }}" + key: vulkansdk-linux-x86_64-${{ vars.VULKAN_SDK_VERSION }} + - name: setup-vulkansdk + if: steps.cache-vulkansdk.outputs.cache-hit != 'true' + run: | + wget https://sdk.lunarg.com/sdk/download/${{ vars.VULKAN_SDK_VERSION }}/linux/vulkansdk-linux-x86_64-${{ vars.VULKAN_SDK_VERSION }}.tar.xz?Human=true -O vulkansdk-linux-x86_64-${{ vars.VULKAN_SDK_VERSION }}.tar.xz + tar -xf vulkansdk-linux-x86_64-${{ vars.VULKAN_SDK_VERSION }}.tar.xz + rm -rf ${{ vars.VULKAN_SDK_VERSION }}/source ${{ vars.VULKAN_SDK_VERSION }}/samples + find ${{ vars.VULKAN_SDK_VERSION }} -type f | grep -v -E 'vulkan|glslang' | xargs rm + - name: Build + run: | + sudo apt update + sudo apt install libopencv-dev python3-opencv -y + export VULKAN_SDK=`pwd`/${{ vars.VULKAN_SDK_VERSION }}/x86_64 + mkdir build && cd build + cmake ../src + cmake --build . -j 2 diff --git a/.github/workflows/build_dev_windows.yml b/.github/workflows/build_dev_windows.yml new file mode 100644 index 0000000..29aa8ca --- /dev/null +++ b/.github/workflows/build_dev_windows.yml @@ -0,0 +1,50 @@ +# CI code is based on +# https://github.com/nihui/realsr-ncnn-vulkan/blob/master/.github/workflows/release.yml +# Modified in here for newer vulkan +# https://github.com/onuralpszr/realsr-ncnn-vulkan/blob/vulkan-ci-version/.github/workflows/CI.yml + + +name: Windows Dev Build +on: [pull_request] + +env: + APPLICATION_NAME: gfpgan-ncnn-vulkan + + +jobs: + dev-build-windows: + runs-on: windows-latest + steps: + - uses: actions/checkout@v4 + with: + submodules: 'recursive' + - name: cache-vulkansdk + id: cache-vulkansdk + uses: actions/cache@v3 + with: + path: "VulkanSDK" + key: VulkanSDK-${{ vars.VULKAN_SDK_VERSION }}-Installer + - name: cache-opencv + id: cache-opencv + uses: actions/cache@v3 + with: + path: "OpenCV" + key: opencv-${{ vars.OPENCV_VERSION }}-windows + - name: vulkansdk + if: steps.cache-vulkansdk.outputs.cache-hit != 'true' + run: | + Invoke-WebRequest -Uri https://sdk.lunarg.com/sdk/download/${{ vars.VULKAN_SDK_VERSION }}/windows/VulkanSDK-${{ vars.VULKAN_SDK_VERSION }}-Installer.exe?Human=true -OutFile VulkanSDK-${{ vars.VULKAN_SDK_VERSION }}-Installer.exe + 7z x -aoa ./VulkanSDK-${{ vars.VULKAN_SDK_VERSION }}-Installer.exe -oVulkanSDK + Remove-Item .\VulkanSDK\Demos -Recurse + - name: install opencv + if: steps.cache-opencv.outputs.cache-hit != 'true' + run: | + Invoke-WebRequest -Uri https://github.com/opencv/opencv/releases/download/${{ vars.OPENCV_VERSION }}/opencv-${{ vars.OPENCV_VERSION }}-windows.exe -OutFile opencv-${{ vars.OPENCV_VERSION }}-windows.exe + 7z x -aoa ./opencv-${{ vars.OPENCV_VERSION }}-windows.exe -oOpenCV + - name: build + run: | + $env:OpenCV_DIR="$(pwd)/OpenCV/opencv/build" + $env:VULKAN_SDK="$(pwd)/VulkanSDK" + mkdir build; cd build + cmake -A x64 ../src + cmake --build . --config Release -j 2