develooper Front page | perl.perl5.porters | Postings from October 2003

Re: Hidden dependencies?

Thread Previous | Thread Next
October 1, 2003 10:32
Re: Hidden dependencies?
Message ID:
On Wed, Oct 01, 2003 at 05:02:32AM -0400, wrote:
> It's a general problem with packagers and dependencies. Lots of packages
> (particularly multimedia players) "require" every single library it can
> talk to because that's how it was compiled but it will actually work
> perfectly without most of them. Packaging systems don't seem to have any
> concept of optionaly requirements (or if they do I've never seen them used).

Looking outside the RPM box, Debian does.  "Depends", "Recommends" and 
"Suggests" (there are others) from highest to lowest level of requirement.  
A simplified example...

Package: perl
Version: 5.8.0-18
Depends: perl-base, perl-modules, libc6, libdb4.0, libgdbm3
Suggests: perl-doc, libterm-readline-perl-perl

Debian's "perl" package requires the bare bones perl core, the core modules,
libc, db and gdbm (the last two because they didn't bother to split DB_File
and GDBM_File out into perl-modules, I guess it was too important).  The
documentation and Term::Readline::Perl are optional.  When you install perl
it will suggest that you also install perl-doc but will work fine without

A full explaination is here.

META.yml has been borrowing heavily from dpkg.

> That requires manintaining a list of publicly usable modules. Perhaps
> MakeMaker should have a
> public_module => [ 'Use::This', 'Or::This']
> then it might even be able to work out PREQREQ_PM by itself (or at least
> have a good go at it in non special cases).

This is what Module::Build's META.yml is for.  It would be worthwhile
investigating generating one for the perl core.

Thread Previous | Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About