// Наследование общей конфигурации через `include`. Подключает соседний // common.jdg (тулчейны + build_defaults + глобальные настройки), а затем // задаёт только специфичные для этой задачи build-варианты и тесты. // // Пути в include относительны самому этому файлу (не CWD, не корню репо). // Абсолютные пути тоже работают. Циклические включения детектятся парсером. // // Локальные директивы поверх include могут переопределять: // - скаляры в build_defaults (через последующий build_defaults-блок) // - timeout / memory_limit / binary / sources / normalize_crlf / trim_trailing_ws // Но не могут переопределять: // - toolchains с тем же именем (ошибка «duplicate toolchain») // - build с тем же именем // - group с тем же именем include "common.jdg" build "release" { profile = release } build "debug" { profile = debug warnings = pedantic } build "sanitized" { profile = sanitized sanitize = "address" "undefined" platforms = "linux" compilers = "gcc" "clang" } group("basic") { weight = 1.0 test("smoke") { stdin = "1\n42\n" stdout = "42\n" } }