Refine Win32's s{GM|LOCAL}TIME_{min|max} values based on the output of
[p5sagit/p5-mst-13.2.git] / win32 / config_sh.PL
index 99d6a22..2cdd155 100644 (file)
@@ -78,7 +78,7 @@ if (-e $patch_file) {
 $opt{VERSION} = "$opt{PERL_REVISION}.$opt{PERL_VERSION}.$opt{PERL_SUBVERSION}";
 $opt{INST_VER} =~ s|~VERSION~|$opt{VERSION}|g;
 $opt{'version_patchlevel_string'} = "version $opt{PERL_VERSION} subversion $opt{PERL_SUBVERSION}";
-$opt{'version_patchlevel_string'} .= " patchlevel $opt{PERL_PATCHLEVEL}" if exists $opt{PERL_PATCHLEVEL};
+$opt{'version_patchlevel_string'} .= " patch $opt{PERL_PATCHLEVEL}" if exists $opt{PERL_PATCHLEVEL};
 
 my $ver = `ver 2>nul`;
 if ($ver =~ /Version (\d+\.\d+)/) {
@@ -131,6 +131,17 @@ if ($opt{uselargefiles} eq 'define' and $opt{cc} ne 'bcc32') {
     }
 }
 
+# change the s{GM|LOCAL}TIME_{min|max} for VS2005 (aka VC 8) and
+# VS2008 (aka VC 9) or higher (presuming that later versions will have
+# at least the range of that).
+if ($opt{cc} eq 'cl' and $opt{ccversion} =~ /^(\d+)/) {
+    my $ccversion = $1;
+    if ($ccversion >= 14) {
+       $opt{sGMTIME_max} = 32535291599;
+       $opt{sLOCALTIME_max} = 32535244799;
+    }
+}
+
 if ($opt{useithreads} eq 'define' && $opt{ccflags} =~ /-DPERL_IMPLICIT_SYS\b/) {
     $opt{d_pseudofork} = 'define';
 }