Hello at, On Sun, Oct 20, 2002 at 04:06:58AM +0400, at@turbinal.org wrote: > > On Sun, Oct 20, 2002 at 12:45:47AM +0400, at@turbinal.org wrote: > > Каким образом зависимость на ABI/soname может попасть в пакет > > автоматически при сборке? > > > > Можно ли отхачить что-нибудь на стадии find-requires так, чтобы при > > обнаружении перлового бинарного кода автоматически выставлялась > > зависимость на перловый soname из среды сборки? > > Я посмотрел, и мне кажется, что сделать это вполне возможно. Для этого > проще всего ввести ещё одну стадию поиска зависимостей (и назвать её > как-нибудь perlbin/noperlbin). > > Критерии: > > 1) если в $RPM_BUILD_ROOT/usr/lib/perl* в принципе найдены какие-нибудь > перловые модули (*.pm, "Perl5 module source text"), то > 2) если в $RPM_BUILD_ROOT/usr/lib/perl*/auto/* найдены какие-нибудь > .so-библиотеки, то Достаточно поискать в $RPM_BUILD_ROOT%perl_sitearch/auto > 3) возможный дополнительный критерий: названия *.pm и *.so должны > соответствовать друг другу 1) и 3) практически не обязательны > 4) передать список таких .so-файлов в скрипт perlbin.req, который > напечатает что-нибудь хорошее о свойствах перла в окружении сборки > > Последнего, однако, не стоит делать, если > 1) в $RPM_BUILD_ROOT/usr/lib или $RPM_BUILD_ROOT/usr/lib/perl*/CORE > найдены библиотеки libperl*.so*; и, кроме того > 2) найден перловый модуль $RPM_BUILD_ROOT/usr/lib/perl*/Config.pm; тогда > нужно > 3) передать этот перловый модуль в скрипт perlbin.prov, который > напечатает что-нибудь хорошее о свойствах собираемого перла Для одного пакета не стоит утруждаться автоматикой. > > Я не знаю, насколько это хорошо и стоит ли это делать вообще. Но это > поможет автоматический контролировть бинарную совместимость перловых > пакетов. Простейший возможный скрипт perlbin.req, который даже не > потребует скрипта perlbin.prov, прилагается. > #!/usr/bin/perl > # > # Show perl version/build-specific binary token > # > > use Config; > print "$Config{libperl}\n"; На мой взгляд, скрипт правильный. Можно даже не оформлять как отдельный скрипт, а просто, в случае обнаружения файлов, выполнять perl -MConfig -e 'print "$Config{libperl}\n"' -- Stay tuned, MhZ JID: mookid@jabber.org ___________ ... mindreading equipment is currently classified CIA property at best (hello echelon!) - Alan Cox on linux-kernel