From 616a0a4c3a9b083159c745b658f3686783016a86 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 25 Mar 2026 00:05:01 +0000 Subject: [PATCH 1/2] Initial plan From c8ccfd877cef575aeeb8f41286c70fb4fc2cffcc Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 25 Mar 2026 00:06:20 +0000 Subject: [PATCH 2/2] fix: update CMake minimum version for presets to 3.21 Co-authored-by: TexLeeV <96411791+TexLeeV@users.noreply.github.com> Agent-Logs-Url: https://github.com/TexLeeV/socratic-cpp/sessions/17e3de01-8145-4d2e-b037-90bec3f0b5ee --- CMakePresets.json | 2 +- docs/BUILDING.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/CMakePresets.json b/CMakePresets.json index dbce447..42c09a5 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -1,6 +1,6 @@ { "version": 3, - "cmakeMinimumRequired": {"major": 3, "minor": 14, "patch": 0}, + "cmakeMinimumRequired": {"major": 3, "minor": 21, "patch": 0}, "configurePresets": [ { "name": "gcc", diff --git a/docs/BUILDING.md b/docs/BUILDING.md index c1aabf0..fbfc9b5 100644 --- a/docs/BUILDING.md +++ b/docs/BUILDING.md @@ -6,7 +6,7 @@ Build setup, dependencies, and how to run tests. For project overview, see the [ ## Requirements -- **CMake** — **3.14 or newer** if you use **`cmake --preset`** ([CMakePresets.json](../CMakePresets.json)). The root [CMakeLists.txt](../CMakeLists.txt) declares `cmake_minimum_required(3.14)` for manual configures; presets are the documented workflow. +- **CMake** — **3.21 or newer** if you use **`cmake --preset`** ([CMakePresets.json](../CMakePresets.json)) — presets format v3 requires CMake 3.21. The root [CMakeLists.txt](../CMakeLists.txt) declares `cmake_minimum_required(3.14)` for manual configures; presets are the documented workflow. - **Compiler** — **C++20** required (use a C++20-capable GCC or Clang). - **GoogleTest & GoogleMock** — Install development packages for your OS (below). The build also uses **FetchContent** to obtain GoogleTest when you configure with CMake. - **Threads** — For concurrency tests (and deadlock tests when enabled). @@ -83,7 +83,7 @@ brew install googletest cmake ninja ## Tools and environment - **Compiler:** C++20-capable **GCC** or **Clang** -- **Build:** CMake **3.14+** for presets; Ninja recommended (generator in presets) +- **Build:** CMake **3.21+** for presets (format v3); Ninja recommended (generator in presets) - **Tests:** GoogleTest & GoogleMock - **IDE:** Cursor (optional Socratic rules in `.cursor/rules/`)