Change 33347 by [EMAIL PROTECTED] on 2008/02/22 17:10:50

        Correct large files / lseek size & type settings in Win32 canned 
configs.
        
        Change 25208 switched off USE_LARGE_FILES in win32/config_H.* but left
        LSEEKSIZE/Off_t_size and Off_t as 8 and __int64 (or long long)
        respectively. Similarly change 25215 switched off uselargefiles in
        win32/config.* but left lseeksize and lseektype as 8 and __int64 (or
        long long) respectively. Change 25216 fixed the Borland settings in
        win32/config.bc on the basis that Borland should always be using 4 and
        long, but really all the other files should be using 4 and long for
        their default values as well to match the default values of
        USE_LARGE_FILES and uselargefiles. Having done that, we must then
        reverse the logic for fiddling with these values in win32/config_sh.PL:
        they are now changed to 8 and __int64 (or long long) if uselargefiles
        *is* defined (except for Borland, which always wants 4 and long).

Affected files ...

... //depot/perl/win32/config.gc#177 edit
... //depot/perl/win32/config.vc#186 edit
... //depot/perl/win32/config.vc64#56 edit
... //depot/perl/win32/config_H.bc#178 edit
... //depot/perl/win32/config_H.gc#172 edit
... //depot/perl/win32/config_H.vc#175 edit
... //depot/perl/win32/config_H.vc64#57 edit
... //depot/perl/win32/config_sh.PL#44 edit

Differences ...

==== //depot/perl/win32/config.gc#177 (text) ====
Index: perl/win32/config.gc
--- perl/win32/config.gc#176~33345~     2008-02-22 04:19:44.000000000 -0800
+++ perl/win32/config.gc        2008-02-22 09:10:50.000000000 -0800
@@ -756,8 +756,8 @@
 lp=''
 lpr=''
 ls='dir'
-lseeksize='8'
-lseektype='long long'
+lseeksize='4'
+lseektype='long'
 mad='undef'
 madlyh=''
 madlyobj=''

==== //depot/perl/win32/config.vc#186 (text) ====
Index: perl/win32/config.vc
--- perl/win32/config.vc#185~33345~     2008-02-22 04:19:44.000000000 -0800
+++ perl/win32/config.vc        2008-02-22 09:10:50.000000000 -0800
@@ -756,8 +756,8 @@
 lp=''
 lpr=''
 ls='dir'
-lseeksize='8'
-lseektype='__int64'
+lseeksize='4'
+lseektype='long'
 mad='undef'
 madlyh=''
 madlyobj=''

==== //depot/perl/win32/config.vc64#56 (text) ====
Index: perl/win32/config.vc64
--- perl/win32/config.vc64#55~33345~    2008-02-22 04:19:44.000000000 -0800
+++ perl/win32/config.vc64      2008-02-22 09:10:50.000000000 -0800
@@ -756,8 +756,8 @@
 lp=''
 lpr=''
 ls='dir'
-lseeksize='8'
-lseektype='__int64'
+lseeksize='4'
+lseektype='long'
 mad='undef'
 madlyh=''
 madlyobj=''

==== //depot/perl/win32/config_H.bc#178 (text+w) ====
Index: perl/win32/config_H.bc
--- perl/win32/config_H.bc#177~33054~   2008-01-23 04:00:21.000000000 -0800
+++ perl/win32/config_H.bc      2008-02-22 09:10:50.000000000 -0800
@@ -3723,9 +3723,9 @@
 /* Off_t_size:
  *     This symbol holds the number of bytes used by the Off_t.
  */
-#define Off_t __int64          /* <offset> type */
-#define LSEEKSIZE 8            /* <offset> size */
-#define Off_t_size 8   /* <offset> size */
+#define Off_t long             /* <offset> type */
+#define LSEEKSIZE 4            /* <offset> size */
+#define Off_t_size 4   /* <offset> size */
 
 /* PERL_MAD:
  *     This symbol, if defined, indicates that the Misc Attribution

==== //depot/perl/win32/config_H.gc#172 (text+w) ====
Index: perl/win32/config_H.gc
--- perl/win32/config_H.gc#171~33054~   2008-01-23 04:00:21.000000000 -0800
+++ perl/win32/config_H.gc      2008-02-22 09:10:50.000000000 -0800
@@ -3739,13 +3739,9 @@
 /* Off_t_size:
  *     This symbol holds the number of bytes used by the Off_t.
  */
-#ifndef _MSC_VER
-#   define Off_t long long             /* <offset> type */
-#else
-#   define Off_t __int64               /* <offset> type */
-#endif
-#define LSEEKSIZE 8            /* <offset> size */
-#define Off_t_size 8   /* <offset> size */
+#define Off_t long             /* <offset> type */
+#define LSEEKSIZE 4            /* <offset> size */
+#define Off_t_size 4   /* <offset> size */
 
 /* PERL_MAD:
  *     This symbol, if defined, indicates that the Misc Attribution

==== //depot/perl/win32/config_H.vc#175 (text+w) ====
Index: perl/win32/config_H.vc
--- perl/win32/config_H.vc#174~33054~   2008-01-23 04:00:21.000000000 -0800
+++ perl/win32/config_H.vc      2008-02-22 09:10:50.000000000 -0800
@@ -3735,13 +3735,9 @@
 /* Off_t_size:
  *     This symbol holds the number of bytes used by the Off_t.
  */
-#ifndef __GNUC__
-#   define Off_t __int64               /* <offset> type */
-#else
-#   define Off_t long long             /* <offset> type */
-#endif
-#define LSEEKSIZE 8            /* <offset> size */
-#define Off_t_size 8   /* <offset> size */
+#define Off_t long             /* <offset> type */
+#define LSEEKSIZE 4            /* <offset> size */
+#define Off_t_size 4   /* <offset> size */
 
 /* PERL_MAD:
  *     This symbol, if defined, indicates that the Misc Attribution

==== //depot/perl/win32/config_H.vc64#57 (text) ====
Index: perl/win32/config_H.vc64
--- perl/win32/config_H.vc64#56~33054~  2008-01-23 04:00:21.000000000 -0800
+++ perl/win32/config_H.vc64    2008-02-22 09:10:50.000000000 -0800
@@ -3723,9 +3723,9 @@
 /* Off_t_size:
  *     This symbol holds the number of bytes used by the Off_t.
  */
-#define Off_t __int64          /* <offset> type */
-#define LSEEKSIZE 8            /* <offset> size */
-#define Off_t_size 8   /* <offset> size */
+#define Off_t long             /* <offset> type */
+#define LSEEKSIZE 4            /* <offset> size */
+#define Off_t_size 4   /* <offset> size */
 
 /* PERL_MAD:
  *     This symbol, if defined, indicates that the Misc Attribution

==== //depot/perl/win32/config_sh.PL#44 (text) ====
Index: perl/win32/config_sh.PL
--- perl/win32/config_sh.PL#43~31569~   2007-07-09 04:43:09.000000000 -0700
+++ perl/win32/config_sh.PL     2008-02-22 09:10:50.000000000 -0800
@@ -117,9 +117,18 @@
     $opt{d_link} = 'undef';
 }
 
-if ($opt{uselargefiles} ne 'define') {
-    $opt{lseeksize} = 4;
-    $opt{lseektype} = 'off_t';
+# change the lseeksize and lseektype from their canned default values (which
+# are set-up for a non-uselargefiles build) if we are building with
+# uselargefiles. don't do this for bcc32: the code contains special handling
+# for bcc32 and the lseeksize and lseektype should not be changed.
+if ($opt{uselargefiles} eq 'define' and $opt{cc} ne 'bcc32') {
+    $opt{lseeksize} = 8;
+    if ($opt{cc} eq 'cl') {
+       $opt{lseektype} = '__int64';
+    }
+    elsif ($opt{cc} eq 'gcc') {
+       $opt{lseektype} = 'long long';
+    }
 }
 
 if ($opt{useithreads} eq 'define' && $opt{ccflags} =~ /-DPERL_IMPLICIT_SYS\b/) 
{
End of Patch.

Reply via email to