Gear/specsubst
Материал из ALT Linux Wiki
Real (обсуждение | вклад) (fix Category) |
м (minor wikification) |
||
Строка 1: | Строка 1: | ||
- | + | В середине декабря 2012 по мотивам [https://bugzilla.altlinux.org/show_bug.cgi?id=20912 идеи Саши Бокового] | |
- | + | в {{pkg|gear}} была реализована возможность управляемым и воспроизводимым образом | |
- | + | ||
- | + | ||
- | https://bugzilla.altlinux.org/show_bug.cgi?id=20912 | + | |
- | реализована возможность управляемым и воспроизводимым образом | + | |
экспортировать различные варианты исходного кода из одного и того же | экспортировать различные варианты исходного кода из одного и того же | ||
коммита. | коммита. | ||
- | Этот эффект достигается путем подстановки в спек-файле @переменных@, | + | Этот эффект достигается путем подстановки в спек-файле <tt>@переменных@</tt>, |
- | заданных в новой директиве | + | заданных в новой директиве <tt>specsubst:</tt>, в соответствии с определением |
переменных в тэге, из которого производится экспорт исходного кода. | переменных в тэге, из которого производится экспорт исходного кода. | ||
- | При использовании specsubst коммит фактически превращается в шаблон, не | + | При использовании <tt>specsubst</tt> коммит фактически превращается в шаблон, не |
предназначенный для непосредственной сборки, но из которого с помощью тэга | предназначенный для непосредственной сборки, но из которого с помощью тэга | ||
можно получить реализацию шаблона, которую уже можно собирать. | можно получить реализацию шаблона, которую уже можно собирать. | ||
Новая функциональность активируется только при условии использования | Новая функциональность активируется только при условии использования | ||
- | specsubst, что гарантирует полную обратную совместимость. | + | <tt>specsubst</tt>, что гарантирует полную обратную совместимость. |
- | При использовании specsubst команда gear --commit создает не только | + | При использовании <tt>specsubst</tt> команда {{cmd|gear --commit}} создает не только |
временный commit object, но и временный tag object, используя для | временный commit object, но и временный tag object, используя для | ||
определения подстановочных переменных конфигурационные значения | определения подстановочных переменных конфигурационные значения | ||
- | gear.specsubst.* | + | <tt>gear.specsubst.*</tt> |
Синтаксис новой директивы и формат описания подстановочных переменных в | Синтаксис новой директивы и формат описания подстановочных переменных в | ||
- | тэге приведен в gear-rules(5). | + | тэге приведен в <tt>gear-rules(5)</tt>. |
- | Первыми пользователями specsubst, судя по всему, станут шаблоны модулей | + | Первыми пользователями <tt>specsubst</tt>, судя по всему, станут шаблоны модулей ядра |
- | ядра. | + | (см. тж. [http://www.altlinux.org/index.php?title=Git.alt/Справочник&diff=0&oldid=22016 task add kmodules]). |
+ | == Ссылки == | ||
+ | * [http://lists.altlinux.org/pipermail/devel/2012-December/196170.html ldv@ in devel@] | ||
* [[Справочник по gear]] | * [[Справочник по gear]] | ||
* [[Руководство по gear]] | * [[Руководство по gear]] | ||
{{Category navigation|title=Gear/specsubst|category=Gear|sortkey=*}} | {{Category navigation|title=Gear/specsubst|category=Gear|sortkey=*}} |
Версия 08:07, 18 декабря 2012
В середине декабря 2012 по мотивам идеи Саши Бокового в gear была реализована возможность управляемым и воспроизводимым образом экспортировать различные варианты исходного кода из одного и того же коммита.
Этот эффект достигается путем подстановки в спек-файле @переменных@, заданных в новой директиве specsubst:, в соответствии с определением переменных в тэге, из которого производится экспорт исходного кода.
При использовании specsubst коммит фактически превращается в шаблон, не предназначенный для непосредственной сборки, но из которого с помощью тэга можно получить реализацию шаблона, которую уже можно собирать.
Новая функциональность активируется только при условии использования specsubst, что гарантирует полную обратную совместимость.
При использовании specsubst команда gear --commit создает не только временный commit object, но и временный tag object, используя для определения подстановочных переменных конфигурационные значения gear.specsubst.*
Синтаксис новой директивы и формат описания подстановочных переменных в тэге приведен в gear-rules(5).
Первыми пользователями specsubst, судя по всему, станут шаблоны модулей ядра (см. тж. task add kmodules).