arch-specific perl-* packages often have library provides picked up and exposed vi rpm's autoprov system, where it shouldn't; that is, these provides are useless, not in the system lib path, and will never be used for proper perl dependency resolution. e.g. perl-YAML-Syck.i386 provides Syck.so(), mod_perl provides a slew of them, etc. We're working on bundling a set of new macros with the perl package; these macros will allow us to sensibly filter useless provides out. http://fedorapeople.org/~cweyl/macros.perl Please update the perl spec template to conditionally invoke the default perl filtering macro, by inserting "%{?perl_default_filter} before %description. Thanks!
Note that PLD has a general filtering mechanism for _ALL_ dependencies, not just perl. Library provides from loadable ELF binaries can be dealt with by doing chmod -x when packaging.
re the macros.patch: Ick: %global _use_internal_dependency_generator 0 \ You really ought to override just the perl, not all, dependencies for filtering. It really isn't _THAT_ hard to override %__perl_requires instead.
Just a note, I haven't ignored this report but am waiting to see what happens to http://fedoraproject.org/wiki/PackagingDrafts/AutoProvidesAndRequiresFiltering and whether it has any effect on this.
Would you like to wager whether dependency filtering is available for packaging use by, say, Fedorable 14? I will give you odds ...
(In reply to comment #3) > Just a note, I haven't ignored this report but am waiting to see what happens > to > http://fedoraproject.org/wiki/PackagingDrafts/AutoProvidesAndRequiresFiltering > and whether it has any effect on this. Excellent. It looks like that draft made it through FPC and FESCo, though I'm not entirely sure what the next step is after that: wait and see what happens, nudge someone to do something, or just go do it myself. (If I get 10 min to spare this afternoon, I'll open a bug against redhat-rpm-config to ask them to add it.) The FPC split off %perl_default_filter as being, well, "Perl specific", so I have bug 502402 open to deliver it via /etc/rpm/macros.perl.
From http://fedorapeople.org/~cweyl/macros.filtering you still have %global _use_internal_dependency_generator 0 \ Disabling the internal dependency generator breaks multilib for any per-arch package that uses your filtering. Have fun!
The guidelines that FPC passed explicitly address that (by limiting application of the filters to packages where that's not an issue).
Alright, bug 516240 is open against redhat-rpm-config to implement the filtering system as approved by FPC/FESCo.
Added upstream, please confirm it was done as intended: https://fedorahosted.org/rpmdevtools/changeset/6864c01 Please also remember to submit this stuff as an update to http://fedoraproject.org/wiki/Packaging:Perl#Filtering_Requires:_and_Provides
The update looks good to me; right place, right macro, right conditionalization. Thanks :)
rpmdevtools-7.5-1.fc11 has been submitted as an update for Fedora 11. http://admin.fedoraproject.org/updates/rpmdevtools-7.5-1.fc11?_csrf_token=018644e6f79eac4e110aeac47d19804d64593771
rpmdevtools-7.5-1.fc11 has been pushed to the Fedora 11 testing repository. If problems still persist, please make note of it in this bug report. If you want to test the update, you can install it with su -c 'yum --enablerepo=updates-testing update rpmdevtools'. You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F11/FEDORA-2009-9779
rpmdevtools-7.5-1.fc11 has been pushed to the Fedora 11 stable repository. If problems still persist, please make note of it in this bug report.