name: (Test) Build lsfg-vk on: push: branches: ["test/deploying"] env: CARGO_TERM_COLOR: always jobs: build: runs-on: ubuntu-latest steps: # prepare system - name: Checkout repository uses: actions/checkout@v4 with: submodules: 'recursive' - name: Install build dependencies uses: awalsh128/cache-apt-pkgs-action@latest with: packages: git wget xvfb clang clang-tools llvm rustup cmake ninja-build pkg-config libvulkan-dev libgtk-4-dev libadwaita-1-dev version: 1.0 execute_install_scripts: true - name: Install rust dependency run: | rustup default stable # build the project - name: Configure with CMake and Ninja run: | cmake -B build -G Ninja \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=./build-release \ -DCMAKE_C_COMPILER=clang \ -DCMAKE_CXX_COMPILER=clang++ \ -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=On - name: Build with Ninja run: | ninja -C build - name: Install with CMake run: | cmake --install build --strip - name: Build lsfg-vk-ui with appimage.sh run: | pushd ui chmod +x ../scripts/build/appimage.sh ../scripts/build/appimage.sh popd - name: Install lsfg-vk-ui run: | mkdir -p build-release/bin mv ui/lsfg-vk-ui.AppImage build-release/bin/lsfg-vk-ui # upload all files - name: Upload lsfg-vk artifact uses: actions/upload-artifact@v4 with: name: lsfg-vk_TEST path: | build-release/share/vulkan/implicit_layer.d/VkLayer_LS_frame_generation.json build-release/lib/liblsfg-vk.so build-release/bin/lsfg-vk-ui