---------- Forwarded message ----------
Date: Wed, 27 Jun 2001 14:03:22 -0700 (PDT)
From: Peter Prymmer <[EMAIL PROTECTED]>
To: Robert Alan Byer <[EMAIL PROTECTED]>
Subject: RE: MD5.c and DEC C 5.3 on the VAX



On Wed, 27 Jun 2001, Robert Alan Byer wrote:

> >I cannot convince myself that we ought to be trying to compile Digest::MD5
> >on the VAX with DEC C and CCVERSION .le. 50390006.  Can anyone else refute
> >this assertion?
> >
> 
> I seem to recall a similar problem when I was doing the port of OpenSSL to 
> OpenVMS for VAX & Alpha and I THINK as I recall I had to use "/OPTIMIZE=(
> NODISJOINT) to get things to compile correctly.
> 
> I also believe that the above is used to compile the MD5 parts in the OSU 
> HTTPD server.
> 
> Just my $0.02 worth.

An excellent suggestion - It works!  

I am now in the process of testing this patch to
ext/Digest/MD5/Makefile.PL (the genereated descrip.mms on the VAX had the
correct OPTIMIZE macro, my dirty build tree tends to rule out a rebuild
and I have not tested this on any other platfomr yet):

--- ext/Digest/MD5/Makefile.PL.orig     Tue Jun 26 06:26:53 2001
+++ ext/Digest/MD5/Makefile.PL  Wed Jun 27 13:59:10 2001
@@ -10,6 +10,14 @@
        if !($Config{'byteorder'} eq '1234' ||
             $Config{'byteorder'} eq '4321');
 }
+my @optimize = ();
+if ($^O eq 'VMS') {
+    if (defined($Config{ccname})) {
+        if ($Config{ccversion} <= 50390006 && grep(/VMS_VAX/, @INC) && 
+($Config{ccname} eq 'DEC')) {
+            @optimize = ("OPTIMIZE","/Optimize=(NODISJOINT)");
+        }
+    }
+}
 
 WriteMakefile(
     'NAME'        => 'Digest::MD5',
@@ -17,6 +25,7 @@
     MAN3PODS    => {},  # Pods will be built by installman.
     @extra,
     'dist'         => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', },
+    @optimize
 );
 exit;
 
End of Patch.

Peter Prymmer



Reply via email to