Skip to content

Fix Examples MultiContext for Linux X11 OpenGL #140

Fix Examples MultiContext for Linux X11 OpenGL

Fix Examples MultiContext for Linux X11 OpenGL #140

Workflow file for this run

name: Unity Build
on:
push:
branches: [ "master" ]
pull_request:
branches: [ "master" ]
jobs:
unity_build:
strategy:
matrix:
platform: [windows-latest, macos-latest, ubuntu-24.04]
lib: [Shared, Static]
config: [Release, Debug]
fail-fast: false
runs-on: ${{ matrix.platform }}
env:
WITH_GL: 'ON'
WITH_D3D: ${{ matrix.platform == 'windows-latest' && 'ON' || 'OFF' }}
WITH_MTL: ${{ matrix.platform == 'macos-latest' && 'ON' || 'OFF' }}
WITH_VK: ${{ matrix.platform == 'ubuntu-24.04' && 'ON' || 'OFF' }}
steps:
- name: Checkout Repository
uses: actions/checkout@v4
with:
submodules: recursive
- name: Install Dependencies
if: matrix.platform == 'ubuntu-24.04'
run: |
sudo wget -O /etc/apt/trusted.gpg.d/lunarg-signing-key-pub.asc http://packages.lunarg.com/lunarg-signing-key-pub.asc
sudo wget -O /etc/apt/sources.list.d/lunarg-vulkan-noble.list http://packages.lunarg.com/vulkan/lunarg-vulkan-noble.list
sudo apt update
sudo apt-get install libx11-dev libxrandr-dev libglu1-mesa-dev freeglut3-dev mesa-common-dev vulkan-sdk vulkan-tools
- name: Configure CMake
run: >
cmake -S . -B ${{ github.workspace }}/${{ matrix.platform }}
-DLLGL_BUILD_STATIC_LIB=${{ matrix.lib == 'Static' && 'ON' || 'OFF' }}
-DLLGL_BUILD_RENDERER_OPENGL=${{ env.WITH_GL }}
-DLLGL_BUILD_RENDERER_DIRECT3D11=${{ env.WITH_D3D }}
-DLLGL_BUILD_RENDERER_DIRECT3D12=${{ env.WITH_D3D }}
-DLLGL_BUILD_RENDERER_METAL=${{ env.WITH_MTL }}
-DLLGL_BUILD_RENDERER_VULKAN=${{ env.WITH_VK }}
-DLLGL_BUILD_EXAMPLES=OFF
-DLLGL_BUILD_TESTS=ON
-DLLGL_BUILD_WRAPPER_C99=ON
-DLLGL_BUILD_WRAPPER_CSHARP=OFF
-DLLGL_UNITY_BUILD=ON
-DLLGL_VK_ENABLE_SPIRV_REFLECT=${{ env.WITH_VK }}
- name: Build
run: |
cmake --build ${{ github.workspace }}/${{ matrix.platform }} --config ${{ matrix.config }}