rawhide report: 20110219 changes - requires perl(Gtk2::

Ralf Corsepius rc040203 at freenet.de
Mon Feb 21 10:28:45 UTC 2011


On 02/21/2011 10:36 AM, Panu Matilainen wrote:
> On 02/21/2011 11:23 AM, Marcela Mašláňová wrote:
>> On 02/19/2011 09:10 PM, Remi Collet wrote:
>>> Le 19/02/2011 20:25, Rawhide Report a écrit :
>>>
>>>> 	gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::ScrolledWindow)
>>>> 	gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::DrawingArea)
>>>> 	gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Frame)
>>>> 	gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::ComboBox)
>>>> 	gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::VBox)
>>>> 	gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::ToggleButton)
>>>> 	gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Dialog)
>>>> 	gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Window)
>>>> 	gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Notebook)
>>>> 	gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::OptionMenu)
>>>> 	gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::HBox)
>>>> 	gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Entry)
>>>> 	gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::EventBox)
>>>> 	gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::HScale)
>>>> 	gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::SpinButton)
>>>> 	gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Button)
>>>> 	gmusicbrowser-1.0.2-2.fc15.noarch requires perl(Gtk2::Viewport)
>>>
>>> I don't understand why this requires are detected in f15/rawhide (wasn't
>>> in f14) ?
>>>
>>> Should I filter them ?
>>> Shouldn't perl-Gtk2 provides them ?
>>>
>>>
>>> Any tips / idea ?
>> The huge number of perl requires is result of recent update to rpm-4.9.
>> In rpm were fixed some bugs and our filtering macro doesn't work well
>> now [1].
>>
>> [1] https://bugzilla.redhat.com/show_bug.cgi?id=674765
>
> The filtering macros work just like they always did, the issue of
> config(foo) dependencies when using external dependency generator (which
> the current Fedora-specific filter macros rely on) in bug 674765 is not
> new to 4.9.x. So 674765 is not really related here...
>
> A more likely candidate for new dependencies appearing is that rpm now
> collects dependencies from perl's "use base qw" syntax, which older
> versions did not.

That's only one half of the issue.

In case of the perl(Gtk2::*), rpm now collects "use base ..." requires, 
but misses to collect and provide the XS-symbols they are implicitly 
provided through.

I.e. in a perfect world, rpm's deptracking needs to be extended to 
collect XS-symbols,

A quick hack applicable to the perl-Gtk2-* packages would be to run
some "nm -sD --undefined ..." based script to generate a list of these 
Provides:

Rough uncooked example:

nm -sD --defined /usr/lib64/perl5/auto/Gtk2/Gtk2.so \
| grep -E 'XS_Gtk2.*_new$' \
| sed -e 's,^.*XS_Gtk2,perl(Gtk2,;s,__,::,g;s,_new,),'

Ralf



More information about the devel mailing list