From 3c4be610c50730744e5bf8a289bbbeac37611100 Mon Sep 17 00:00:00 2001 From: Alexandre_1a Date: Tue, 6 Oct 2026 14:33:10 +0200 Subject: [PATCH] Actualiser .gitea/workflows/build_linux.yaml --- .gitea/workflows/build_linux.yaml | 121 ++++++++++++++++++++++++++---- 1 file changed, 105 insertions(+), 16 deletions(-) diff --git a/.gitea/workflows/build_linux.yaml b/.gitea/workflows/build_linux.yaml index 6d6d2c0..bf64403 100644 --- a/.gitea/workflows/build_linux.yaml +++ b/.gitea/workflows/build_linux.yaml @@ -11,33 +11,122 @@ on: jobs: build: - runs-on: ubuntu-latest + runs-on: ubuntu-latest-full steps: + - name: Update apt + run: sudo apt update + + - name: Install dependencies + run: | + sudo apt install -y \ + cmake \ + ninja-build \ + pkg-config \ + g++ \ + git \ + curl \ + tar \ + \ + libvulkan-dev \ + libvulkan1 \ + vulkan-validationlayers \ + vulkan-tools \ + vulkan-utility-libraries-dev \ + libvulkan-memory-allocator-dev \ + libvulkan-volk-dev \ + \ + glslang-tools \ + \ + libglfw3-dev \ + libfmt-dev \ + libcli11-dev \ + libglm-dev \ + \ + libwayland-dev \ + wayland-protocols \ + libwayland-bin \ + libxkbcommon-dev \ + libpulse-dev + + - name: Install vk-bootstrap + run: | + git clone --depth 1 https://github.com/charles-lunarg/vk-bootstrap.git /tmp/vk-bootstrap + + cmake \ + -S /tmp/vk-bootstrap \ + -B /tmp/vk-bootstrap/build \ + -G Ninja \ + -DCMAKE_BUILD_TYPE=Release \ + -DVK_BOOTSTRAP_TEST=OFF \ + -DVK_BOOTSTRAP_INSTALL=ON + + cmake \ + --build /tmp/vk-bootstrap/build + + sudo cmake \ + --install /tmp/vk-bootstrap/build + + - name: Install Slang + run: | + SLANG_VERSION="2026.19" + + curl -L \ + "https://github.com/shader-slang/slang/releases/download/v${SLANG_VERSION}/slang-${SLANG_VERSION}-linux-x86_64.tar.gz" \ + -o /tmp/slang.tar.gz + + sudo mkdir -p /opt/slang + + sudo tar \ + -xzf /tmp/slang.tar.gz \ + -C /opt/slang \ + --strip-components=1 + + echo "/opt/slang/bin" >> "$GITHUB_PATH" + + + - name: Check dependencies + run: | + cmake --version + ninja --version + g++ --version + + echo "Vulkan:" + vulkaninfo --summary || true + + echo "glslang:" + glslangValidator --version + + echo "Slang:" + slangc --version + + echo "vk-bootstrap:" + test -f /usr/local/include/vk_bootstrap.h + - name: Checkout uses: actions/checkout@v4 with: submodules: recursive fetch-depth: 0 - - - name: Update - run: sudo apt update - - - name: Install dependencies + + + - name: Configure run: | - sudo apt install cmake ninja libvulkan-dev libvulkan-memory-allocator-dev libvulkan1 - - - name: Setup build env + cmake \ + --preset release + + - name: Build run: | - mkdir bin - cd bin - cmake -G Ninja --preset release .. + cmake \ + --build \ + --preset release \ + --parallel - name: Upload des artefacts if: success() uses: actions/upload-artifact@v3 with: - name: vulkan-engine.zip + name: vulkan-engine path: | ./engine-bundle if-no-files-found: warn @@ -47,6 +136,6 @@ jobs: if: always() run: | curl \ - -H "Title: [Routine] VulkanEngine build" \ - -d "Build finished (status: ${{ job.status }})" \ - https://ntfy.alexdelcamp.fr/FlakeBuild \ No newline at end of file + -H "Title: [Routine] VulkanEngine build" \ + -d "Build finished (status: ${{ job.status }})" \ + https://ntfy.alexdelcamp.fr/FlakeBuild \ No newline at end of file