Простой GenSpec

Внимание: на этой странице есть устаревшая информация!

Общая цель: сделать создание спека для публикатора автоматическим Этот спек не должен ничего ниоткуда наследовать, просто позволять hasher-у собирать RPM с отключённым sisyphus-check.

Содержимое поля docinfo обозначаю вот так: !Fieldname!

Summary:, %description, Changelog и Url

Не нужны, так как вся информация берётся из docinfo. Заполнить чем-нибудь

Rootdoc, или файлы, для которых нужно запускать сборочную процедуру

Поле !Rootdoc! указывает стартовые файлы, которые надо передать сборочному скрипту. Если !Rootdoc! нет, используются умолчания:

Сгенерированное или настоящее !Rootdoc! подсовывается макросу %docs_build в виде %docs_build !Format! !Rootdoc!

Обсуждение При отсутствии поля !Rottdoc! получается, что генератору спека всё-таки придётся лазить в тарболл, в противном случае он обходится только docinfo. Ну не делать же Rootdoc обязательным?

Выпуски

Поскольку в коротком цикле все равно устанавливаются все модули, то зависимости на входящие в выпуск модули в спеке выпуска не нужны.

Определение выпусков:

Если !Format! = issue,

Сгенерировать спек выпуска: см. docs-issue-template.spec, откуда следует исключить %docs_issue_requires в Requires нужно поместить все пакеты, для модулей, перечисленных в спецификации выпуска.

За основу можно взять /usr/share/docs-build/docs_genspec/docs-module-template.spec из rpm-build-docs и spec любого пакета документации.

BuildRequires (вторая очередь)

Заполнять поле BuildRequires: по-разному, в зависимости от исходного формата.

Например, rpm-build-docs-docbook rpm-build-docs-m-k rpm-build-docs-ooffice etc

Нужно порезать сборочную среду rpm-build-docs на отдельные компоненты по каждому исходному формату (или группе родственных). Обоснование: 1) минимизация зависимостей: если сломалась сборка одного формата чтобы продолжала работать сборка других 2) минимизация сборочной среды в каждом отдельном случае (а то в ней будет и ooffice и xslt и m-k...) Затратно для сборочного сервера.

Для начала можно сделать виртуальные пакеты, предоставляемые rpm-build-docs, а потом порезать по необходимости.

ALTLinuxEdu: Docs/TZ/GenSpec (last edited 2007-06-01 12:46:15 by KirillMaslinsky)