Gear/specsubst

Материал из ALT Linux Wiki

Цитата:

 http://lists.altlinux.org/pipermail/devel/2012-December/196170.html

На прошлой неделе, по мотивам идеи Саши Бокового (см. https://bugzilla.altlinux.org/show_bug.cgi?id=20912) в gear была реализована возможность управляемым и воспроизводимым образом экспортировать различные варианты исходного кода из одного и того же коммита.

Этот эффект достигается путем подстановки в спек-файле @переменных@, заданных в новой директиве "specsubst:", в соответствии с определением переменных в тэге, из которого производится экспорт исходного кода.

При использовании specsubst коммит фактически превращается в шаблон, не предназначенный для непосредственной сборки, но из которого с помощью тэга можно получить реализацию шаблона, которую уже можно собирать.

Новая функциональность активируется только при условии использования specsubst, что гарантирует полную обратную совместимость.

При использовании specsubst команда gear --commit создает не только временный commit object, но и временный tag object, используя для определения подстановочных переменных конфигурационные значения gear.specsubst.*

Синтаксис новой директивы и формат описания подстановочных переменных в тэге приведен в gear-rules(5).

Первыми пользователями specsubst, судя по всему, станут шаблоны модулей ядра.