Bug 54907 - Не могу исключить самозависимость из find-requires
Summary: Не могу исключить самозависимость из find-requires
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: rpm-build-perl (show other bugs)
Version: unstable
Hardware: all Linux
: P5 normal
Assignee: viy
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-06-24 12:54 MSK by Сергей Жидких
Modified: 2025-08-10 15:22 MSK (History)
5 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Сергей Жидких 2025-06-24 12:54:22 MSK
Есть пакет lcov написанный на perl, который устанавливает в директорию /usr/lib/lcov/lcovutil.pm свой модуль. На стадии поиска зависимостей получаю следующую ошибку:

find-requires: running scripts (cpp,debuginfo,files,lib,pam,perl,pkgconfig,pkgconfiglib,python,python3,rpmlib,shebang,shell,static,symlinks,systemd-services)
Can't locate lcovutil.pm in @INC (you may need to install the lcovutil module) (@INC entries checked: /usr/lib/lcov /usr/lib/rpm /usr/lib64/perl5 /usr/share/perl5 /etc/perl5 /usr/lib/perl5/vendor_perl /usr/local/lib64/perl/5.38 /usr/local/share/perl/5.38 .) at /usr/src/tmp/lcov-buildroot/usr/bin/gendesc line 46.
BEGIN failed--compilation aborted at /usr/src/tmp/lcov-buildroot/usr/bin/gendesc line 46.
# perl(lcovutil.pm) at line 46 (depth 3) not loaded at BEGIN SKIP

Как бы я не старался исключить lcovutil.pm при помощи %add_findreq_skiplist, помогает только указание ``%add_findreq_skiplist *``, что совсем не является желаемым поведением.
Comment 1 Andrew Vasilyev 2025-06-24 18:18:06 MSK
(Ответ для Сергей Жидких на комментарий #0)
> Есть пакет lcov написанный на perl, который устанавливает в директорию
> /usr/lib/lcov/lcovutil.pm свой модуль. На стадии поиска зависимостей получаю
> следующую ошибку:
> 
> find-requires: running scripts
> (cpp,debuginfo,files,lib,pam,perl,pkgconfig,pkgconfiglib,python,python3,
> rpmlib,shebang,shell,static,symlinks,systemd-services)
> Can't locate lcovutil.pm in @INC (you may need to install the lcovutil
> module) (@INC entries checked: /usr/lib/lcov /usr/lib/rpm /usr/lib64/perl5
> /usr/share/perl5 /etc/perl5 /usr/lib/perl5/vendor_perl
> /usr/local/lib64/perl/5.38 /usr/local/share/perl/5.38 .) at
> /usr/src/tmp/lcov-buildroot/usr/bin/gendesc line 46.
> BEGIN failed--compilation aborted at
> /usr/src/tmp/lcov-buildroot/usr/bin/gendesc line 46.
> # perl(lcovutil.pm) at line 46 (depth 3) not loaded at BEGIN SKIP
> 
> Как бы я не старался исключить lcovutil.pm при помощи %add_findreq_skiplist,
> помогает только указание ``%add_findreq_skiplist *``, что совсем не является
> желаемым поведением.

  А "%define __spec_autodep_custom_pre export PERL5OPT='-I%buildroot%_prefix/lib/lcov -M..." не помогает?

  Исключение для find-requires:  
  %add_findreq_skiplist */lcovutil.pm
Comment 2 Сергей Жидких 2025-06-25 09:36:12 MSK
(Ответ для Andrew Vasilyev на комментарий #1)
> [...]
>   А "%define __spec_autodep_custom_pre export
> PERL5OPT='-I%buildroot%_prefix/lib/lcov -M..." не помогает?
Спасибо, помогло.

>   Исключение для find-requires:  
>   %add_findreq_skiplist */lcovutil.pm
Никак не отразилось на результат работы. Макроса сверху было достаточно.
Comment 3 Сергей Жидких 2025-08-10 15:22:10 MSK
Решена.