require 5.003000; use strict; use ExtUtils::MakeMaker; use Getopt::Std; use Config qw(%Config); my $PM = 'lib/Digest/SHA.pm'; my %opts; getopts('tx', \%opts); # -t is no longer used, but allow it anyway my @defines; push(@defines, '-DSHA_PerlIO') if $] >= 5.004; push(@defines, '-DNO_SHA_384_512') if $opts{'x'}; my $define = join(' ', @defines); # Workaround for DEC compiler bug, adapted from Digest::MD5 my @extra = (); if ($^O eq 'VMS') { if (defined($Config{ccname})) { if (grep(/VMS_VAX/, @INC) && ($Config{ccname} eq 'DEC')) { # VAX compiler optimizer even up to v6.4 gets stuck push(@extra, OPTIMIZE => "/Optimize=(NODISJOINT)"); } } } # Enhance performance on Intel when using gcc if ($Config{archname} =~ /^i[3456]86/ && $Config{ccname} eq 'gcc') { push(@extra, OPTIMIZE => '-O1 -fomit-frame-pointer'); } my %att = ( 'NAME' => 'Digest::SHA', 'VERSION_FROM' => $PM, 'LIBS' => [''], 'DEFINE' => $define, 'INC' => '-I.', 'EXE_FILES' => [ 'shasum' ], 'INSTALLDIRS' => ($] >= 5.010 and $] < 5.011) ? 'perl' : 'site', @extra, ); my $MMversion = $ExtUtils::MakeMaker::VERSION || 0; $att{NO_META} = 1 unless $MMversion < 6.10_03; WriteMakefile(%att);