Hello,
Whether the perl/perl-devel split in devel (#226276) is here to stay or not, I'd like to make the attached change to the rpmdevtools perl spec template.
Using perl(ExtUtils::MakeMaker) as the "base" build dependency is correct in the vast majority of cases, no matter in which package ExtUtils::MakeMaker is included. Packages using Module::Build should change the dep to perl(Module::Build) - that'll pull in ExtUtils::MakeMaker too in case it's needed for Module::Build's non-compat mode.
Doing the build dep this way should work for all distro versions as-is without the need to put ugly conditionals on whether to pull in perl-devel or not or whatever other perl package reorganizations we might see in the future. I see some packagers have already started to make those unnecessary specfile complications/per-distro forks so it'd be good to have this in the spec template as well as applicable Wiki pages as soon as possible.
Comments, objections?
On Sat, Mar 10, 2007 at 12:57:54PM +0200, Ville Skyttä wrote:
Hello,
Whether the perl/perl-devel split in devel (#226276) is here to stay or not, I'd like to make the attached change to the rpmdevtools perl spec template.
Using perl(ExtUtils::MakeMaker) as the "base" build dependency is correct in the vast majority of cases, no matter in which package ExtUtils::MakeMaker is included. Packages using Module::Build should change the dep to perl(Module::Build) - that'll pull in ExtUtils::MakeMaker too in case it's needed for Module::Build's non-compat mode.
Doing the build dep this way should work for all distro versions as-is without the need to put ugly conditionals on whether to pull in perl-devel or not or whatever other perl package reorganizations we might see in the future.
Good idea!
I see some packagers have already started to make those unnecessary specfile complications/per-distro forks so it'd be good to have this in the spec template as well as applicable Wiki pages as soon as possible.
Comments, objections?
Even if it seems (technically) redunant, I would recommend to leave the explicit perl dependency in it, as a documentation/educational entity.
Index: spectemplate-perl.spec
RCS file: /cvs/fedora/fedora-rpmdevtools/spectemplate-perl.spec,v retrieving revision 1.14 diff -u -r1.14 spectemplate-perl.spec --- spectemplate-perl.spec 20 Jul 2006 17:46:34 -0000 1.14 +++ spectemplate-perl.spec 10 Mar 2007 10:52:17 -0000 @@ -10,7 +10,8 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildArch: -BuildRequires: perl +# Correct for lots of packages, other common choices include eg. Module::Build +BuildRequires: perl(ExtUtils::MakeMaker) Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
%description
On 3/10/07, Ville Skyttä ville.skytta@iki.fi wrote:
Whether the perl/perl-devel split in devel (#226276) is here to stay or not, I'd like to make the attached change to the rpmdevtools perl spec template.
Using perl(ExtUtils::MakeMaker) as the "base" build dependency is correct in the vast majority of cases, no matter in which package ExtUtils::MakeMaker is included. Packages using Module::Build should change the dep to perl(Module::Build) - that'll pull in ExtUtils::MakeMaker too in case it's needed for Module::Build's non-compat mode.
[...]
Comments, objections?
+1. Spec conditionals tend to hurt my brain :)
-Chris
On 3/10/07, Chris Weyl cweyl@alumni.drew.edu wrote:
+1. Spec conditionals tend to hurt my brain :)
Not that I can vote here. That's just my rabble "nod of agreement." :)
-Chris
On Sat, Mar 10, 2007 at 12:57:54PM +0200, Ville Skyttä wrote:
Using perl(ExtUtils::MakeMaker) as the "base" build dependency is correct in the vast majority of cases, no matter in which package ExtUtils::MakeMaker is included.
Not that I get a vote, but +1.
I'll be making the same change to cpanspec unless I hear otherwise...
Steve
On Sat, 2007-03-10 at 12:57 +0200, Ville Skyttä wrote:
Hello,
Whether the perl/perl-devel split in devel (#226276) is here to stay or not, I'd like to make the attached change to the rpmdevtools perl spec template.
Using perl(ExtUtils::MakeMaker) as the "base" build dependency is correct in the vast majority of cases, no matter in which package ExtUtils::MakeMaker is included. Packages using Module::Build should change the dep to perl(Module::Build) - that'll pull in ExtUtils::MakeMaker too in case it's needed for Module::Build's non-compat mode.
Doing the build dep this way should work for all distro versions as-is without the need to put ugly conditionals on whether to pull in perl-devel or not or whatever other perl package reorganizations we might see in the future. I see some packagers have already started to make those unnecessary specfile complications/per-distro forks so it'd be good to have this in the spec template as well as applicable Wiki pages as soon as possible.
Comments, objections?
No objection in principle but this should probably wait until Bug #231549 (https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=231549) is resolved.
Paul.
packaging@lists.fedoraproject.org