Skip to content

Latest commit

 

History

History
10 lines (7 loc) · 1.83 KB

AGENTS.md

File metadata and controls

10 lines (7 loc) · 1.83 KB

Dependencies

  • The development version of future-config (see README, section "Development version of future-config") must be installed from the existing Future-Config repository on the host (Workspaces/Fido/Future-Config, a sibling of the AIC workspace directory), so that host changes are propagated. Never clone the Future-Config repository to install it.
  • vcpkg does not detect changes in the Future-Config repository. To pick up host changes, run vcpkg remove future-config and install it again with binary caching disabled (--binarysource=clear).

Generated configuration headers

  • src/config/DARP-benchmark_config.h and src/config/config_paths.h are generated by setup_fconfig at CMake configure time, intentionally into the source tree, so that code inspection tools see the configuration classes. They are regenerated on every configure; the committed copies only document the output of a standalone configure of this project. Never propose generating them into the build directory or untracking them.
  • Downstream projects (e.g. darp_solvers) normally use a FetchContent copy of this repository, which is never built on its own. In the sandbox, the *-config-sandbox presets of darp_solvers point FETCHCONTENT_SOURCE_DIR_DARP-BENCHMARK at this live checkout instead, so a configure of darp_solvers rewrites the two headers here with the downstream sections (e.g. vga, halns, vga_chaining).
  • To keep that rewrite out of git status and out of accidental commits, both files are marked git update-index --skip-worktree in this clone (git ls-files -v src/config shows them with S). When the configuration schema of this project changes and the committed copies should be refreshed, lift the flag (--no-skip-worktree), run a standalone configure of this project, and commit; forgetting to refresh them is harmless.