bloom blend tweakk #106
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build | |
| on: | |
| push: | |
| paths-ignore: | |
| - '*.md' | |
| - '*LICENSE' | |
| pull_request: | |
| env: | |
| # SCCACHE_GHA_ENABLED: "true" | |
| RUSTC_WRAPPER: "sccache" | |
| SENTRY_DSN: ${{ secrets.SENTRY_DSN }} | |
| jobs: | |
| build-linux: | |
| name: Build Linux (${{matrix.name}}) | |
| runs-on: ${{matrix.runner}} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - name: GCC x86_64 | |
| runner: [self-hosted, Linux] | |
| preset: gcc | |
| artifact_arch: x86_64 | |
| # - name: GCC aarch64 | |
| # runner: ubuntu-24.04-arm | |
| # preset: gcc | |
| # artifact_arch: aarch64 | |
| # - name: Clang x86_64 | |
| # runner: ubuntu-latest | |
| # preset: clang | |
| # artifact_arch: x86_64 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 0 | |
| submodules: recursive | |
| - name: Install dependencies | |
| if: 'false' # disabled for self-hosted | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get -y install ninja-build clang lld openssl libcurl4-openssl-dev \ | |
| zlib1g-dev libglu1-mesa-dev libdbus-1-dev libvulkan-dev libxi-dev libxrandr-dev libasound2-dev \ | |
| libpulse-dev libudev-dev libpng-dev libncurses5-dev libx11-xcb-dev libfreetype-dev \ | |
| libxinerama-dev libxcursor-dev python3-markupsafe libgtk-3-dev libssl-dev \ | |
| libxss-dev libfuse2 libusb-1.0-0-dev libdecor-0-dev libpipewire-0.3-dev libunwind-dev | |
| - name: Setup sccache | |
| if: 'false' # disabled for self-hosted | |
| uses: mozilla-actions/sccache-action@v0.0.9 | |
| - name: Print sccache stats | |
| run: sccache --show-stats | |
| - name: Configure CMake | |
| run: cmake --preset x-linux-ci-${{matrix.preset}} | |
| - name: Build | |
| run: cmake --build --preset x-linux-ci-${{matrix.preset}} | |
| - name: Generate AppImage | |
| run: ci/build-appimage.sh | |
| - name: Upload artifacts | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: dusk-${{env.DUSK_VERSION}}-linux-${{matrix.preset}}-${{matrix.artifact_arch}} | |
| path: | | |
| build/install/Dusk-*.AppImage | |
| build/install/debug.tar.* | |
| build-apple: | |
| name: Build Apple (${{matrix.name}}) | |
| if: 'false' # TODO enable when CI is free | |
| runs-on: macos-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - name: AppleClang macOS universal | |
| platform: macos | |
| preset: x-macos-ci | |
| artifact_name: macos-appleclang-universal | |
| - name: AppleClang iOS arm64 | |
| platform: ios | |
| preset: x-ios-ci | |
| artifact_name: ios-appleclang-arm64 | |
| - name: AppleClang tvOS arm64 | |
| platform: tvos | |
| preset: x-tvos-ci | |
| artifact_name: tvos-appleclang-arm64 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 0 | |
| submodules: recursive | |
| - name: Update Homebrew | |
| if: matrix.platform == 'tvos' | |
| run: | | |
| brew update | |
| brew upgrade --formula | |
| - name: Install dependencies | |
| run: brew install cmake ninja | |
| - name: Install markupsafe | |
| if: matrix.platform == 'tvos' | |
| run: pip3 install --break-system-packages markupsafe | |
| - name: Install Rust iOS target | |
| if: matrix.platform == 'ios' | |
| run: rustup target add aarch64-apple-ios | |
| - name: Install Rust tvOS target | |
| if: matrix.platform == 'tvos' | |
| run: | | |
| rustup toolchain install nightly | |
| rustup target add --toolchain nightly aarch64-apple-tvos | |
| - name: Setup sccache | |
| uses: mozilla-actions/sccache-action@v0.0.9 | |
| - name: Configure CMake | |
| run: cmake --preset ${{matrix.preset}} | |
| - name: Build | |
| run: cmake --build --preset ${{matrix.preset}} | |
| - name: Upload artifacts | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: dusk-${{env.DUSK_VERSION}}-${{matrix.artifact_name}} | |
| path: | | |
| build/install/Dusk.app | |
| build/install/debug.tar.* | |
| build-windows: | |
| name: Build Windows (${{matrix.name}}) | |
| runs-on: ${{matrix.runner}} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - name: MSVC x86_64 | |
| runner: [self-hosted, Windows] | |
| preset: msvc | |
| msvc_arch: amd64 | |
| vcpkg_arch: x64 | |
| artifact_arch: x86_64 | |
| # - name: MSVC arm64 | |
| # runner: windows-11-arm | |
| # preset: arm64-msvc | |
| # msvc_arch: arm64 | |
| # vcpkg_arch: arm64 | |
| # artifact_arch: arm64 | |
| # - name: Clang x86_64 | |
| # runner: windows-latest | |
| # preset: clang | |
| # msvc_arch: amd64 | |
| # vcpkg_arch: x64 | |
| # artifact_arch: x86_64 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 0 | |
| submodules: recursive | |
| - name: Enable Visual Studio environment | |
| uses: ilammy/msvc-dev-cmd@v1 | |
| with: | |
| arch: ${{matrix.msvc_arch}} | |
| # msvc-dev-cmd sets VCPKG_ROOT, set it back | |
| - name: Override VCPKG_ROOT | |
| run: echo "VCPKG_ROOT=C:\vcpkg" >> $env:GITHUB_ENV | |
| - name: Setup sccache | |
| uses: mozilla-actions/sccache-action@v0.0.9 | |
| - name: Install dependencies | |
| if: 'false' # disabled for self-hosted | |
| run: | | |
| choco install ninja | |
| vcpkg install freetype:${{matrix.vcpkg_arch}}-windows-static zstd:${{matrix.vcpkg_arch}}-windows-static | |
| - name: Configure CMake | |
| run: cmake --preset x-windows-ci-${{matrix.preset}} | |
| - name: Build | |
| run: cmake --build --preset x-windows-ci-${{matrix.preset}} | |
| - name: Upload artifacts | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: dusk-${{env.DUSK_VERSION}}-win32-msvc-${{matrix.artifact_arch}} | |
| path: | | |
| build/install/*.exe | |
| build/install/*.dll | |
| build/install/res/ | |
| build/install/debug.7z |