Files
dcr/docs/dependencies-and-build/local-dependencies.md
Dexoron 0e93a1aa0f Added:
- `build.steps` for pre-build generators (e.g., `moc`/`uic`/`rcc`)
- `build.pkg_config` for `pkg-config`-driven cflags/ldflags resolution
- `[toolchain]` support for `uic`, `moc`, `rcc`
- Step command variables (`{uic}`, `{moc}`, `{rcc}`, `{cflags}`, `{stem}`, `{in}`, `{out}`)
- `{profile}` placeholder support for dependency paths
2026-03-16 20:50:32 +08:00

805 B

Local dependencies

Resolution flow during build

For each dependency in [dependencies], DCR:

  1. Resolves path (absolute or project-relative).
  2. Resolves include dirs (include or default include).
  3. Resolves lib dirs (lib or defaults lib, lib64).
  4. Resolves link libs (libs or dependency name).
  5. Synchronizes dependency files to target/<profile>/deps/<dep-name>/.
  6. Adds include/lib/link options to compile/link commands.

Profile placeholders

path, include, and lib entries may use {profile} which expands to the active profile (debug or release).

Failure cases

  • Dependency path is missing or not a directory.
  • No valid include/lib directories were found.
  • Any configured include/lib path does not exist.
  • Invalid field types in dependency config.