Сборка gtk-doc дает зависимость на perl(gtkdoc-common.pl). gtkdoc-common.pl содержится в том же пакете и лежит в /usr/share/gtk-doc/data/ Expected Results: Зависимость на скрипт вне путей поиска модулей perl не должна возникать.
Тут всё ещё хуже. Дело в том, что perl-овые скрипты делают: unshift @INC, '/usr/share/gtk-doc/data'; require "gtkdoc-common.pl" Сам же gtkdoc-common.pl не является пакетом или чем бы то ни было ещё. Это просто файл с функциями. Не провайдить же все перловые файлы, которые не являются пакетами или чем-то, что ищется perl.prov'ом. Просто в этом случае, gtk-doc начнёт провайдить: perl(gtkdoc-common.pl) perl(gtkdoc-mktmpl) ... Можно добавить доп. логику и отрезать /usr/bin и /usr/lib/perl5. Но это жуткий костыль. Проще зафиксить gtk-doc, ибо он кривой. Если глянуть в соседние дистры, то там есть хаки, которые пытаются вырезать эту зависимость. Зафиксить сам gtk-doc - это час работы. Нужно всего-лишь сделать из gtkdoc-common.pl пакет и поправить скрипты. Честно говоря - это проще.
(In reply to comment #1) > Можно добавить доп. логику и отрезать /usr/bin и /usr/lib/perl5. Но это жуткий > костыль. Проще зафиксить gtk-doc, ибо он кривой. Если глянуть в соседние дистры, > то там есть хаки, которые пытаются вырезать эту зависимость. Зафиксить сам > gtk-doc - это час работы. Нужно всего-лишь сделать из gtkdoc-common.pl пакет и > поправить скрипты. Честно говоря - это проще. На каждый чих не накрестишься. Насколько я помню, в предыдущей инкарнации perl.req в зависимости записывались только те файлы, которые находились в @INC по умолчанию. В этом оригинальный смысл зависимости perl(blahblah.pm): blahblah.pm должен включаться без модификации @INC. Вдобавок, это избавляло от зависимостей на модули, заведомо отсутствующие в дистрибутиве или на платформе (поскольку еще не было разработано надежного средства выявить условный use/require).
Это ещё актуально?
Это ещё актуально. Я не знаю, что с этим делать, и пока склонен оставить всё как есть. Зависимость на perl(gtkdoc-common.pl) генерируется правильно. Сейчас не существует хорошего способа узнать, что gtk-doc.pl на самом деле лежит в каком-то левом месте. Чтобы для gtkdoc-common.pl добавлялся также и provides, можно использовать _perl_lib_path.
Hopefully fixed in rpm-build-perl-0.6.5. Please try to remove "Provides: perl(gtkdoc-common.pl)".