__perl_requires misbehaving in rawhide (rpm or grep broken??)

Tom Lane tgl at redhat.com
Thu Feb 3 00:59:07 UTC 2011


For the last week or so I've been getting broken-dependencies nagmail
about

	mysql-test-5.5.8-6.fc15.x86_64 requires perl(mtr_misc.pl)

The depchecker is correct about that: the RPM built by koji shows an
unresolved dependency of that form.  The question is how that dependency
is getting past the __perl_requires filter that mysql.spec uses, which
looks like this:

#!/bin/sh

/usr/lib/rpm/perl.req $* | \
    grep -v -e "perl(th" \
    -e "perl(lib::mtr" -e "perl(lib::v1/mtr" -e "perl(mtr"

What makes this especially weird is that the filter is working to the
extent of successfully removing several other symbols, including some
that match the "perl(mtr" pattern.

This problem appeared after I built mysql 5.5.8-6 on 20-Jan.  The
dependency filter was working correctly in previous builds, the
latest being 5.5.8-5 on 13-Jan.  When I build the same SRPM locally
on my Fedora 13 box, no unexpected requires show up in the result.

It's a bit hard to credit that grep itself is broken, not least because
it doesn't appear to have been rebuilt since October.  There has been a
fair amount of churn in rpm since 13-Jan, though.  Should I file this
as an rpm bug, or is there some other likely explanation?

			regards, tom lane


More information about the devel mailing list