From b88b62dec99cec327c6bae67ef4d3a8bc5b601ca Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Tue, 26 Mar 2013 10:21:27 +0200 Subject: Fix more incompatibilities between MinGW.org and MinGW64 headers Reported by ׃scar Fuentes in http://lists.gnu.org/archive/html/emacs-devel/2013-03/msg00699.html and in http://lists.gnu.org/archive/html/emacs-devel/2013-03/msg00707.html. nt/inc/ms-w32.h (USE_NO_MINGW_SETJMP_TWO_ARGS) [_W64]: Define to 1. For MinGW64, include sys/types.h and time.h. nt/inc/sys/time.h (struct timeval) [!_W64]: Guard definition with _W64. (struct timezone) [!_TIMEZONE_DEFINED]: Guard definition with _TIMEZONE_DEFINED. nt/addpm.c (_WIN32_IE) [_W64]: For MinGW64, don't define to 0x400. nt/inc/sys/stat.h: Remove _CRTIMP from prototypes of fstat, stat, lstat, and fstatat. lib-src/ntlib.c (struct timespec) [!_TIMEZONE_DEFINED]: Define the struct only if _TIMEZONE_DEFINED is not defined. src/w32term.c (WCRANGE, GLYPHSET): Don't define if _W64 is defined. src/w32.c (REPARSE_DATA_BUFFER): Guard with MAXIMUM_REPARSE_DATA_BUFFER_SIZE being defined. --- lib-src/ntlib.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'lib-src/ntlib.c') diff --git a/lib-src/ntlib.c b/lib-src/ntlib.c index f43117457cb..849abc2ede5 100644 --- a/lib-src/ntlib.c +++ b/lib-src/ntlib.c @@ -34,11 +34,15 @@ along with GNU Emacs. If not, see . */ #include "ntlib.h" +/* MinGW64 defines _TIMEZONE_DEFINED and defines 'struct timespec' in + its system headers. */ +#ifndef _TIMEZONE_DEFINED struct timezone { int tz_minuteswest; /* minutes west of Greenwich */ int tz_dsttime; /* type of dst correction */ }; +#endif #define MAXPATHLEN _MAX_PATH -- cgit v1.2.1