docs: update README to reflect CMake version and clarify build steps#31
docs: update README to reflect CMake version and clarify build steps#31
Conversation
There was a problem hiding this comment.
Pull request overview
This PR updates the README.md to align with current build tooling and practices, clarifying build requirements, test configuration, and development workflows. The changes improve documentation accuracy by updating CMake version requirements from 3.16 to 3.20, correcting the CMake option name from ENABLE_TESTS to ENABLE_UNIT_TESTS, and better documenting pre-commit hooks, CI workflows, and available scripts.
Key Changes:
- Updated minimum CMake version requirement from 3.16 to 3.20 to match actual CMakeLists.txt configuration
- Corrected CMake build option from ENABLE_TESTS to ENABLE_UNIT_TESTS throughout documentation
- Enhanced documentation for pre-commit hooks, CI workflow, and development scripts including coverage.sh
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| cmake -S . -B build # -DENABLE_UNIT_TESTS=OFF to skip tests | ||
| cmake --build build -j$(nproc) | ||
| ./build/main_exec | ||
| ./build/bin/main_exec |
There was a problem hiding this comment.
The executable path is incorrect. Without CMAKE_RUNTIME_OUTPUT_DIRECTORY being set in CMakeLists.txt, the executable is built directly in the build directory, not in build/bin/. The path should be ./build/main_exec (as shown in docs/rpath-guide.md lines 155, 172, 178). The bin/ directory is only used for install destinations (CMakeLists.txt line 80), not build output.
| ./build/bin/main_exec | |
| ./build/main_exec |
Description
This pull request resolves #30 and updates the
README.mdto clarify and modernize the documentation for building, testing, and maintaining the C++ project. The most important changes include updating build requirements, improving instructions for running and disabling unit tests, clarifying pre-commit hook usage, and enhancing the CI documentation.Build and Test Instructions:
ENABLE_UNIT_TESTSinstead ofENABLE_TESTS, and clarified the output path for the main executable (./build/bin/main_exec).Development and Maintenance Scripts:
coverage.shand clarified the usage offormat.shfor CI checks in the scripts overview table.Code Quality and Pre-commit Hooks:
pre-commit, specifying that checks now run on push (not commit), and clarified their function and automation for VS Code DevContainer users.Continuous Integration: