[Bug 230608] missing config.h in latest -14

Chris Weyl cweyl at alumni.drew.edu
Mon Mar 5 16:27:18 UTC 2007


On 3/5/07, Paul Howarth <paul at city-fan.org> wrote:
> Warren Togami wrote:
> > Ralf Corsepius wrote:
> >>
> >> As this thing doesn't seem to be baked yet[1], and as I don't want to
> >> see FE-6 and FE-5 being locked out from updates, for now, I will ignore
> >> this issue on rawhide, i.e. you will likely see broken EVRs between
> >> rawhide and older FE, on my perl-modules, soon.
> >
> > Why broken EVR's?
>
> Most perl module packages can use a common spec file across all
> branches, except this is now broken in devel since perl-devel is needed
> to build even noarch perl-based packages. So Ralf isn't updating perl
> modules in devel until this is resolved, with the result that updated
> packages in branches for older releases have higher EVRs than the
> equivalent packages in devel. I'm doing likewise for the moment.

As am I.

So, it seems to me that splitting the .h files off into a perl-devel
package has introduced a number of issues that could be interpreted as
being anywhere in a range of "surprise!" to bug.

* ExtUtils::MakeMaker (at the least) depends on config.h, in -devel,
but is in core w/o a dep.
* End-users, not just developers/packagers, will be surprised by
ExtUtils::MakeMaker's being present but broken. (e.g. someone trying
to install extra modules from CPAN.)
* This is a departure from long standing practice in packaging
perl/perl-packages.
* A new buildreq will have to be added to every perl module (~530 in extras)
* Every perl-based package will require an examination to ensure that
they will not require perl-devel at run time.  (I'd imagine most of
the ExtUtils packages would, but...)
* -devel contains /usr/lib/perl5/%{version}/Encode/*.h, which breaks
the ability of a package to buildrequires against perl(Encode).

I'm all for the division of devel and runtime packages; but in this
case I think we're going too far.  We've split off what, as near as I
can tell, is a goodly number of .h files that do not introduce any
additional package deps, breaking at least two core modules, for the
reason "the guidelines say so".  --or at least I haven't been able to
discern a better one.  But as even the guidelines admonish they are
the beginning, not the ending of packaging[1], can we not admit that
core perl is both a devel and a user package, even after splitting out
the .h's?

What's next after this?  Will we need to go out and split every .h
file from every perl package out, breaking the clean, simple and
effective method of simply needing to br a perl(foo) symbol?

Unless there's something I'm missing here -- entirely possible -- I'd
ask that this change be reverted, -devel be subsumed again by core,
and the core perl package be additionally flagged to provide
perl-devel (so as to not break any packages already merged to
conform).

                -Chris

[1] "This is a collection of some guidelines for writing Fedora
packages. These guidelines are considered to be good practices by
existing Fedora packagers and QA people. If you are new to Fedora, you
should try to stick as closely to these guidelines as possible. When
you have gained some experience working with Fedora packages, you will
know when to deviate from them."

-- 
Chris Weyl
Ex astris, scientia




More information about the Fedora-perl-devel-list mailing list