Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[perl.git] branch blead, updated. v5.17.5-79-g560a400

8 views
Skip to first unread message

Craig A. Berry

unread,
Oct 27, 2012, 3:33:25 PM10/27/12
to perl5-...@perl.org
In perl.git, the branch blead has been updated

<http://perl5.git.perl.org/perl.git/commitdiff/560a4009bab00b294a28f584f9b812b7c1273d94?hp=5403a9a2060725249a432362f046adec5542d269>

- Log -----------------------------------------------------------------
commit 560a4009bab00b294a28f584f9b812b7c1273d94
Author: Craig A. Berry <craig...@mac.com>
Date: Sat Oct 27 13:23:46 2012 -0500

Workaround for VAX compiler optimizer bug in Digest::SHA.

This was [perl #85932] and has been forwarded upstream as
[rt.cpan.org #80157]. The code is a near-verbatim copy of how
the same problem has been solved in Digest::MD5 since 2001.

After this change, the core build is now working again (slowly!)
on OpenVMS VAX.
-----------------------------------------------------------------------

Summary of changes:
cpan/Digest-SHA/Makefile.PL | 16 ++++++++++++++--
cpan/Digest-SHA/lib/Digest/SHA.pm | 2 +-
2 files changed, 15 insertions(+), 3 deletions(-)

diff --git a/cpan/Digest-SHA/Makefile.PL b/cpan/Digest-SHA/Makefile.PL
index 2d2ecd5..e9f4986 100644
--- a/cpan/Digest-SHA/Makefile.PL
+++ b/cpan/Digest-SHA/Makefile.PL
@@ -3,7 +3,7 @@ require 5.003000;
use strict;
use ExtUtils::MakeMaker;
use Getopt::Std;
-use Config;
+use Config qw(%Config);

my $PM = 'lib/Digest/SHA.pm';

@@ -23,9 +23,20 @@ push(@defines, '-DNO_SHA_384_512') if $opts{'x'};
if ($Config{archname} =~ /^i[3456]86/) {
push(@defines, '-DSHA_STO_CLASS=static') unless $opts{'t'};
}
-
my $define = join(' ', @defines);

+ # Workaround for DEC compiler bug, adopted 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)");
+ }
+ }
+}
+
my %att = (
'NAME' => 'Digest::SHA',
'VERSION_FROM' => $PM,
@@ -34,6 +45,7 @@ my %att = (
'INC' => '-I.',
'EXE_FILES' => [ 'shasum' ],
'INSTALLDIRS' => ($] >= 5.010 and $] < 5.011) ? 'perl' : 'site',
+ @extra,
);

my $MMversion = $ExtUtils::MakeMaker::VERSION || 0;
diff --git a/cpan/Digest-SHA/lib/Digest/SHA.pm b/cpan/Digest-SHA/lib/Digest/SHA.pm
index cf1cb66..4b36aca 100644
--- a/cpan/Digest-SHA/lib/Digest/SHA.pm
+++ b/cpan/Digest-SHA/lib/Digest/SHA.pm
@@ -7,7 +7,7 @@ use vars qw($VERSION @ISA @EXPORT @EXPORT_OK);
use Fcntl;
use integer;

-$VERSION = '5.72';
+$VERSION = '5.72_01';

require Exporter;
require DynaLoader;

--
Perl5 Master Repository
0 new messages