
name: CI Ubuntu

on:
  pull_request:
    branches: [ master ]

jobs:
  build:
    runs-on: ubuntu-latest
    
    strategy:
      matrix:
        build_type: [Debug, Release]
        cxx_compiler: [g++-9, g++-10, clang++-10, clang++-11, clang++-12]
        cxx_standard: [11, 14, 17, 20]

    steps:
    - uses: actions/checkout@v2
    
    - name: Install libraries
      run: sudo apt install libgl-dev libxcursor-dev libxi-dev libxinerama-dev libxrandr-dev

    - name: Update Submodules
      run: git submodule update --init --recursive
      
    - name: Configure CMake
      run: cmake -B ${{github.workspace}}/build
            -DSAMPLES_BUILD=ON
            -DSAMPLES_BUILD_ONLY_DYNAMIC=ON
            -DSAMPLES_BUILD_WITH_LOCAL_VULKAN_HPP=ON
            -DTESTS_BUILD=ON
            -DTESTS_BUILD_ONLY_DYNAMIC=ON
            -DTESTS_BUILD_WITH_LOCAL_VULKAN_HPP=ON
            -DVULKAN_HPP_RUN_GENERATOR=ON
            -DCMAKE_CXX_COMPILER=${{matrix.cxx_compiler}}
            -DCMAKE_CXX_STANDARD=${{matrix.cxx_standard}}
            
    - name: Build
      run: cmake --build ${{github.workspace}}/build --config ${{matrix.build_type}}
