[devel] Q: rpm-macros-*, buildreq и обработка сборочных зависимостей в sandman и hasher

Alexey I. Froloff =?iso-8859-1?q?sir=5Fraorn_=CE=C1_immo=2Eru?=
Чт Сен 25 09:46:26 MSD 2003


Помнится, начали на linuxfest обсуждать этот вопрос, но так ни к
чему и не пришли...

Что делать с пакетами, которые провайдят макросы для rpm
(/etc/rpm/macros.d/*)? Осбенно если кроме этих макросов больше
ничего нет (как например vim и xscreensaver)?

Вариантов три:

1. Файл с макросами идёт в любом случае в %name-devel
2. Файл с макросами идёт в любом случае в rpm-build-%name (или
rpm-macros-%name)
3. Файл с макросами идёт либо в %name-devel, либо в
rpm-build-%name - зависит от того, есть ли соответствующий -devel
пакет.

Лично мне нравится второй вариант, почему - об'ясню ниже.

Далее - сборочные зависимости.

На данный момент нет способа автоматически определить какой файл
из /etc/rpm/macros.d необходим для сборки пакета. rpm парсит все
файлы из этого каталога и эти файлы игнорируются buildreq'ом.

Некоторе время назад я патчил rpm на тему выдачи списка
используемых в спеке макросов, но этот способ мне очень не
нравится. В rpm есть директива %include, которая "подключает"
произвольный файл и эта директива активно используется, например,
в PLD. На linuxfest ldv сказал, что может пропатчить rpm чтобы он
по %include подключал файл только из определённого каталога (и
даже принимал бы имя файла в угловых скобках ;-), это решает
целый ряд проблем:

1. Не надо будет игнорировать /etc/rpm/macros.d/*
2. buildreq будет автоматически проставлять зависимость на
соответствующий rpm-build-*
3. В sandman и hasher директива %include <xxx> будет
автоматически означать сборочную зависимость от rpm-build-xxx

(эти три пункта некоторым образом дублируют друг друга ;-)

Возможные проблемы:

1. Нужно будет исправить спеки всех пакетов, использующих макросы
из /etc/rpm/macros.d/* - это perl-*, это kernel-*, это ruby-*...
2. Не знаю как в hasher, но в sandman надо делать дополнительную
обработку спекфайла - rpm -bE будет выдавать ошибку при %include
несуществующего файла...
3. Возможно я ещё что-то не учёл...

Предложения, комментарии?

-- 
Regards, Sir Raorn.
-------------------
Чтобы стать кондитером, необязательно начинать с помойки.
		-- mike in community@
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20030925/ccbfc470/attachment-0001.bin>


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