Re: Perl autorequires failing for git-svn

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 01/15/2014 01:56 AM, Todd Zullinger wrote:
Hi all,

[I posted this to the packaging list a few days ago, but haven't gotten
any responses, so I want to open this to a wider audience in the hope of
getting some pointers to what I'm missing.]

I'm trying to fix a problem with the git-svn package that causes it to
not pull in the proper perl dependencies (filed as rhbz #1026760). (It's
possible I've simply missed an important announcement, but I didn't spot
anything in the guidelines.)

It appears that the file package was changed from 5.11 in f19 to 5.14 in
f20.  With this change, the git-svn script reports a different type and
find-requires does not pass it to perl.req for processing.

f19:

<mock-chroot>[root@f20-64 /]# file --version
file-5.11
magic file from /etc/magic:/usr/share/misc/magic

<mock-chroot>[root@f20-64 /]# file
/builddir/build/BUILD/git-1.8.4.2/git-svn
/builddir/build/BUILD/git-1.8.4.2/git-svn: Perl script, ASCII text
executable

<mock-chroot>[root@f20-64 /]# /usr/lib/rpm/find-requires <<<
/builddir/build/BUILD/git-1.8.4.2/git-svn

/usr/bin/perl
perl >= 0:5.008
perl(Carp)
perl(Digest::MD5)
perl(File::Basename)
perl(File::Find)
perl(File::Path)
perl(File::Spec)
perl(Getopt::Long)
perl(Git)
perl(Git::SVN)
perl(Git::SVN::Editor)
perl(Git::SVN::Fetcher)
perl(Git::SVN::Log)
perl(Git::SVN::Migration)
perl(Git::SVN::Prompt)
perl(Git::SVN::Ra)
perl(Git::SVN::Utils)
perl(IO::File)
perl(IPC::Open3)
perl(lib)
perl(Memoize)
perl(strict)
perl(Term::ReadLine)
perl(vars)
perl(warnings)

f20:

<mock-chroot>[root@f20-64 /]# file --version
file-5.14
magic file from /etc/magic:/usr/share/misc/magic

<mock-chroot>[root@f20-64 /]# file
/builddir/build/BUILD/git-1.8.4.2/git-svn
/builddir/build/BUILD/git-1.8.4.2/git-svn: Perl5 module source, ASCII text

<mock-chroot>[root@f20-64 /]# /usr/lib/rpm/find-requires <<<
/builddir/build/BUILD/git-1.8.4.2/git-svn

This fails because find-requires only passes the file to perl.req if
it's either a .pm file or it's in the script list, which is defined like
this:

scriptlist=`echo $filelist | xargs -r file | \
            grep -E ":.* (commands|script)[, ]" | cut -d: -f1`

Thanks for this part. I didn't know that. My test-suite for File checks only the regexp defined in /usr/lib/rpm/fileattrs, which is following in F20:

%__perl_magic		^.*[Pp]erl .*$

So when testing File-5.14 I didn't think this will cause problems to RPM. I can make File to return "Perl script" again, but I would rather stay consistent with upstream in the detection.

There's already bug about this: <https://bugzilla.redhat.com/show_bug.cgi?id=1051598>. I will open upstream bug for that.

This is where the change in the file commands output is causing trouble.

Any help would be much appreciated.

Thanks!


Jan Kaluza

--
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct





[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]
  Powered by Linux