aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorEli Zaretskii2013-03-26 10:21:27 +0200
committerEli Zaretskii2013-03-26 10:21:27 +0200
commitb88b62dec99cec327c6bae67ef4d3a8bc5b601ca (patch)
tree2d3d5acaabe9d9e124c90bfae57bddf3dc355c19 /src
parent69b2c07eaf592dee54ccd9bdb5f38dce88d1f221 (diff)
downloademacs-b88b62dec99cec327c6bae67ef4d3a8bc5b601ca.tar.gz
emacs-b88b62dec99cec327c6bae67ef4d3a8bc5b601ca.zip
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.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog8
-rw-r--r--src/w32.c2
-rw-r--r--src/w32term.c5
3 files changed, 12 insertions, 3 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 107d2af866b..669c8e99a27 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,11 @@
12013-03-26 Eli Zaretskii <eliz@gnu.org>
2
3 Fix incompatibilities between MinGW.org and MinGW64 headers.
4 * w32term.c (WCRANGE, GLYPHSET): Don't define if _W64 is defined.
5
6 * w32.c (REPARSE_DATA_BUFFER): Guard with
7 MAXIMUM_REPARSE_DATA_BUFFER_SIZE being defined.
8
12013-03-25 Jan Djärv <jan.h.d@swipnet.se> 92013-03-25 Jan Djärv <jan.h.d@swipnet.se>
2 10
3 * xterm.c: Include X11/XKBlib.h 11 * xterm.c: Include X11/XKBlib.h
diff --git a/src/w32.c b/src/w32.c
index 647faf94ef1..f34d98bc1b8 100644
--- a/src/w32.c
+++ b/src/w32.c
@@ -127,7 +127,7 @@ typedef struct _PROCESS_MEMORY_COUNTERS_EX {
127#define SDDL_REVISION_1 1 127#define SDDL_REVISION_1 1
128#endif /* SDDL_REVISION_1 */ 128#endif /* SDDL_REVISION_1 */
129 129
130#ifdef _MSC_VER 130#ifndef MAXIMUM_REPARSE_DATA_BUFFER_SIZE
131/* MSVC doesn't provide the definition of REPARSE_DATA_BUFFER and the 131/* MSVC doesn't provide the definition of REPARSE_DATA_BUFFER and the
132 associated macros, except on ntifs.h, which cannot be included 132 associated macros, except on ntifs.h, which cannot be included
133 because it triggers conflicts with other Windows API headers. So 133 because it triggers conflicts with other Windows API headers. So
diff --git a/src/w32term.c b/src/w32term.c
index e02b5a61229..5f7952c2ec2 100644
--- a/src/w32term.c
+++ b/src/w32term.c
@@ -109,9 +109,10 @@ struct w32_display_info *x_display_list;
109Lisp_Object w32_display_name_list; 109Lisp_Object w32_display_name_list;
110 110
111 111
112#if _WIN32_WINNT < 0x0500 112#if _WIN32_WINNT < 0x0500 && !defined(_W64)
113/* Pre Windows 2000, this was not available, but define it here so 113/* Pre Windows 2000, this was not available, but define it here so
114 that Emacs compiled on such a platform will run on newer versions. */ 114 that Emacs compiled on such a platform will run on newer versions.
115 MinGW64 (_W64) defines these unconditionally, so avoid redefining. */
115 116
116typedef struct tagWCRANGE 117typedef struct tagWCRANGE
117{ 118{