CONTRIBUTING: cmake >=3.25 requirement and the uv workaround

This commit is contained in:
alex 2026-09-08 05:13:31 -04:00
parent e96294d418
commit dd38117e79

View file

@ -12,3 +12,15 @@ provenance header. Everything else is written from understanding, in our own wor
Real-data tests read `$SOTS_DATA_DIR` (the owner's installed copy) and must skip cleanly when unset. Real-data tests read `$SOTS_DATA_DIR` (the owner's installed copy) and must skip cleanly when unset.
Run `tools/clean_room_check.sh` before committing. Run `tools/clean_room_check.sh` before committing.
## Build toolchain gotcha
The engine needs **CMake >= 3.25**. Debian/Ubuntu hosts ship 3.22, which fails with an
unhelpful preset error. Either build on CT111 (which has 3.31), or locally:
```sh
uv run --with cmake --with ninja cmake --preset host -DPython3_EXECUTABLE=/usr/bin/python3
```
Pass `-DPython3_EXECUTABLE=/usr/bin/python3` explicitly — without it the fixture step
captures uv's ephemeral interpreter, which disappears after the run.