Linux Archive

Linux Archive (http://www.linux-archive.org/)
-   Fedora Packaging (http://www.linux-archive.org/fedora-packaging/)
-   -   RPM for CPAN module - Issues with Provides: (http://www.linux-archive.org/fedora-packaging/321454-rpm-cpan-module-issues-provides.html)

Pedro Padron 02-05-2010 08:29 PM

RPM for CPAN module - Issues with Provides:
 
Hi there,

I'm creating a specfile for a CPAN module and I'm facing some issues
with the Provides: tag.

The module I want to package (Nmap::Scanner) creates Perl namespaces
on-the-fly using Class::Generate, so the perl.prov script can't detect
them. This of course creates an incomplete list of Provides:, which
conflicts with the list of Requires:. Therefore the RPM package cannot
find the dependencies provided by itself.

I would like to know what would be the recommended alternative for
adding the missing Provides:.

In Bug #167797 [1] there was the alternative of patching the code and
submitting the patch upstream. In this case it would be unreasonable,
since the module would have to be basically rewritten.

Should I just add a bunch of Provides: in the spec header like this?

Provides: perl(Nmap::Scanner::Address)
Provides: perl(Nmap::Scanner::Distance)
Provides: perl(Nmap::Scanner::ExtraPorts)
Provides: perl(Nmap::Scanner::Host)
Provides: perl(Nmap::Scanner::Hostname)
Provides: perl(Nmap::Scanner::Hosts)
Provides: perl(Nmap::Scanner::NmapRun)
Provides: perl(Nmap::Scanner::OS)
Provides: perl(Nmap::Scanner::OS::Class)
Provides: perl(Nmap::Scanner::OS::Fingerprint)
Provides: perl(Nmap::Scanner::OS::IPIdSequence)
Provides: perl(Nmap::Scanner::OS::Match)
Provides: perl(Nmap::Scanner::OS::PortUsed)
Provides: perl(Nmap::Scanner::OS::TCPSequence)
Provides: perl(Nmap::Scanner::OS::TCPTSSequence)
Provides: perl(Nmap::Scanner::OS::Uptime)
Provides: perl(Nmap::Scanner::Port)
Provides: perl(Nmap::Scanner::RunStats)
Provides: perl(Nmap::Scanner::RunStats::Finished)
Provides: perl(Nmap::Scanner::ScanInfo)
Provides: perl(Nmap::Scanner::Service)
Provides: perl(Nmap::Scanner::Task)
Provides: perl(Nmap::Scanner::TaskProgress)

[1] https://bugzilla.redhat.com/show_bug.cgi?id=167797

Thanks,

Pedro Padron
ppadron@w3p.com.br
--
packaging mailing list
packaging@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/packaging

"Tom "spot" Callaway" 02-08-2010 08:08 PM

RPM for CPAN module - Issues with Provides:
 
On 02/05/2010 04:29 PM, Pedro Padron wrote:
> Should I just add a bunch of Provides: in the spec header like this?
>
> Provides: perl(Nmap::Scanner::Address)
> Provides: perl(Nmap::Scanner::Distance)
> Provides: perl(Nmap::Scanner::ExtraPorts)
> Provides: perl(Nmap::Scanner::Host)
> Provides: perl(Nmap::Scanner::Hostname)
> Provides: perl(Nmap::Scanner::Hosts)
> Provides: perl(Nmap::Scanner::NmapRun)
> Provides: perl(Nmap::Scanner::OS)
> Provides: perl(Nmap::Scanner::OS::Class)
> Provides: perl(Nmap::Scanner::OS::Fingerprint)
> Provides: perl(Nmap::Scanner::OS::IPIdSequence)
> Provides: perl(Nmap::Scanner::OS::Match)
> Provides: perl(Nmap::Scanner::OS::PortUsed)
> Provides: perl(Nmap::Scanner::OS::TCPSequence)
> Provides: perl(Nmap::Scanner::OS::TCPTSSequence)
> Provides: perl(Nmap::Scanner::OS::Uptime)
> Provides: perl(Nmap::Scanner::Port)
> Provides: perl(Nmap::Scanner::RunStats)
> Provides: perl(Nmap::Scanner::RunStats::Finished)
> Provides: perl(Nmap::Scanner::ScanInfo)
> Provides: perl(Nmap::Scanner::Service)
> Provides: perl(Nmap::Scanner::Task)
> Provides: perl(Nmap::Scanner::TaskProgress)

I would do that, except I would version them:

Provides: perl(Nmap::Scanner::Address) = %{version}
...

~spot
--
packaging mailing list
packaging@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/packaging

Pedro Padron 02-08-2010 08:14 PM

RPM for CPAN module - Issues with Provides:
 
Yes, forgot about the %{version}. Thanks!

2010/2/8 Tom "spot" Callaway <tcallawa@redhat.com>:
> On 02/05/2010 04:29 PM, Pedro Padron wrote:
>> Should I just add a bunch of Provides: in the spec header like this?
>>
>> Provides: perl(Nmap::Scanner::Address)
>> Provides: perl(Nmap::Scanner::Distance)
>> Provides: perl(Nmap::Scanner::ExtraPorts)
>> Provides: perl(Nmap::Scanner::Host)
>> Provides: perl(Nmap::Scanner::Hostname)
>> Provides: perl(Nmap::Scanner::Hosts)
>> Provides: perl(Nmap::Scanner::NmapRun)
>> Provides: perl(Nmap::Scanner::OS)
>> Provides: perl(Nmap::Scanner::OS::Class)
>> Provides: perl(Nmap::Scanner::OS::Fingerprint)
>> Provides: perl(Nmap::Scanner::OS::IPIdSequence)
>> Provides: perl(Nmap::Scanner::OS::Match)
>> Provides: perl(Nmap::Scanner::OS::PortUsed)
>> Provides: perl(Nmap::Scanner::OS::TCPSequence)
>> Provides: perl(Nmap::Scanner::OS::TCPTSSequence)
>> Provides: perl(Nmap::Scanner::OS::Uptime)
>> Provides: perl(Nmap::Scanner::Port)
>> Provides: perl(Nmap::Scanner::RunStats)
>> Provides: perl(Nmap::Scanner::RunStats::Finished)
>> Provides: perl(Nmap::Scanner::ScanInfo)
>> Provides: perl(Nmap::Scanner::Service)
>> Provides: perl(Nmap::Scanner::Task)
>> Provides: perl(Nmap::Scanner::TaskProgress)
>
> I would do that, except I would version them:
>
> Provides: perl(Nmap::Scanner::Address) = %{version}
> ...
>
> ~spot
>
--
packaging mailing list
packaging@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/packaging

Ville Skyttä 02-10-2010 09:34 PM

RPM for CPAN module - Issues with Provides:
 
On Monday 08 February 2010, Tom "spot" Callaway wrote:
> On 02/05/2010 04:29 PM, Pedro Padron wrote:
> > Should I just add a bunch of Provides: in the spec header like this?
> >
[...]
> > Provides: perl(Nmap::Scanner::Service)
> > Provides: perl(Nmap::Scanner::Task)
> > Provides: perl(Nmap::Scanner::TaskProgress)
>
> I would do that, except I would version them:
>
> Provides: perl(Nmap::Scanner::Address) = %{version}
> ...

IMHO versioning them this would be the right thing to do only if the generated
classes actually end up having %{version} (expanded, obviously) as their
version in Perl module terms ($VERSION).

Briefly peeking at the sources of Class::Generate I don't see any evidence
that it would add any such version information to the generated classes.
--
packaging mailing list
packaging@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/packaging


All times are GMT. The time now is 12:44 PM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.