Subject: Proposed solution for Bug 3598300 on MacOSX

From: "jan.nijtmans" <[email-masked]>
Date: Fri, 18 Jan 2013 15:07:18 +0000

---
 generic/tcl.h      | 3 +--
 generic/tclPort.h  | 5 +----
 unix/tclUnixFCmd.c | 2 +-
 unix/tclUnixPort.h | 2 +-
 4 files changed, 4 insertions(+), 8 deletions(-)

diff --git a/generic/tcl.h b/generic/tcl.h
index 33730d4..5b23694 100644
--- a/generic/tcl.h
+++ b/generic/tcl.h
@@ -327,7 +327,6 @@ typedef long LONG;
 #	undef TCL_WIDE_INT_IS_LONG
 #	undef TCL_CFG_DO64BIT
 #    endif /* __LP64__ */
-#    undef HAVE_STRUCT_STAT64
 #endif /* __APPLE__ */
 
 /*
@@ -436,7 +435,7 @@ typedef unsigned TCL_WIDE_INT_TYPE	Tcl_WideUInt;
 	struct {long tv_sec;} st_ctim;
 	/* Here is a 4-byte gap */
     } Tcl_StatBuf;
-#elif defined(HAVE_STRUCT_STAT64)
+#elif defined(HAVE_STRUCT_STAT64) && !defined(__APPLE__)
     typedef struct stat64 Tcl_StatBuf;
 #else
     typedef struct stat Tcl_StatBuf;
diff --git a/generic/tclPort.h b/generic/tclPort.h
index 198ee76..12a60db 100644
--- a/generic/tclPort.h
+++ b/generic/tclPort.h
@@ -19,13 +19,10 @@
 #endif
 #if defined(_WIN32)
 #   include "tclWinPort.h"
-#elif !defined(MAC_OSX_TCL)
+#else
 #   include "tclUnixPort.h"
 #endif
 #include "tcl.h"
-#if defined(MAC_OSX_TCL)
-#   include "tclUnixPort.h"
-#endif
 
 #if !defined(LLONG_MIN)
 #   ifdef TCL_WIDE_INT_IS_LONG
diff --git a/unix/tclUnixFCmd.c b/unix/tclUnixFCmd.c
index 79f115e..d655990 100644
--- a/unix/tclUnixFCmd.c
+++ b/unix/tclUnixFCmd.c
@@ -232,7 +232,7 @@ MODULE_SCOPE long tclMacOSXDarwinRelease;
 #endif /* NO_REALPATH */
 
 #ifdef HAVE_FTS
-#ifdef HAVE_STRUCT_STAT64
+#if defined(HAVE_STRUCT_STAT64) && !defined(__APPLE__)
 /* fts doesn't do stat64 */
 #define noFtsStat 1
 #elif defined(__APPLE__) && defined(__LP64__) && \
diff --git a/unix/tclUnixPort.h b/unix/tclUnixPort.h
index 99c564b..7cfeec0 100644
--- a/unix/tclUnixPort.h
+++ b/unix/tclUnixPort.h
@@ -100,7 +100,7 @@ typedef off_t		Tcl_SeekOffset;
     extern char **__cygwin_environ;
     extern int TclOSstat(const char *name, void *statBuf);
     extern int TclOSlstat(const char *name, void *statBuf);
-#elif defined(HAVE_STRUCT_STAT64)
+#elif defined(HAVE_STRUCT_STAT64) && !defined(__APPLE__)
 #   define TclOSstat		stat64
 #   define TclOSlstat		lstat64
 #else
-- 
cgit v0.12