Bug 17453 - Сгенерированный spec не проходит sisyphus_check
: Сгенерированный spec не проходит sisyphus_check
Status: CLOSED FIXED
: Sisyphus
(All bugs in Sisyphus/cpan2rpm)
: unstable
: all Linux
: P2 minor
Assigned To:
:
:
:
:
:
  Show dependency tree
 
Reported: 2008-10-06 16:00 by
Modified: 2012-09-21 10:46 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2008-10-06 16:00:36
Тот спек, который генерирует cpan2rpm не проходит sisyphus_check:

Wrote: /usr/src/RPM/SRPMS/perl-Parse-AccessLogEntry-0.06-alt1.src.rpm
Wrote: /usr/src/RPM/RPMS/noarch/perl-Parse-AccessLogEntry-0.06-alt1.noarch.rpm
0.74user 0.22system 0:03.70elapsed 25%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+552outputs (0major+140437minor)pagefaults 0swaps
/.out/perl-Parse-AccessLogEntry-0.06-alt1.noarch.rpm: directory
/usr/lib/perl5/vendor_perl/x86_64-linux belongs to perl-base
sisyphus_check: check-dirlist ERROR: directory ownership viloation
hsh-rebuild: perl-Parse-AccessLogEntry-0.06-alt1.src.rpm: sisyphus_check
failed.

Секция %files выглядит следующим образом:
%files
%perl_vendor_privlib/*
%perl_vendor_man3dir/*

Было бы хорошо, если бы он генерировал более точные имена файлов, в данном
примере так:
%files
%perl_vendor_privlib/Parse/AccessLogEntry.pm
%perl_vendor_man3dir/Parse::AccessLogEntry.3pm.gz

Думаю это не сложно будет пофиксить.
------- Comment #1 From 2008-10-07 01:56:28 -------
Да, я тоже считаю, что не сложно.
------- Comment #2 From 2008-10-10 01:14:54 -------
Исправлено в cpan2rpm-2.027-alt3.src.rpm
------- Comment #3 From 2012-09-20 13:37:00 -------
странно, но у меня версия $rpm -q cpan2rpm
cpan2rpm-2.028-alt1

так и не делает предложенного:
$cpan2rpm   ./Mcrypt-2.5.7.0.tar.gz 

в спеке выходит:
%files                                                                         
%perl_vendor_archlib/Mcrypt/*                                                  
%perl_vendor_autolib/Mcrypt/*  

(файлы не перечисляет, при сборке - ошибка - файл не найден)
в каталоге %perl_vendor_archlib нет каталога Mcrypt, а есть только файл
Mcrypt.pm 

вручную исправил на 
%files                                                                         
%perl_vendor_archlib/Mcrypt.pm                                                 
%perl_vendor_autolib/Mcrypt/*  

собрался. Так что исправление потерялось, может, где-то по пути?
------- Comment #4 From 2012-09-20 23:34:51 -------
Есть такой момент. В некоторых случаях приходится исправлять вручную. Это же
ещё зависит от того, как файлы/каталоги указаны в файле описания пакета.
Что-то исправлять в этой программе я не готов. Исправить пути при надобности
занимает несколько секунд.

Хотя есть более новые сборки, попробуйте с ними:
* Пт. нояб. 18 2011 Igor Vlasenko <viy@altlinux.ru> 2.028-alt3
- bugfix: proper macro expansion in /usr/src/RPM/SOURCES

* Чт. сент. 29 2011 Igor Vlasenko <viy@altlinux.ru> 2.028-alt2
- bugfix: proper prefix in files

* Пн. авг. 29 2011 Igor Vlasenko <viy@altlinux.ru> 2.028-alt1
- updated to 2.028 upstream release
- disabled patch1 (fixed upstream)
------- Comment #5 From 2012-09-21 10:46:33 -------
Вроде бы именно это уже исправлено,
хотя, конечно, спекгенерация там далека от идеала.

Этот конкретный баг лучше закрыть, так как пример устарел,
а открыть новый со свежим примером, когда появится,
чтобы починить по горячим следами.