215
215
require ExtUtils::MakeMaker;
217
217
if ( $perl_version and $self->_cmp($perl_version, '5.006') >= 0 ) {
218
# MakeMaker can complain about module versions that include
219
# an underscore, even though its own version may contain one!
220
# Hence the funny regexp to get rid of it. See RT #35800
222
my $v = $ExtUtils::MakeMaker::VERSION =~ /^(\d+\.\d+)/;
223
$self->build_requires( 'ExtUtils::MakeMaker' => $v );
224
$self->configure_requires( 'ExtUtils::MakeMaker' => $v );
218
# This previous attempted to inherit the version of
219
# ExtUtils::MakeMaker in use by the module author, but this
220
# was found to be untenable as some authors build releases
221
# using future dev versions of EU:MM that nobody else has.
222
# Instead, #toolchain suggests we use 6.59 which is the most
223
# stable version on CPAN at time of writing and is, to quote
224
# ribasushi, "not terminally fucked, > and tested enough".
225
# TODO: We will now need to maintain this over time to push
226
# the version up as new versions are released.
227
$self->build_requires( 'ExtUtils::MakeMaker' => 6.59 );
228
$self->configure_requires( 'ExtUtils::MakeMaker' => 6.59 );
226
230
# Allow legacy-compatibility with 5.005 by depending on the
227
231
# most recent EU:MM that supported 5.005.
228
$self->build_requires( 'ExtUtils::MakeMaker' => 6.42 );
229
$self->configure_requires( 'ExtUtils::MakeMaker' => 6.42 );
232
$self->build_requires( 'ExtUtils::MakeMaker' => 6.36 );
233
$self->configure_requires( 'ExtUtils::MakeMaker' => 6.36 );
232
236
# Generate the MakeMaker params