mirror of
				https://github.com/PancakeTAS/lsfg-vk.git
				synced 2025-10-30 07:01:10 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			65 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			65 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
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 appimage.sh
 | 
						|
        ./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
 |