diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..32a610f --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,42 @@ +name: Build lsfg-vk on Arch Linux +on: [push] + +jobs: + build-arch: + runs-on: ubuntu-latest + container: + image: archlinux:latest + steps: + - name: Prepare cache for pacman packages + uses: actions/cache@v4 + with: + path: /var/cache/pacman/pkg + key: archlinux-pacman-cache + - name: Install build dependencies + run: | + pacman -Syu --noconfirm \ + base-devel \ + git sdl3 \ + clang llvm \ + cmake meson ninja \ + glslang vulkan-headers vulkan-icd-loader + - name: Checkout repository + uses: actions/checkout@v4 + - name: Configure with CMake and Ninja + run: | + cmake -B build -G Ninja \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=./build-release + - name: Build with Ninja + run: | + ninja -C build + - name: Install with CMake + run: | + cmake --install build + - name: Upload lsfg-vk artifact + uses: actions/upload-artifact@v4 + with: + name: lsfg-vk + path: | + build-release/share/vulkan/implicit_layer.d/VkLayer_LS_frame_generation.json + build-release/lib/liblsfg-vk.so