Skip to content

Fix CI: CMake 4 on Windows (benchmark minimum) and the EAThread C++20 build on Linux - #8

Merged
jmgilbert2 merged 2 commits into
masterfrom
ci-fixes
Oct 21, 2026
Merged

jmgilbert2 merged 2 commits into
masterfrom
ci-fixes

Conversation

@jmgilbert2

Copy link
Copy Markdown
Owner

Fixes the two failures of the CI (c-cpp.yml) on master since PR #6.

  • All Windows jobs: windows-latest has CMake 4, which rejects benchmark/CMakeLists.txt's cmake_minimum_required(VERSION 3.1). The benchmark and test projects now require 3.11, like the root. That also removes the CMake 3.31+ deprecation warning test/CMakeLists.txt (3.5) gave.
  • All Linux jobs (GCC 14, clang 18): EAThread didn't compile with C++20's char8_t (source/unix/eathread_unix.cpp). The EAThread test submodule now pins its latest no-tests head (56f3b93), which brings EAThread PR Update the EATest test submodule to the latest no-tests head #5.

Verified beforehand in a scratch copy of the CI matrix (branch ci-probe):

  • GCC 14, clang 18 and MSVC (CMake 4), Debug and Release.
  • Everything builds, and the tests and benchmarks pass.

This PR's own CI run should be green.

The other test packages' CMake deprecation warnings go away with the cmake-3.11 PRs in those repos and the pin round that follows.

🤖 Generated with Claude Code

jmgilbert2 and others added 2 commits October 21, 2026 00:50
CMake 4 removed compatibility with versions below 3.5, so configuring with
EASTL_BUILD_BENCHMARK=ON failed on benchmark/CMakeLists.txt (VERSION 3.1),
which broke every Windows job of the CI (windows-latest has CMake 4).
CMake 3.31 and later also warn about versions below 3.10, which
test/CMakeLists.txt (VERSION 3.5) triggered. Both now use the root's 3.11.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Brings EAThread PR #5, which fixes the Unix build with GCC and clang in
C++20; every Linux job of the CI failed on it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@jmgilbert2
jmgilbert2 merged commit d26243d into master Oct 21, 2026
28 checks passed
jmgilbert2 added a commit that referenced this pull request Oct 21, 2026
Brings PR #6 (GCC 10-15 warning cleanup) and PR #7 (uninitialized_fill
copy-constructs unless the type is trivially copyable, upstream electronicarts#485).
PR #8 only changed the benchmark and test projects and the test
submodule pins, which don't apply to this branch.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant