Профили сборки
Профили позволяют переопределять любые поля секции [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>].