From 8122b809bb6705024b8e2b8a6376b390799a0133 Mon Sep 17 00:00:00 2001 From: Danyal Ahmed <58849388+danyalahmed1995@users.noreply.github.com> Date: Tue, 2 Jun 2026 07:19:06 +0500 Subject: [PATCH 1/4] Add 32-bit Linux CI coverage --- .github/workflows/build.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 0abec635f..4ff942db3 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -31,6 +31,7 @@ jobs: { os: ubuntu-24.04, cxx: g++-12, c: gcc-12, arch: x64, gen: Ninja, cxx_max: 23 }, { os: ubuntu-24.04, cxx: g++-13, c: gcc-13, arch: x64, gen: Ninja, cxx_max: 23 }, { os: ubuntu-24.04, cxx: g++-14, c: gcc-14, arch: x64, gen: Ninja, cxx_max: 23 }, + { os: ubuntu-24.04, cxx: g++-14, c: gcc-14, arch: x86, gen: Ninja, cxx_max: 23, c_flags: '-m32', cxx_flags: '-m32', linker_flags: '-m32', ubuntu_packages: 'gcc-14-multilib g++-14-multilib', skip_samples: true }, { os: ubuntu-24.04, cxx: clang++-16, c: clang-16, arch: x64, gen: Ninja, cxx_max: 20 }, { os: ubuntu-24.04, cxx: clang++-17, c: clang-17, arch: x64, gen: Ninja, cxx_max: 20 }, { os: ubuntu-24.04, cxx: clang++-18, c: clang-18, arch: x64, gen: Ninja, cxx_max: 23 }, @@ -54,6 +55,7 @@ jobs: VAR_CMAKE_FLAGS: | ${{ matrix.env.c && format('-D CMAKE_C_COMPILER={0}', matrix.env.c) }} \ ${{ matrix.env.cxx && format('-D CMAKE_CXX_COMPILER={0}', matrix.env.cxx) }} \ + ${{ matrix.env.c_flags && format('-D CMAKE_C_FLAGS''={0}''', matrix.env.c_flags) }} \ ${{ matrix.env.cxx_flags && format('-D CMAKE_CXX_FLAGS''={0}''', matrix.env.cxx_flags) }} \ ${{ matrix.env.linker_flags && format('-D CMAKE_EXE_LINKER_FLAGS=''{0}''', matrix.env.linker_flags) }} \ @@ -71,7 +73,9 @@ jobs: arch: ${{matrix.env.arch}} - name: Setup Ubuntu if: contains(matrix.env.os, 'ubuntu') - run: sudo apt update && sudo apt install libgl-dev libxcursor-dev libxi-dev libxinerama-dev libxrandr-dev + run: | + sudo apt update + sudo apt install -y libgl-dev libxcursor-dev libxi-dev libxinerama-dev libxrandr-dev ${{ matrix.env.ubuntu_packages || '' }} - name: Setup MacOS if: contains(matrix.env.os, 'macos') run: brew install molten-vk @@ -112,7 +116,7 @@ jobs: # Build samples using highest available C++ standard. - name: Build Samples with C++${{matrix.env.cxx_max}} - if: (!matrix.env.modules) # Exclude module runners. + if: (!matrix.env.modules) && (!matrix.env.skip_samples) # Exclude module and cross-compilation runners. run: | for BUILD_TYPE in Debug Release; do cmake -B build -G '${{matrix.env.gen}}' --fresh --preset samples \ From 8a7d6da8b8b2e352870e2b496d9b6cb95bec959d Mon Sep 17 00:00:00 2001 From: Danyal Ahmed <58849388+danyalahmed1995@users.noreply.github.com> Date: Tue, 2 Jun 2026 22:56:16 +0500 Subject: [PATCH 2/4] Update .github/workflows/build.yml Co-authored-by: Jan Kuhlmann <33833587+M2-TE@users.noreply.github.com> --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4ff942db3..7a7eaf83c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -31,7 +31,7 @@ jobs: { os: ubuntu-24.04, cxx: g++-12, c: gcc-12, arch: x64, gen: Ninja, cxx_max: 23 }, { os: ubuntu-24.04, cxx: g++-13, c: gcc-13, arch: x64, gen: Ninja, cxx_max: 23 }, { os: ubuntu-24.04, cxx: g++-14, c: gcc-14, arch: x64, gen: Ninja, cxx_max: 23 }, - { os: ubuntu-24.04, cxx: g++-14, c: gcc-14, arch: x86, gen: Ninja, cxx_max: 23, c_flags: '-m32', cxx_flags: '-m32', linker_flags: '-m32', ubuntu_packages: 'gcc-14-multilib g++-14-multilib', skip_samples: true }, + { os: ubuntu-24.04, cxx: g++-14, c: gcc-14, arch: x86, gen: Ninja, cxx_max: 23, c_flags: '-m32', cxx_flags: '-m32', linker_flags: '-m32' }, { os: ubuntu-24.04, cxx: clang++-16, c: clang-16, arch: x64, gen: Ninja, cxx_max: 20 }, { os: ubuntu-24.04, cxx: clang++-17, c: clang-17, arch: x64, gen: Ninja, cxx_max: 20 }, { os: ubuntu-24.04, cxx: clang++-18, c: clang-18, arch: x64, gen: Ninja, cxx_max: 23 }, From e8243a1656b3c4d73796130105c493cef1a2f79a Mon Sep 17 00:00:00 2001 From: Danyal Ahmed <58849388+danyalahmed1995@users.noreply.github.com> Date: Tue, 2 Jun 2026 22:58:51 +0500 Subject: [PATCH 3/4] Update .github/workflows/build.yml Co-authored-by: Jan Kuhlmann <33833587+M2-TE@users.noreply.github.com> --- .github/workflows/build.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7a7eaf83c..be5227f90 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -55,7 +55,7 @@ jobs: VAR_CMAKE_FLAGS: | ${{ matrix.env.c && format('-D CMAKE_C_COMPILER={0}', matrix.env.c) }} \ ${{ matrix.env.cxx && format('-D CMAKE_CXX_COMPILER={0}', matrix.env.cxx) }} \ - ${{ matrix.env.c_flags && format('-D CMAKE_C_FLAGS''={0}''', matrix.env.c_flags) }} \ + ${{ matrix.env.c_flags && format('-D CMAKE_C_FLAGS={0}', matrix.env.c_flags) }} \ ${{ matrix.env.cxx_flags && format('-D CMAKE_CXX_FLAGS''={0}''', matrix.env.cxx_flags) }} \ ${{ matrix.env.linker_flags && format('-D CMAKE_EXE_LINKER_FLAGS=''{0}''', matrix.env.linker_flags) }} \ @@ -116,7 +116,7 @@ jobs: # Build samples using highest available C++ standard. - name: Build Samples with C++${{matrix.env.cxx_max}} - if: (!matrix.env.modules) && (!matrix.env.skip_samples) # Exclude module and cross-compilation runners. + if: (!matrix.env.modules) && (!contains(matrix.env.arch, 'x86')) # Exclude module and cross-compilation runners. run: | for BUILD_TYPE in Debug Release; do cmake -B build -G '${{matrix.env.gen}}' --fresh --preset samples \ From 741941aed88911975cace62856203466c025ccf7 Mon Sep 17 00:00:00 2001 From: Danyal Ahmed <58849388+danyalahmed1995@users.noreply.github.com> Date: Tue, 9 Jun 2026 02:18:58 +0500 Subject: [PATCH 4/4] Restore dynamic multilib package install --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index be5227f90..18526f6b0 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -75,7 +75,7 @@ jobs: if: contains(matrix.env.os, 'ubuntu') run: | sudo apt update - sudo apt install -y libgl-dev libxcursor-dev libxi-dev libxinerama-dev libxrandr-dev ${{ matrix.env.ubuntu_packages || '' }} + sudo apt install -y libgl-dev libxcursor-dev libxi-dev libxinerama-dev libxrandr-dev ${{ contains(matrix.env.arch, 'x86') && format('{0}-multilib {1}-multilib', matrix.env.c, matrix.env.cxx) || '' }} - name: Setup MacOS if: contains(matrix.env.os, 'macos') run: brew install molten-vk