[devel] Упаковка приложения, написанного на Perl

Alexey Tourbin =?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Вт Авг 7 01:21:33 MSD 2007


On Thu, Jun 28, 2007 at 03:21:28AM +0700, Slava Semushin wrote:
> Здравствуйте!
> 
> Во время сборки swatch вижу следующее сообщение:
> 
> warning: Installed (but unpackaged) file(s) found:
>     /.perl.req
> 
> При этом сборка установка программы сводится к следующему:
> 
> %build
> %perl_vendor_build
> 
> %install
> %perl_vendor_install
> 
> Кто-то из этих макросов создаёт этот файл и не удаляет его.
> 
> Вопросов несколько:
> - Что это за файл и зачем он нужен?
> - Что с ним делать: удалять, включать в пакет, игнорировать?

Это левый файл, на которые не следует обращать внимания.

Он нужен примерно вот зачем.  В Makefile.PL иногда указаны
более точные версии модулей.  Это информацию нужно как-то "протащить"
до стадии find-requires.  К сожалению, на стадии find-requires НЕТ
СПОСОБА ОПРЕДЕЛИТЬ, В КАКОМ КАТАЛОГЕ СОБИРАЛСЯ ПАКЕТ.  То есть на
стадии find-requires доступен только RPM_BUILD_ROOT.  Чтобы как-то
протащить информацию со стадии %build на стадию find-requires,
на стадии %install я копирую этот файл в %buildroot.  Тогда perl.req
знает, откуда подобрать информацию из Makefile.PL.

Вообще, по-моему, это глючок RPM.  Что ему стоит заходить на стадии
find-requires в каталог сборки?  А он заходит просто в ~/RPM/BUILD.

> Также программа устанавливает следующий файл:
> 
> /usr/lib/perl5/vendor_perl/auto/Swatch/Actions/autosplit.ix
> 
> Для таких файлов вроде бы есть макрос %perl_vendor_autolib, но у него
> путь отличается:
> 
> /usr/lib/perl5/vendor_perl/i386-linux/auto
> 
> Т.е. у меня auto/ вместо i386-auto/ Может программа чего не туда
> ставит? Тогда как это подправить?

Если в %buildroot/usr/lib/perl5/vendor_perl/auto/ кроме файла
autosplit.ix ничего нет, то нужно из Actions.pm удалить всякое
упоминание об AutoLoader.  Если же рядом с autosplit.ix лежат
всякие-разные *.al файлы, то AutoLoader нужен (или его можно
чуть сложнее оторвать, но это желательно чувствовать, стоит или
не стоит его отрывать).  В случае с *.al файлами паковать
%perl_vendor_privlib/auto/*.*
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?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/20070807/1d6056d2/attachment-0001.bin>


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