This project uses Conan 2 for dependency management and CMake as the build system.
All paths below are relative to <fix-root> (the repository root).
| Directory / file | Purpose |
|---|---|
build/ |
CMake binary dir (gitignored) |
build/generators/ |
Conan-generated CMake integration files |
build/generators/conan_toolchain.cmake |
Toolchain file passed to CMake |
CMakeUserPresets.json |
Generated by Conan; consumed by VS / cmake (gitignored) |
build/generators/conanbuild.bat / conanrun.bat |
Generated by Conan (gitignored via build/) |
- CMake 3.15 or higher
- Conan 2.x (
pip install conan) - C++23 compatible compiler (MSVC 19.3+ / Clang 16+ / GCC 13+)
Run from <fix-root>:
conan install . --output-folder=. --build=missing -s build_type=Debug -s compiler.cppstd=23For a Release build, replace -s build_type=Debug with -s build_type=Release.
This writes all integration files into build/generators/ and regenerates CMakeUserPresets.json.
Re-run this command whenever conanfile.txt changes.
Conan generates a conan-default preset. Use it directly:
cmake --preset conan-defaultcmake -B build -S . -DCMAKE_TOOLCHAIN_FILE=build/generators/conan_toolchain.cmakecmake --build build --config DebugVisual Studio reads CMakeUserPresets.json automatically. After running Step 1:
- Open the configuration dropdown and select conan-default.
- Visual Studio will configure CMake using
build/as the binary dir. - Build as normal.
ctest --test-dir build --output-on-failure -C Debug -LE wipRun from the behave/ subdirectory:
cd behave
behave -t wip --no-capture --no-logcaptureThe behave acceptance tests are also registered as individual CTest targets (behave_stable_tests, behave_wip_tests) and can be addressed by name via ctest -R <target-name>.