[docs] Re: make: OTHER_FILES

Vitaly Ostanin vyt на vzljot.ru
Вт Ноя 11 15:37:30 MSK 2003


On Tue, 11 Nov 2003 14:54:32 +0300
"Oleg A. Paraschenko" <olpa на xmlhack.ru> wrote:

>   Привет!
> 
> On Tue, 11 Nov 2003 11:57:17 +0200
> Alexander Bokovoy <a.bokovoy на sam-solutions.net> wrote:
> 
> ...
> > > > 
> > > > В дистрибутив исходников, IMHO, надо. Чтобы было, чем
> > > > собирать :)
> > > 
> > >   Под "дистрибутивом" ("make dist") в make-файлах
> > >   подразумевалось
> > > то, что получилось в результате генерации, лежит в
> > > tar.bz2-архиве, а затем этим архивом передаётся куда-то
> > > дальше.
> > Вот передается дальше оно в src.rpm, из которого собирается
> > документация в noarch.rpm. А как мы соберем эту документацию,
> > если не будет Makefiles?
> 
>   Ага, теперь понятно, куда это попадает. Всё забывал уточнить.
>   Спасибо.
> 
>   Теперь всем такие вопросы:
> 
> * Я правильно понимаю, что архив должен быть таким, что если
> раскрыть его и сказать "make", то всё должно успешно собраться?

Не обязательно. Релизный архив с исходными текстами должен
включать всё нужно для их сборки, или все зависимости, нужные для
сборки, а также описание процесса сборки. Это необязательно
просто make.

> * А зачем пересобирать, если в архиве есть готовые html и pdf?

См. моё письмо в этом же треде. Архивов должно быть несколько, в
том числе архив только с исходными документами.

> * А почему бы не собирать src.rpm и noarch.rpm сразу, без
> дополнительного сохранения в архив?

rpm обычно собираются из архивов, иногда с дополнениями. Вообще
тарболлы - обычная форма распространения программ/документов, rpm
- это их дальнейшая упаковка.

> * Я почти уверен, что на первый вопрос ответ "да". Поэтому я
> взял предыдущую версию make-файлов, сделал tgz из
> DOCS_ROOT/admin и попробовал сделать эксперимент:
> 
> 
> $ tar ztf admin.tgz
> Makefile
> ../tmp/doc-template-old/Makefile.check
> ../tmp/doc-template-old/Makefile.clean
> ...
> admin.xml
> $ tar zxf admin.tgz
> ...
> tar: ../tmp/doc-template-old/Makefile.dist: Member name
> contains `..'...
> tar: Выход, отложенный по результатам предыдущих ошибок
> 
> Почему возникла ошибка -- понятно. А как вы боретесь с ней в
> скрипте для rpm?

Пока никак, когда дойдёт до rpm - исправлением.

> * Архив содержит admin.xml, но не содержит остальных файлов,
> которые он включает в себя посредством XInclude. Что с этим
> делать?

Архив должен либо включать остальные файлы, либо иметь ссылку на
них в описании. При этом .src.rpm должен иметь зависимости на
пакеты с этими файлами.

Определить список сущностей, включаемых в итоговых документ,
можно в последних версиях libxml2.

> * А уже есть опыт сборки rpm-пакетов с документацией через
> tgz-архив, или это пока только планы?

В этом проекте - нет, другие проекты собирают именно так (php,
samba, AFAIK). Опыт здесь особо не нужен, так как нет критичных
сложностей.

> * Как rpm-скрипт запускает make: просто "make" или "make
> html-dir" или ещё как? Я хочу это знать чтобы разобраться с
> целью по умолчанию.

В разделе %build спека пишут команды сборки, это даже не
обязательно make, так что цель по умолчанию не так важна. Что в
спеке напишут, то и выполнится - прибитого гвоздями скрипта нет.

> * В предыдущей версии архив оканчивался на tgz, сейчас -- на
> tar.bz2. Надо ли вернуть обратно?

Не стоит.

> * Предлагаю переименовать переменную OTHER_FILES в
> SRCDIST_FILES, чтобы её назначение было более понятно.
> Аргументы за/против?

За, с таким же аргументом :)

<skipped/>

-- 
Regards, Vyt
mailto:  vyt на vzljot.ru
JID:     vyt на vzljot.ru
----------- следущая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : отсутствует
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: отсутствует
Url     : /pipermail/docs/attachments/20031111/5883bb43/attachment.bin


Подробная информация о списке рассылки docs