In the RISC-V mass rebuild, some packages fail because Perl is missing. However they don't have 'BuildRequires: perl'.
One example is 'telnet':
https://fedorapeople.org/groups/risc-v/logs/telnet/0.17-65.fc24/build.log
/var/tmp/rpm-tmp.ksu80z: line 36: perl: command not found error: Bad exit status from /var/tmp/rpm-tmp.ksu80z (%build)
http://pkgs.fedoraproject.org/cgit/rpms/telnet.git/tree/telnet.spec
No BuildRequires: perl
[WARNING: The next URL may crash your browser] https://pagure.io/fedora-comps/blob/master/f/comps-f25.xml.in#_446
No perl in buildsys-build
I have a vague recollection that this change was deliberate, and perl was removed from the "implicit" (buildsys-build) dependencies. However I cannot find anything about that.
Is this right - are the packages themselves broken?
If so I will add a BR: perl to the packages whenever I come across this problem.
If not, what is the correct fix? I believe our buildsys-build packages are complete and equivalent to x86 ones.
Rich.
On Sat, Oct 1, 2016 at 11:01 AM, Richard W.M. Jones rjones@redhat.com wrote:
In the RISC-V mass rebuild, some packages fail because Perl is missing. However they don't have 'BuildRequires: perl'.
https://fedoraproject.org/wiki/Changes/Build_Root_Without_Perl
If so I will add a BR: perl to the packages whenever I come across this problem.
If not, what is the correct fix?
https://fedoraproject.org/wiki/Packaging:Perl#Build_Dependencies
On Sat, Oct 01, 2016 at 11:09:44AM +0300, Ville Skyttä wrote:
On Sat, Oct 1, 2016 at 11:01 AM, Richard W.M. Jones rjones@redhat.com wrote:
In the RISC-V mass rebuild, some packages fail because Perl is missing. However they don't have 'BuildRequires: perl'.
https://fedoraproject.org/wiki/Changes/Build_Root_Without_Perl
If so I will add a BR: perl to the packages whenever I come across this problem.
If not, what is the correct fix?
https://fedoraproject.org/wiki/Packaging:Perl#Build_Dependencies
That's a better explanation, thanks.
Rich.
On Sáb, 2016-10-01 at 09:25 +0100, Richard W.M. Jones wrote:
On Sat, Oct 01, 2016 at 11:09:44AM +0300, Ville Skyttä wrote:
On Sat, Oct 1, 2016 at 11:01 AM, Richard W.M. Jones <rjones@redhat. com> wrote:
In the RISC-V mass rebuild, some packages fail because Perl is missing. However they don't have 'BuildRequires: perl'.
https://fedoraproject.org/wiki/Changes/Build_Root_Without_Perl
If so I will add a BR: perl to the packages whenever I come across this problem.
If not, what is the correct fix?
https://fedoraproject.org/wiki/Packaging:Perl#Build_Dependencies
That's a better explanation, thanks.
Hi,
From my recent experience you need add BR: perl-generators in all package that provide perl modules to get proper perl requires/provides
dnf --disablerepo='*' --enablerepo=rawhide repoquery --qf "%{sourcerpm}" --available --whatrequires "perl(:MODULE_COMPAT_5.24.0)" --alldeps | wc -l
2876
in https://fedoraproject.org/wiki/Changes/Build_Root_Without_Perl#Completed_ite... BuildRequires: perl-generators added into package that use perl() RPM dependency symbols and do not build-require perl-generators yet. BuildRequires: perl-devel added into packages that run-require libperl.so and do not build-require perl-devel yet.
3121 packages were edited.
TBH , I'd like know what are the repo queries for "package that use perl() RPM dependency symbols" and "packages that run-require libperl.so" ?
Best regards,
On 2016-10-01, Sérgio Basto sergio@serjux.com wrote:
dnf --disablerepo='*' --enablerepo=rawhide repoquery --qf "%{sourcerpm}" --available --whatrequires "perl(:MODULE_COMPAT_5.24.0)" --alldeps | wc -l
2876
in https://fedoraproject.org/wiki/Changes/Build_Root_Without_Perl#Completed_ite... BuildRequires: perl-generators added into package that use perl() RPM dependency symbols and do not build-require perl-generators yet. BuildRequires: perl-devel added into packages that run-require libperl.so and do not build-require perl-devel yet.
3121 packages were edited.
TBH , I'd like know what are the repo queries for "package that use perl() RPM dependency symbols" and "packages that run-require libperl.so" ?
I queried binary packages that require perl(*) and packages that provide perl(*). Then I did a union on their source package names. Result was 3292 pacakges. Number of edited packages was a little bit lower because some of them already build-required perl-generators.
-- Petr
On 2016-10-03, Petr Pisar ppisar@redhat.com wrote:
I queried binary packages that require perl(*) and packages that provide perl(*). Then I did a union on their source package names. Result was 3292 pacakges. Number of edited packages was a little bit lower because some of them already build-required perl-generators.
I forgot to write that the number on the wiki page also includes packages that receives a new perl-devel dependency. This one was computed from run-time dependency on libperl.so* soname.
-- Petr
On Saturday, October 1, 2016 11:09:44 AM CDT Ville Skyttä wrote:
On Sat, Oct 1, 2016 at 11:01 AM, Richard W.M. Jones rjones@redhat.com
wrote:
In the RISC-V mass rebuild, some packages fail because Perl is missing. However they don't have 'BuildRequires: perl'.
https://fedoraproject.org/wiki/Changes/Build_Root_Without_Perl
If so I will add a BR: perl to the packages whenever I come across this problem.
If not, what is the correct fix?
https://fedoraproject.org/wiki/Packaging:Perl#Build_Dependencies
To further this, it was never explicitly listed as something required, it has always been pulled in via deps. which is something that you can rely on being there but you have to expect breakage at some point if it is not explicitly listed.
Dennis
I remember that perl-generators were removed from deps of rpm-build.
On Sat, Oct 1, 2016 at 10:01 AM, Richard W.M. Jones rjones@redhat.com wrote:
In the RISC-V mass rebuild, some packages fail because Perl is missing. However they don't have 'BuildRequires: perl'.
One example is 'telnet':
https://fedorapeople.org/groups/risc-v/logs/telnet/0.17-65.fc24/build.log
/var/tmp/rpm-tmp.ksu80z: line 36: perl: command not found error: Bad exit status from /var/tmp/rpm-tmp.ksu80z (%build)
http://pkgs.fedoraproject.org/cgit/rpms/telnet.git/tree/telnet.spec
No BuildRequires: perl
[WARNING: The next URL may crash your browser] https://pagure.io/fedora-comps/blob/master/f/comps-f25.xml.in#_446
No perl in buildsys-build
I have a vague recollection that this change was deliberate, and perl was removed from the "implicit" (buildsys-build) dependencies. However I cannot find anything about that.
Is this right - are the packages themselves broken?
If so I will add a BR: perl to the packages whenever I come across this problem.
If not, what is the correct fix? I believe our buildsys-build packages are complete and equivalent to x86 ones.
Rich.
-- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones Read my programming and virtualization blog: http://rwmj.wordpress.com virt-builder quickly builds VMs from scratch http://libguestfs.org/virt-builder.1.html _______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-leave@lists.fedoraproject.org
Never mind, I found the right page:
https://fedoraproject.org/wiki/Changes/Build_Root_Without_Perl
So I'll go ahead and add 'BuildRequires: perl-generators' where that is necessary.
Rich.
On 2016-10-01, Richard W.M. Jones rjones@redhat.com wrote:
Never mind, I found the right page:
https://fedoraproject.org/wiki/Changes/Build_Root_Without_Perl
So I'll go ahead and add 'BuildRequires: perl-generators' where that is necessary.
Your orginal issue was with calling perl from a spec file. Then the correct depndency is "perl". Not "perl-generators".
-- Petr
On Mon, Oct 03, 2016 at 01:50:00PM +0000, Petr Pisar wrote:
On 2016-10-01, Richard W.M. Jones rjones@redhat.com wrote:
Never mind, I found the right page:
https://fedoraproject.org/wiki/Changes/Build_Root_Without_Perl
So I'll go ahead and add 'BuildRequires: perl-generators' where that is necessary.
Your orginal issue was with calling perl from a spec file. Then the correct depndency is "perl". Not "perl-generators".
Yes, this is what I have added to both the 'telnet' and 'ftp' spec files.
Rich.