Перейти к основному содержимому

Профили сборки

Профили позволяют переопределять любые поля секции [build] для конкретного режима сборки.

Конфигурация

[build]
language = "c"
standard = "c17"
cflags = ["-Wall"]

[build.debug]
cflags = ["-O0", "-g"]

[build.release]
cflags = ["-O3", "-flto"]

Правила

  • Поля из [build.<profile>] мержатся поверх [build]
  • Массивы (cflags, ldflags, ...) заменяются полностью, а не дополняются
  • Если поле не указано в профиле — используется значение из [build]

Встроенные профили

ПрофильDefault cflags
debug-O0 -g
release-O3 -DNDEBUG

Кастомные профили

[build.lto]
cflags = ["-O3", "-flto"]
ldflags = ["-flto"]
dcr build --profile lto

Target-specific профили

[build.linux]
cflags = ["-DLINUX"]

[build.windows.debug]
cflags = ["-DWIN32", "-O0", "-g"]

Формат: [build.<target>.<profile>] или [build.<target>].