1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
|
use ExtUtils::MakeMaker;
use File::Basename ();
use File::Spec ();
WriteMakefile(
'NAME' => 'XML::SAX',
'VERSION_FROM' => 'lib/XML/SAX.pm', # finds $VERSION
'PREREQ_PM' => {
'File::Temp' => 0,
'XML::SAX::Base' => 1.05,
'XML::NamespaceSupport' => 0.03,
},
META_MERGE => {
"meta-spec" => { version => 2 },
resources => {
repository => {
type => 'git',
url => 'git@github.com:grantm/XML-SAX.git',
web => 'https://github.com/grantm/xml-sax',
},
},
},
);
sub MY::install {
package MY;
my $script = shift->SUPER::install(@_);
print STDERR "Debian build: won't modify ParserDetails.ini when installing.\n";
print STDERR " (use update-perl-sax-parsers(8) instead.)\n";
return $script;
# Only modify existing ParserDetails.ini if user agrees
my $write_ini_ok = 0;
eval { require XML::SAX };
if ($@) {
$write_ini_ok = 1;
}
else {
my $dir = File::Basename::dirname($INC{'XML/SAX.pm'});
if (-e File::Spec->catfile($dir, 'SAX', 'ParserDetails.ini')) {
$write_ini_ok =
ExtUtils::MakeMaker::prompt(
"Do you want XML::SAX to alter ParserDetails.ini?", "Y"
) =~ /^y/i;
}
else {
$write_ini_ok = 1;
}
}
if ($write_ini_ok) {
$script =~ s/install :: (.*)$/install :: $1 install_sax_pureperl/m;
$script .= <<"INSTALL";
install_sax_pureperl : pure_install
\t\@\$(PERL) -MXML::SAX -e "XML::SAX->add_parser(q(XML::SAX::PurePerl))->save_parsers()"
INSTALL
}
return $script;
}
|