Bug 487972 - RFE:filter Perl private libs for arch-specific packages
RFE:filter Perl private libs for arch-specific packages
Status: CLOSED RAWHIDE
Product: Fedora
Classification: Fedora
Component: rpm (Show other bugs)
rawhide
All Linux
low Severity medium
: ---
: ---
Assigned To: Fedora Packaging Toolset Team
Fedora Extras Quality Assurance
:
Depends On:
Blocks: requirements/rpm
  Show dependency treegraph
 
Reported: 2009-03-01 16:57 EST by Chris Weyl
Modified: 2013-09-09 09:11 EDT (History)
3 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-09-09 09:11:24 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Chris Weyl 2009-03-01 16:57:20 EST
Perl arch specific packages often contain shared libraries that are private to Perl, and ought not to be publicized as "provides" for a package.

Over in Perl-packaging-land we've taken to using the following to filter the private libs from ever being scanned by the rpm "provides" generator.  Would it be possible to change the auto-prov script to simply filter any so's out from under:

%perl_archlib
%perl_sitearch
%perl_vendorarch

One possible way would perhaps be to allow a variable to be defined in the spec that could specify a given directory to skip a certain type of autoprov scanning...  This could also be used by other package types filtering out private plugins or libraries. e.g.

# for perl
RPM_NOAUTPROV_SHLIB="%perl_vendorarch:..."

--- XXXX 26 Feb 2009 12:39:28 -0000 1.9
+++ XXXX 28 Feb 2009 22:57:42 -0000
@@ -17,2 +17,7 @@

+# don't "provide" private Perl libs
+%global _use_internal_dependency_generator 0
+%global provfind /bin/sh -c "grep -v '%perl_vendorarch.*\\.so$' | %__find_provides"
+%global __find_provides %provfind
+
 %description


Thanks :)
Comment 1 Marcela Mašláňová 2011-10-18 03:40:01 EDT
It's solved in macros.perl by %global __provides_exclude_from %{perl_vendorarch}/auto/.*\\\\.so$|%{perl_archlib}/.*\\\\.so

I suppose this one can be closed now if you do not have better solution inside rpm.
Comment 2 Fedora Admin XMLRPC Client 2012-04-13 19:08:30 EDT
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.
Comment 3 Fedora Admin XMLRPC Client 2012-04-13 19:11:47 EDT
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.
Comment 4 Panu Matilainen 2013-09-09 09:11:24 EDT
This should be fixed in rawhide (and f20 also) since this:

* Fri May 17 2013 Panu Matilainen <pmatilai@redhat.com> - - 4.11.0.1-5
- filter out non-library soname dependencies

Note You need to log in before you can comment on or make changes to this bug.