Re: Where to store module-specific read-only data?
Michael G Schwern <[email protected]> Wed, 30 Dec 2009 23:04:54 -0800
| Newsgroups | gmane.comp.lang.perl.modules.module-build |
|---|---|
| Message-ID | <[email protected]> |
Tim Landscheidt wrote:
>> Meanwhile... what module in this chain is requiring a new MakeMaker?
>
> IIRC Module::Build itself due to its requirement for
> ExtUtils::Manifest; after another look that may be due to a
> bug (?) in cpanspec however that translates Module::Build's
> META.yml's:
>
> | [...]
> | recommends:
> | [...]
> | ExtUtils::Manifest: 1.54
> | [...]
> | requires:
> | [...]
> | ExtUtils::Manifest: 0
> | [...]
>
> to:
>
> | [...]
> | BuildRequires: perl(ExtUtils::Manifest) >= 1.54
> | [...]
> | Requires: perl(ExtUtils::Manifest) >= 1.54
> | [...]
>
> I'll give it another try next year :-).
That's all ok, but none of that requires a new MakeMaker. My guess is that
whatever set of rpms you're using hasn't split ExtUtils::Manifest out of the
ExtUtils::MakeMaker package.
>> Now, it might be that you need a new MakeMaker to make your CPAN client
>> happy or something but you shouldn't need one to upgrade Module::Build.
>
> I usually try to use RPMs whenever possible as it makes
> software management much easier than using a separate CPAN
> client.
I'm principle I agree, but with CPAN modules RPMs are often unavailable or out
of date and (as you outline below) rather complicated.
>> By the way, if any of the stuff mentioned above breaks, it breaks
>> *everything* for *everybody* so you really shouldn't be afraid to
>> upgrade it all early and often.
>
> There are two aspects to this: Fedora (11; maybe 12 is all
> peachy) packs the Perl core distribution in many packages
> (i. e. RPMs). ExtUtils::Manifest is part of the
> perl-ExtUtils-MakeMaker RPM (and apparently also CPAN's
> ExtUtils-MakeMaker-6.56.tar.gz?); so to update
> ExtUtils::Manifest requires either building a new
> perl-ExtUtils-MakeMaker RPM or splitting it into two sepa-
> rate RPMs for perl-ExtUtils-MakeMaker and (an updated)
> perl-ExtUtils-Manifest.
ExtUtils-Manifest split from ExtUtils-MakeMaker a while ago (along with
ExtUtils-Install and a few other auxiliary modules). MakeMaker still ships
with a copy of it to prevent a circular dependency, but its easily separated.
Binary rpms don't have such a circular dep to worry about (since its not
building from source) so it should split them.
> The other side is that the build of those RPMs happens in
> the way that the build environment is set up, 70 patches are
> applied (including 5000+ lines for Module::Build)
Whoa! What's in those patches? Have they been pushed upstream? Could you
link to them?
> every-
> thing is compiled and afterwards the results are split into
> about 40 separate RPMs.
Is that 40 RPMs from just Module::Build?
--
87. If the thought of something makes me giggle for longer than 15
seconds, I am to assume that I am not allowed to do it.
-- The 213 Things Skippy Is No Longer Allowed To Do In The U.S. Army
http://skippyslist.com/list/