aboutsummaryrefslogtreecommitdiffstats
path: root/nt
diff options
context:
space:
mode:
authorEli Zaretskii2013-03-28 20:13:59 +0200
committerEli Zaretskii2013-03-28 20:13:59 +0200
commitd76bf86f438d4f5f9fe493ab76f02ffc78f3ae2e (patch)
tree04fa8bc7bd2058a316a7ee30f8741d25bfd0b060 /nt
parent2ef26ceb192c7683754cf0b4aa3087f501254332 (diff)
parente74aeda863cd6896e06e92586f87b45d63d67d15 (diff)
downloademacs-d76bf86f438d4f5f9fe493ab76f02ffc78f3ae2e.tar.gz
emacs-d76bf86f438d4f5f9fe493ab76f02ffc78f3ae2e.zip
Merge from trunk and resolve conflicts.
Diffstat (limited to 'nt')
-rw-r--r--nt/ChangeLog206
-rw-r--r--nt/INSTALL14
-rw-r--r--nt/README2
-rw-r--r--nt/README.W322
-rw-r--r--nt/addpm.c13
-rw-r--r--nt/addsection.c4
-rw-r--r--nt/cmdproxy.c2
-rw-r--r--nt/config.nt210
-rwxr-xr-xnt/configure.bat2
-rw-r--r--nt/ddeclient.c2
-rw-r--r--nt/emacs.rc6
-rw-r--r--nt/emacsclient.rc2
-rw-r--r--nt/envadd.bat2
-rw-r--r--nt/gmake.defs2
-rw-r--r--nt/icons/README6
-rw-r--r--nt/inc/dirent.h2
-rw-r--r--nt/inc/grp.h2
-rw-r--r--nt/inc/inttypes.h2
-rw-r--r--nt/inc/langinfo.h2
-rw-r--r--nt/inc/ms-w32.h85
-rw-r--r--nt/inc/nl_types.h2
-rw-r--r--nt/inc/stdint.h4
-rw-r--r--nt/inc/sys/acl.h25
-rw-r--r--nt/inc/sys/socket.h2
-rw-r--r--nt/inc/sys/stat.h18
-rw-r--r--nt/inc/sys/time.h6
-rw-r--r--nt/inc/sys/wait.h2
-rw-r--r--nt/inc/unistd.h6
-rw-r--r--nt/makefile.w32-in26
-rw-r--r--nt/multi-install-info.bat2
-rw-r--r--nt/nmake.defs4
-rw-r--r--nt/paths.h4
-rw-r--r--nt/preprep.c4
-rw-r--r--nt/runemacs.c2
-rw-r--r--nt/zipdist.bat2
35 files changed, 521 insertions, 156 deletions
diff --git a/nt/ChangeLog b/nt/ChangeLog
index 0e66f723a2c..03bd86a3216 100644
--- a/nt/ChangeLog
+++ b/nt/ChangeLog
@@ -1,3 +1,207 @@
12013-03-27 Eli Zaretskii <eliz@gnu.org>
2
3 * makefile.w32-in (all-other-dirs-nmake, all-other-dirs-gmake)
4 (bootstrap, bootstrap-nmake, bootstrap-gmake, install-addpm):
5 Depend on .exe files.
6
7 * inc/ms-w32.h (sys_localtime) [_W64]: Provide a prototype, to
8 avoid MinGW64 compiler warnings in editfns.c.
9
10 Fix rules for parallel builds.
11 * makefile.w32-in (ALL): Depend on *.exe files, not on phony names
12 without the .exe suffix.
13 (addpm, ddeclient, cmdproxy, addsection, preprep): Remove phony
14 targets.
15 (.PHONY): Remove.
16
17 * addpm.c (_WIN32_IE) [_W64]: Move after inclusion of standard
18 headers, since that's where _W64 is declared by MinGW64.
19
202013-03-26 Eli Zaretskii <eliz@gnu.org>
21
22 * inc/ms-w32.h (USE_NO_MINGW_SETJMP_TWO_ARGS): Don't define.
23 (HAVE__SETJMP) [_W64]: Undefine for MinGW64.
24
25 * addsection.c (_ANONYMOUS_UNION, _ANONYMOUS_STRUCT): Do not
26 define for MinGW64.
27
28 * preprep.c (_ANONYMOUS_UNION, _ANONYMOUS_STRUCT): Do not define
29 for MinGW64.
30
31 Fix more incompatibilities between MinGW.org and MinGW64 headers
32 reported by Óscar Fuentes in
33 http://lists.gnu.org/archive/html/emacs-devel/2013-03/msg00733.html
34 http://lists.gnu.org/archive/html/emacs-devel/2013-03/msg00699.html
35 and in
36 http://lists.gnu.org/archive/html/emacs-devel/2013-03/msg00707.html.
37 * inc/ms-w32.h (USE_NO_MINGW_SETJMP_TWO_ARGS) [_W64]: Define to 1.
38 For MinGW64, include sys/types.h and time.h.
39 (_WIN32_WINNT) [!_W64]: Don't define for MinGW64.
40
41 * inc/sys/stat.h (chmod): Remove _CRTIMP from prototype.
42
43 * inc/sys/time.h (struct timeval) [!_W64]: Guard definition with
44 _W64.
45 (struct timezone) [!_TIMEZONE_DEFINED]: Guard definition with
46 _TIMEZONE_DEFINED.
47
48 * addpm.c (_WIN32_IE) [_W64]: For MinGW64, don't define to 0x400.
49
50 * inc/sys/stat.h: Remove _CRTIMP from prototypes of fstat, stat,
51 lstat, and fstatat.
52
532013-03-25 Eli Zaretskii <eliz@gnu.org>
54
55 Fix incompatibilities between MinGW.org and MinGW64 headers
56 reported by Óscar Fuentes in
57 http://lists.gnu.org/archive/html/emacs-devel/2013-03/msg00611.html.
58 * inc/ms-w32.h (struct timespec): Don't define if
59 _TIMESPEC_DEFINED is already defined.
60 (sigset_t) [!_POSIX]: Typedef for MinGW64.
61 (_WIN32_WINNT, WIN32_LEAN_AND_MEAN): Move definitions before
62 including the first system header, to avoid redefinition if some
63 system header defines a default value.
64
65 * inc/sys/time.h (struct itimerval): Don't define if
66 _TIMESPEC_DEFINED is already defined.
67
682013-03-16 Eli Zaretskii <eliz@gnu.org>
69
70 Fix the MSVC build. (Bug#13939)
71 * inc/stdint.h (UINTPTR_MAX): Define.
72
73 * nmake.defs (libc): Fix syntax of !if conditional.
74
752013-03-15 Juanma Barranquero <lekktu@gmail.com>
76
77 * config.nt: Sync with autogen/config.in.
78 (BSD_SYSTEM, BSD_SYSTEM_AHB, HAVE_ALARM, HAVE__PUTENV): Remove.
79 (HAVE_DECL_ALARM, HAVE_DECL_FDATASYNC, HAVE_DECL__PUTENV)
80 (HAVE_FDATASYNC): New macros.
81
822013-03-13 Paul Eggert <eggert@cs.ucla.edu>
83
84 File synchronization fixes (Bug#13944).
85 * inc/ms-w32.h (fdatasync): New macro, suggested by Eli Zaretskii.
86
872013-03-05 Paul Eggert <eggert@cs.ucla.edu>
88
89 FILE's lock is now always .#FILE and may be a regular file (Bug#13807).
90 * inc/unistd.h (O_NOFOLLOW): New macro.
91
922013-03-04 Juanma Barranquero <lekktu@gmail.com>
93
94 * config.nt: Sync with autogen/config.in.
95 (DATA_START, ORDINARY_LINK): Remove.
96 (HAVE_DATA_START, HAVE__PUTENV): New macros.
97
982013-02-25 Eli Zaretskii <eliz@gnu.org>
99
100 * inc/ms-w32.h (BOOT_TIME_FILE): Define.
101
102 * config.nt (CLASH_DETECTION): Define to 1.
103
1042013-02-16 Eli Zaretskii <eliz@gnu.org>
105
106 * inc/ms-w32.h (__STDC__): Fiddle with value only for MSVC.
107 (Bug#9066)
108 (chown, logb): Remove, unused.
109
1102013-02-13 Juanma Barranquero <lekktu@gmail.com>
111
112 * config.nt: Sync with autogen/config.in.
113 (GC_MARK_STACK): Remove.
114 (GNULIB_FDOPENDIR, HAVE_DECL_FDOPENDIR, HAVE_DECL_MEMRCHR)
115 (HAVE_DIRENT_H, HAVE_FDOPENDIR, HAVE_FSTATAT, HAVE_MEMRCHR)
116 (HAVE_WORKING_FSTATAT_ZERO_FLAG, _NETBSD_SOURCE): New macros.
117
1182013-02-12 Eli Zaretskii <eliz@gnu.org>
119
120 * inc/ms-w32.h: Add prototype for memrchr.
121
1222013-02-01 Paul Eggert <eggert@cs.ucla.edu>
123
124 Use fdopendir, fstatat and readlinkat, for efficiency (Bug#13539).
125 * inc/sys/stat.h (fstatat):
126 * inc/unistd.h (readlinkat): New decls.
127
1282013-01-28 Eli Zaretskii <eliz@gnu.org>
129
130 * inc/dirent.h (opendir): Update prototype.
131
1322013-01-11 Eli Zaretskii <eliz@gnu.org>
133
134 * inc/unistd.h (O_IGNORE_CTTY): Define, as it is unconditionally
135 used in term.c. (Bug#13387)
136
1372013-01-09 Juanma Barranquero <lekktu@gmail.com>
138
139 * config.nt: Sync with autogen/config.in.
140 (HAVE_GTK_HANDLE_BOX_NEW, HAVE_GTK_TEAROFF_MENU_ITEM_NEW): New macros.
141
1422012-12-24 Eli Zaretskii <eliz@gnu.org>
143
144 * inc/sys/stat.h (S_ISMPX): Define to zero, to accommodate changes
145 in lib/filemode.c that broke the MS-Windows build.
146 Suggested by Andy Moreton <andrewjmoreton@gmail.com>.
147
1482012-12-17 Juanma Barranquero <lekktu@gmail.com>
149
150 * config.nt: Sync with autogen/config.in.
151 (BSD4_2): Remove.
152
1532012-12-17 Eli Zaretskii <eliz@gnu.org>
154
155 * inc/sys/acl.h: New file.
156
157 * inc/ms-w32.h (ENOTSUP): Define if undefined.
158
159 * config.nt (HAVE_POSIX_ACL): Define.
160
1612012-12-15 Eli Zaretskii <eliz@gnu.org>
162
163 * inc/ms-w32.h (sys_unlink): Provide prototype.
164
1652012-12-14 Eli Zaretskii <eliz@gnu.org>
166
167 * inc/sys/stat.h: Declare w32_stat_get_owner_group.
168
1692012-12-13 Juanma Barranquero <lekktu@gmail.com>
170
171 * config.nt: Sync with autogen/config.in.
172 (HAVE_INOTIFY, HAVE_SYS_INOTIFY_H): New macros.
173
1742012-12-11 Juanma Barranquero <lekktu@gmail.com>
175
176 * config.nt: Sync with autogen/config.in.
177 (HAVE_DECL_UNSETENV, HAVE_SIG2STR, VOID_UNSETENV): New macros.
178 (ULIMIT_BREAK_VALUE): Remove.
179
1802012-12-10 Daniel Colascione <dancol@dancol.org>
181
182 * emacs.rc: Use forward slashes in relative paths in order to
183 avoid complaints from Cygwin. (Forward slashes work perfectly
184 well in the NT build.)
185
1862012-12-09 Eli Zaretskii <eliz@gnu.org>
187
188 * inc/unistd.h (unsetenv): Provide a prototype.
189
1902012-12-08 Eli Zaretskii <eliz@gnu.org>
191
192 * inc/ms-w32.h (putenv): Redirect to sys_putenv.
193 (sys_putenv): Add prototype.
194
195 * config.nt (HAVE_UNSETENV): Define to 1.
196
1972012-12-01 Juanma Barranquero <lekktu@gmail.com>
198
199 * config.nt: Sync with autogen/config.in.
200
2012012-11-24 Ken Brown <kbrown@cornell.edu>
202
203 * config.nt (HAVE_MOUSE): Remove.
204
12012-11-23 Juanma Barranquero <lekktu@gmail.com> 2052012-11-23 Juanma Barranquero <lekktu@gmail.com>
2 206
3 * config.nt: Sync with autogen/config.in. 207 * config.nt: Sync with autogen/config.in.
@@ -2852,7 +3056,7 @@
2852;; add-log-time-zone-rule: t 3056;; add-log-time-zone-rule: t
2853;; End: 3057;; End:
2854 3058
2855 Copyright (C) 1995-1999, 2001-2012 Free Software Foundation, Inc. 3059 Copyright (C) 1995-1999, 2001-2013 Free Software Foundation, Inc.
2856 3060
2857 This file is part of GNU Emacs. 3061 This file is part of GNU Emacs.
2858 3062
diff --git a/nt/INSTALL b/nt/INSTALL
index 2293610adf3..0c4b50f0c28 100644
--- a/nt/INSTALL
+++ b/nt/INSTALL
@@ -1,7 +1,7 @@
1 Building and Installing Emacs on Windows 1 Building and Installing Emacs on Windows
2 (from 95 to 7 and beyond) 2 (from 95 to 7 and beyond)
3 3
4 Copyright (C) 2001-2012 Free Software Foundation, Inc. 4 Copyright (C) 2001-2013 Free Software Foundation, Inc.
5 See the end of the file for license conditions. 5 See the end of the file for license conditions.
6 6
7* For the impatient 7* For the impatient
@@ -110,12 +110,14 @@
110 WinZip is known to create some subtle and hard to debug problems, 110 WinZip is known to create some subtle and hard to debug problems,
111 such as converting files to DOS CR-LF format, not creating empty 111 such as converting files to DOS CR-LF format, not creating empty
112 directories, etc. We suggest to use djtarnt.exe from the GNU FTP 112 directories, etc. We suggest to use djtarnt.exe from the GNU FTP
113 site. 113 site. For modern formats, such as .tar.xz, we suggest bsdtar.exe
114 from the libarchive package; its precompiled Windows binaries are
115 available from this site:
116
117 http://sourceforge.net/projects/ezwinports/files/
114 118
115 In addition to this file, you should also read INSTALL.BZR in the 119 In addition to this file, if you build a development snapshot, you
116 parent directory, and make sure that you have a version of 120 should also read INSTALL.BZR in the parent directory.
117 "touch.exe" in your path, and that it will create files that do not
118 yet exist.
119 121
120* Supported development environments 122* Supported development environments
121 123
diff --git a/nt/README b/nt/README
index 483398698e4..c112c828fca 100644
--- a/nt/README
+++ b/nt/README
@@ -1,6 +1,6 @@
1 Emacs for Windows NT/2000 and Windows 95/98/ME 1 Emacs for Windows NT/2000 and Windows 95/98/ME
2 2
3 Copyright (C) 2001-2012 Free Software Foundation, Inc. 3 Copyright (C) 2001-2013 Free Software Foundation, Inc.
4 See the end of the file for license conditions. 4 See the end of the file for license conditions.
5 5
6 This directory contains support for compiling and running GNU Emacs on 6 This directory contains support for compiling and running GNU Emacs on
diff --git a/nt/README.W32 b/nt/README.W32
index e2197ba5adf..3e51b30af50 100644
--- a/nt/README.W32
+++ b/nt/README.W32
@@ -1,4 +1,4 @@
1Copyright (C) 2001-2012 Free Software Foundation, Inc. 1Copyright (C) 2001-2013 Free Software Foundation, Inc.
2See the end of the file for license conditions. 2See the end of the file for license conditions.
3 3
4 Emacs for Windows 4 Emacs for Windows
diff --git a/nt/addpm.c b/nt/addpm.c
index 361726b10e8..688e0167334 100644
--- a/nt/addpm.c
+++ b/nt/addpm.c
@@ -1,5 +1,5 @@
1/* Add entries to the GNU Emacs Program Manager folder. 1/* Add entries to the GNU Emacs Program Manager folder.
2 Copyright (C) 1995, 2001-2012 Free Software Foundation, Inc. 2 Copyright (C) 1995, 2001-2013 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
@@ -34,16 +34,21 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
34 installed, then the DDE fallback for creating icons the Windows 3.1 34 installed, then the DDE fallback for creating icons the Windows 3.1
35 progman way will be used instead, but that is prone to lockups 35 progman way will be used instead, but that is prone to lockups
36 caused by other applications not servicing their message queues. */ 36 caused by other applications not servicing their message queues. */
37#include <stdlib.h>
38#include <stdio.h>
39#include <malloc.h>
40
41/* MinGW64 defines _W64 and barfs if _WIN32_IE is defined to anything
42 below 0x500. */
43#ifndef _W64
37#define _WIN32_IE 0x400 44#define _WIN32_IE 0x400
45#endif
38/* Request C Object macros for COM interfaces. */ 46/* Request C Object macros for COM interfaces. */
39#define COBJMACROS 1 47#define COBJMACROS 1
40 48
41#include <windows.h> 49#include <windows.h>
42#include <shlobj.h> 50#include <shlobj.h>
43#include <ddeml.h> 51#include <ddeml.h>
44#include <stdlib.h>
45#include <stdio.h>
46#include <malloc.h>
47 52
48HDDEDATA CALLBACK 53HDDEDATA CALLBACK
49DdeCallback (UINT uType, UINT uFmt, HCONV hconv, 54DdeCallback (UINT uType, UINT uFmt, HCONV hconv,
diff --git a/nt/addsection.c b/nt/addsection.c
index d720dec428f..61a8cfce742 100644
--- a/nt/addsection.c
+++ b/nt/addsection.c
@@ -1,5 +1,5 @@
1/* Add an uninitialized data section to an executable. 1/* Add an uninitialized data section to an executable.
2 Copyright (C) 1999, 2001-2012 Free Software Foundation, Inc. 2 Copyright (C) 1999, 2001-2013 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
@@ -25,7 +25,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
25#include <stdio.h> 25#include <stdio.h>
26#include <fcntl.h> 26#include <fcntl.h>
27#include <time.h> 27#include <time.h>
28#ifdef __GNUC__ 28#if defined(__GNUC__) && !defined(_W64)
29#define _ANONYMOUS_UNION 29#define _ANONYMOUS_UNION
30#define _ANONYMOUS_STRUCT 30#define _ANONYMOUS_STRUCT
31#endif 31#endif
diff --git a/nt/cmdproxy.c b/nt/cmdproxy.c
index 7c522440072..7d810e3365c 100644
--- a/nt/cmdproxy.c
+++ b/nt/cmdproxy.c
@@ -1,5 +1,5 @@
1/* Proxy shell designed for use with Emacs on Windows 95 and NT. 1/* Proxy shell designed for use with Emacs on Windows 95 and NT.
2 Copyright (C) 1997, 2001-2012 Free Software Foundation, Inc. 2 Copyright (C) 1997, 2001-2013 Free Software Foundation, Inc.
3 3
4 Accepts subset of Unix sh(1) command-line options, for compatibility 4 Accepts subset of Unix sh(1) command-line options, for compatibility
5 with elisp code written for Unix. When possible, executes external 5 with elisp code written for Unix. When possible, executes external
diff --git a/nt/config.nt b/nt/config.nt
index ba63d2c4833..3d606258fc0 100644
--- a/nt/config.nt
+++ b/nt/config.nt
@@ -1,6 +1,6 @@
1/* GNU Emacs site configuration template file. 1/* GNU Emacs site configuration template file.
2 2
3Copyright (C) 1988, 1993-1994, 2001-2012 Free Software Foundation, Inc. 3Copyright (C) 1988, 1993-1994, 2001-2013 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
@@ -60,15 +60,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
60/* Define on FreeBSD to work around an issue when reading from a PTY. */ 60/* Define on FreeBSD to work around an issue when reading from a PTY. */
61#undef BROKEN_PTY_READ_AFTER_EAGAIN 61#undef BROKEN_PTY_READ_AFTER_EAGAIN
62 62
63/* Define if the system is compatible with BSD 4.2. */
64#undef BSD4_2
65
66/* Define if the system is compatible with BSD 4.2. */
67#undef BSD_SYSTEM
68
69/* Define if AH_BOTTOM should change BSD_SYSTEM. */
70#undef BSD_SYSTEM_AHB
71
72/* Define if Emacs cannot be dumped on your system. */ 63/* Define if Emacs cannot be dumped on your system. */
73#undef CANNOT_DUMP 64#undef CANNOT_DUMP
74 65
@@ -78,10 +69,10 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
78/* Define if you want lock files to be written, so that Emacs can tell 69/* Define if you want lock files to be written, so that Emacs can tell
79 instantly when you try to modify a file that someone else has modified in 70 instantly when you try to modify a file that someone else has modified in
80 his/her Emacs. */ 71 his/her Emacs. */
81#undef CLASH_DETECTION 72#define CLASH_DETECTION 1
82 73
83/* Short copyright string for this version of Emacs. */ 74/* Short copyright string for this version of Emacs. */
84#define COPYRIGHT "Copyright (C) 2012 Free Software Foundation, Inc." 75#define COPYRIGHT "Copyright (C) 2013 Free Software Foundation, Inc."
85 76
86/* Define to one of '_getb67', 'GETB67', 'getb67' for Cray-2 and Cray-YMP 77/* Define to one of '_getb67', 'GETB67', 'getb67' for Cray-2 and Cray-YMP
87 systems. This function is required for 'alloca.c' support on those systems. 78 systems. This function is required for 'alloca.c' support on those systems.
@@ -100,9 +91,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
100/* Extra bits to be or'd in with any pointers stored in a Lisp_Object. */ 91/* Extra bits to be or'd in with any pointers stored in a Lisp_Object. */
101#undef DATA_SEG_BITS 92#undef DATA_SEG_BITS
102 93
103/* Address of the start of the data segment. */
104#undef DATA_START
105
106/* Name of the default sound device. */ 94/* Name of the default sound device. */
107#undef DEFAULT_SOUND_DEVICE 95#undef DEFAULT_SOUND_DEVICE
108 96
@@ -167,10 +155,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
167/* Mark a secondary stack, like the register stack on the ia64. */ 155/* Mark a secondary stack, like the register stack on the ia64. */
168#undef GC_MARK_SECONDARY_STACK 156#undef GC_MARK_SECONDARY_STACK
169 157
170/* Define to GC_USE_GCPROS_AS_BEFORE if conservative garbage collection is not
171 known to work. */
172#define GC_MARK_STACK 1
173
174/* Define if setjmp is known to save all registers relevant for conservative 158/* Define if setjmp is known to save all registers relevant for conservative
175 garbage collection in the jmp_buf. 159 garbage collection in the jmp_buf.
176 MSVC ignores the "register" keyword, so test fails even though 160 MSVC ignores the "register" keyword, so test fails even though
@@ -204,6 +188,10 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
204#undef GNULIB_FACCESSAT 188#undef GNULIB_FACCESSAT
205 189
206/* Define to a C preprocessor expression that evaluates to 1 or 0, depending 190/* Define to a C preprocessor expression that evaluates to 1 or 0, depending
191 whether the gnulib module fdopendir shall be considered present. */
192#undef GNULIB_FDOPENDIR
193
194/* Define to a C preprocessor expression that evaluates to 1 or 0, depending
207 whether the gnulib module fscanf shall be considered present. */ 195 whether the gnulib module fscanf shall be considered present. */
208#undef GNULIB_FSCANF 196#undef GNULIB_FSCANF
209 197
@@ -230,9 +218,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
230/* Define to 1 if the file /usr/lpp/X11/bin/smt.exp exists. */ 218/* Define to 1 if the file /usr/lpp/X11/bin/smt.exp exists. */
231#undef HAVE_AIX_SMT_EXP 219#undef HAVE_AIX_SMT_EXP
232 220
233/* Define to 1 if you have the `alarm' function. */
234#undef HAVE_ALARM
235
236/* Define to 1 if you have 'alloca' after including <alloca.h>, a header that 221/* Define to 1 if you have 'alloca' after including <alloca.h>, a header that
237 may be supplied by this distribution. */ 222 may be supplied by this distribution. */
238#undef HAVE_ALLOCA 223#undef HAVE_ALLOCA
@@ -268,6 +253,10 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
268/* Define to 1 if you have the `copysign' function. */ 253/* Define to 1 if you have the `copysign' function. */
269#undef HAVE_COPYSIGN 254#undef HAVE_COPYSIGN
270 255
256/* Define to 1 if data_start is the address of the start of the main data
257 segment. */
258#undef HAVE_DATA_START
259
271/* Define to 1 if using D-Bus. */ 260/* Define to 1 if using D-Bus. */
272#undef HAVE_DBUS 261#undef HAVE_DBUS
273 262
@@ -289,6 +278,18 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
289/* Define to 1 if you have the `dbus_watch_get_unix_fd' function. */ 278/* Define to 1 if you have the `dbus_watch_get_unix_fd' function. */
290#undef HAVE_DBUS_WATCH_GET_UNIX_FD 279#undef HAVE_DBUS_WATCH_GET_UNIX_FD
291 280
281/* Define to 1 if you have the declaration of `alarm', and to 0 if you don't.
282 */
283#undef HAVE_DECL_ALARM
284
285/* Define to 1 if you have the declaration of `fdatasync', and to 0 if you
286 don't. */
287#undef HAVE_DECL_FDATASYNC
288
289/* Define to 1 if you have the declaration of `fdopendir', and to 0 if you
290 don't. */
291#undef HAVE_DECL_FDOPENDIR
292
292/* Define to 1 if you have the declaration of `getenv', and to 0 if you don't. 293/* Define to 1 if you have the declaration of `getenv', and to 0 if you don't.
293 */ 294 */
294#define HAVE_DECL_GETENV 1 295#define HAVE_DECL_GETENV 1
@@ -297,6 +298,10 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
297 don't. */ 298 don't. */
298#undef HAVE_DECL_LOCALTIME_R 299#undef HAVE_DECL_LOCALTIME_R
299 300
301/* Define to 1 if you have the declaration of `memrchr', and to 0 if you
302 don't. */
303#undef HAVE_DECL_MEMRCHR
304
300/* Define to 1 if you have the declaration of `strmode', and to 0 if you 305/* Define to 1 if you have the declaration of `strmode', and to 0 if you
301 don't. */ 306 don't. */
302#undef HAVE_DECL_STRMODE 307#undef HAVE_DECL_STRMODE
@@ -325,6 +330,14 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
325 */ 330 */
326#define HAVE_DECL_TZNAME 1 331#define HAVE_DECL_TZNAME 1
327 332
333/* Define to 1 if you have the declaration of `unsetenv', and to 0 if you
334 don't. */
335#undef HAVE_DECL_UNSETENV
336
337/* Define to 1 if you have the declaration of `_putenv', and to 0 if you
338 don't. */
339#undef HAVE_DECL__PUTENV
340
328/* Define to 1 if you have the declaration of `__fpending', and to 0 if you 341/* Define to 1 if you have the declaration of `__fpending', and to 0 if you
329 don't. */ 342 don't. */
330#undef HAVE_DECL___FPENDING 343#undef HAVE_DECL___FPENDING
@@ -342,6 +355,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
342/* Define to 1 if you have the `difftime' function. */ 355/* Define to 1 if you have the `difftime' function. */
343#undef HAVE_DIFFTIME 356#undef HAVE_DIFFTIME
344 357
358/* Define to 1 if you have the <dirent.h> header file. */
359#undef HAVE_DIRENT_H
360
345/* Define to 1 if you have the 'dup2' function. */ 361/* Define to 1 if you have the 'dup2' function. */
346#define HAVE_DUP2 1 362#define HAVE_DUP2 1
347 363
@@ -366,6 +382,12 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
366/* Define to 1 if you have the `faccessat' function. */ 382/* Define to 1 if you have the `faccessat' function. */
367#undef HAVE_FACCESSAT 383#undef HAVE_FACCESSAT
368 384
385/* Define to 1 if you have the `fdatasync' function. */
386#undef HAVE_FDATASYNC
387
388/* Define to 1 if you have the `fdopendir' function. */
389#undef HAVE_FDOPENDIR
390
369/* Define to 1 if you have the `fork' function. */ 391/* Define to 1 if you have the `fork' function. */
370#undef HAVE_FORK 392#undef HAVE_FORK
371 393
@@ -378,6 +400,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
378/* Define to 1 if fseeko (and presumably ftello) exists and is declared. */ 400/* Define to 1 if fseeko (and presumably ftello) exists and is declared. */
379#undef HAVE_FSEEKO 401#undef HAVE_FSEEKO
380 402
403/* Define to 1 if you have the `fstatat' function. */
404#undef HAVE_FSTATAT
405
381/* Define to 1 if you have the `fsync' function. */ 406/* Define to 1 if you have the `fsync' function. */
382#define HAVE_FSYNC 1 407#define HAVE_FSYNC 1
383 408
@@ -484,12 +509,18 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
484/* Define to 1 if you have the `gtk_file_selection_new' function. */ 509/* Define to 1 if you have the `gtk_file_selection_new' function. */
485#undef HAVE_GTK_FILE_SELECTION_NEW 510#undef HAVE_GTK_FILE_SELECTION_NEW
486 511
512/* Define to 1 if you have the `gtk_handle_box_new' function. */
513#undef HAVE_GTK_HANDLE_BOX_NEW
514
487/* Define to 1 if you have the `gtk_main' function. */ 515/* Define to 1 if you have the `gtk_main' function. */
488#undef HAVE_GTK_MAIN 516#undef HAVE_GTK_MAIN
489 517
490/* Define to 1 if you have the `gtk_orientable_set_orientation' function. */ 518/* Define to 1 if you have the `gtk_orientable_set_orientation' function. */
491#undef HAVE_GTK_ORIENTABLE_SET_ORIENTATION 519#undef HAVE_GTK_ORIENTABLE_SET_ORIENTATION
492 520
521/* Define to 1 if you have the `gtk_tearoff_menu_item_new' function. */
522#undef HAVE_GTK_TEAROFF_MENU_ITEM_NEW
523
493/* Define to 1 if you have the `gtk_widget_get_mapped' function. */ 524/* Define to 1 if you have the `gtk_widget_get_mapped' function. */
494#undef HAVE_GTK_WIDGET_GET_MAPPED 525#undef HAVE_GTK_WIDGET_GET_MAPPED
495 526
@@ -520,6 +551,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
520/* Define to 1 if you have inet sockets. */ 551/* Define to 1 if you have inet sockets. */
521#define HAVE_INET_SOCKETS 1 552#define HAVE_INET_SOCKETS 1
522 553
554/* Define to 1 to use inotify. */
555#undef HAVE_INOTIFY
556
523/* Define to 1 if you have the <inttypes.h> header file. */ 557/* Define to 1 if you have the <inttypes.h> header file. */
524#undef HAVE_INTTYPES_H 558#undef HAVE_INTTYPES_H
525 559
@@ -676,6 +710,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
676/* Define to 1 if you have the <memory.h> header file. */ 710/* Define to 1 if you have the <memory.h> header file. */
677#undef HAVE_MEMORY_H 711#undef HAVE_MEMORY_H
678 712
713/* Define to 1 if you have the `memrchr' function. */
714#undef HAVE_MEMRCHR
715
679/* Define to 1 if you have mouse menus. (This is automatic if you use X, but 716/* Define to 1 if you have mouse menus. (This is automatic if you use X, but
680 the option to specify it remains.) It is also defined with other window 717 the option to specify it remains.) It is also defined with other window
681 systems that support xmenu.c. */ 718 systems that support xmenu.c. */
@@ -687,9 +724,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
687/* Define to 1 if you have a working `mmap' system call. */ 724/* Define to 1 if you have a working `mmap' system call. */
688#undef HAVE_MMAP 725#undef HAVE_MMAP
689 726
690/* Define if you have mouse support. */
691#define HAVE_MOUSE 1
692
693/* Define to 1 if you have the `nanotime' function. */ 727/* Define to 1 if you have the `nanotime' function. */
694#undef HAVE_NANOTIME 728#undef HAVE_NANOTIME
695 729
@@ -721,6 +755,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
721/* Define to 1 if you have the <png.h> header file. */ 755/* Define to 1 if you have the <png.h> header file. */
722#undef HAVE_PNG_H 756#undef HAVE_PNG_H
723 757
758/* Define to 1 if using POSIX ACL support. */
759#define HAVE_POSIX_ACL 1
760
724/* Define to 1 if you have the `posix_memalign' function. */ 761/* Define to 1 if you have the `posix_memalign' function. */
725#undef HAVE_POSIX_MEMALIGN 762#undef HAVE_POSIX_MEMALIGN
726 763
@@ -793,6 +830,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
793/* Define to 1 if you have the `shutdown' function. */ 830/* Define to 1 if you have the `shutdown' function. */
794#define HAVE_SHUTDOWN 1 831#define HAVE_SHUTDOWN 1
795 832
833/* Define to 1 if you have the `sig2str' function. */
834#undef HAVE_SIG2STR
835
796/* Define to 1 if 'sig_atomic_t' is a signed integer type. */ 836/* Define to 1 if 'sig_atomic_t' is a signed integer type. */
797#undef HAVE_SIGNED_SIG_ATOMIC_T 837#undef HAVE_SIGNED_SIG_ATOMIC_T
798 838
@@ -916,6 +956,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
916/* Define to 1 if you have the <sys/bitypes.h> header file. */ 956/* Define to 1 if you have the <sys/bitypes.h> header file. */
917#undef HAVE_SYS_BITYPES_H 957#undef HAVE_SYS_BITYPES_H
918 958
959/* Define to 1 if you have the <sys/inotify.h> header file. */
960#undef HAVE_SYS_INOTIFY_H
961
919/* Define to 1 if you have the <sys/inttypes.h> header file. */ 962/* Define to 1 if you have the <sys/inttypes.h> header file. */
920#undef HAVE_SYS_INTTYPES_H 963#undef HAVE_SYS_INTTYPES_H
921 964
@@ -993,6 +1036,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
993/* Define to 1 if you have the <unistd.h> header file. */ 1036/* Define to 1 if you have the <unistd.h> header file. */
994#define HAVE_UNISTD_H 1 1037#define HAVE_UNISTD_H 1
995 1038
1039/* Define to 1 if you have the `unsetenv' function. */
1040#define HAVE_UNSETENV 1
1041
996/* Define to 1 if the system has the type 'unsigned long long int'. */ 1042/* Define to 1 if the system has the type 'unsigned long long int'. */
997#undef HAVE_UNSIGNED_LONG_LONG_INT 1043#undef HAVE_UNSIGNED_LONG_LONG_INT
998 1044
@@ -1032,6 +1078,10 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
1032/* Define to 1 if `fork' works. */ 1078/* Define to 1 if `fork' works. */
1033#undef HAVE_WORKING_FORK 1079#undef HAVE_WORKING_FORK
1034 1080
1081/* Define to 1 if fstatat (..., 0) works. For example, it does not work in AIX
1082 7.1. */
1083#undef HAVE_WORKING_FSTATAT_ZERO_FLAG
1084
1035/* Define if utimes works properly. */ 1085/* Define if utimes works properly. */
1036#undef HAVE_WORKING_UTIMES 1086#undef HAVE_WORKING_UTIMES
1037 1087
@@ -1093,7 +1143,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
1093/* Define to 1 if you have the `_ftime' function. */ 1143/* Define to 1 if you have the `_ftime' function. */
1094#undef HAVE__FTIME 1144#undef HAVE__FTIME
1095 1145
1096/* Define to 1 if _setjmp and _longjmp work. */ 1146/* Define to 1 if _setjmp and _longjmp work. */
1097#define HAVE__SETJMP 1 1147#define HAVE__SETJMP 1
1098 1148
1099/* Define to 1 if you have the `__builtin_unwind_init' function. */ 1149/* Define to 1 if you have the `__builtin_unwind_init' function. */
@@ -1191,9 +1241,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
1191/* Define to 1 if the nlist n_name member is a pointer */ 1241/* Define to 1 if the nlist n_name member is a pointer */
1192#undef N_NAME_POINTER 1242#undef N_NAME_POINTER
1193 1243
1194/* Define if the C compiler is the linker. */
1195#define ORDINARY_LINK 1
1196
1197/* Name of package */ 1244/* Name of package */
1198#define PACKAGE "emacs" 1245#define PACKAGE "emacs"
1199 1246
@@ -1338,9 +1385,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
1338 timespec. */ 1385 timespec. */
1339#undef TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC 1386#undef TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC
1340 1387
1341/* Undocumented. */
1342#undef ULIMIT_BREAK_VALUE
1343
1344/* Define to 1 for Encore UMAX. */ 1388/* Define to 1 for Encore UMAX. */
1345#undef UMAX 1389#undef UMAX
1346 1390
@@ -1372,6 +1416,38 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
1372/* Define to 1 if using the Motif X toolkit. */ 1416/* Define to 1 if using the Motif X toolkit. */
1373#undef USE_MOTIF 1417#undef USE_MOTIF
1374 1418
1419/* Enable extensions on AIX 3, Interix. */
1420#ifndef _ALL_SOURCE
1421# undef _ALL_SOURCE
1422#endif
1423/* Enable general extensions on OS X. */
1424#ifndef _DARWIN_C_SOURCE
1425# undef _DARWIN_C_SOURCE
1426#endif
1427/* Enable GNU extensions on systems that have them. */
1428#ifndef _GNU_SOURCE
1429# undef _GNU_SOURCE
1430#endif
1431/* Enable threading extensions on Solaris. */
1432#ifndef _POSIX_PTHREAD_SEMANTICS
1433# undef _POSIX_PTHREAD_SEMANTICS
1434#endif
1435/* Enable extensions on HP NonStop. */
1436#ifndef _TANDEM_SOURCE
1437# undef _TANDEM_SOURCE
1438#endif
1439/* Enable X/Open extensions if necessary. HP-UX 11.11 defines
1440 mbstate_t only if _XOPEN_SOURCE is defined to 500, regardless of
1441 whether compiling with -Ae or -D_HPUX_SOURCE=1. */
1442#ifndef _XOPEN_SOURCE
1443# undef _XOPEN_SOURCE
1444#endif
1445/* Enable general extensions on Solaris. */
1446#ifndef __EXTENSIONS__
1447# undef __EXTENSIONS__
1448#endif
1449
1450
1375/* Define to 1 if we should use toolkit scroll bars. */ 1451/* Define to 1 if we should use toolkit scroll bars. */
1376#define USE_TOOLKIT_SCROLL_BARS 1 1452#define USE_TOOLKIT_SCROLL_BARS 1
1377 1453
@@ -1397,6 +1473,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
1397/* Version number of package */ 1473/* Version number of package */
1398#define VERSION "24.3.50" 1474#define VERSION "24.3.50"
1399 1475
1476/* Define to 1 if unsetenv returns void instead of int. */
1477#undef VOID_UNSETENV
1478
1400/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type 1479/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
1401 'wchar_t'. */ 1480 'wchar_t'. */
1402#undef WCHAR_T_SUFFIX 1481#undef WCHAR_T_SUFFIX
@@ -1433,10 +1512,8 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
1433/* Define if the system is AIX. */ 1512/* Define if the system is AIX. */
1434#undef _AIX 1513#undef _AIX
1435 1514
1436/* Enable large inode numbers on Mac OS X. */ 1515/* Enable large inode numbers on Mac OS X 10.5. */
1437#ifndef _DARWIN_USE_64_BIT_INODE 1516#undef _DARWIN_USE_64_BIT_INODE
1438# define _DARWIN_USE_64_BIT_INODE 1
1439#endif
1440 1517
1441/* Number of bits in a file offset, on hosts where this is settable. */ 1518/* Number of bits in a file offset, on hosts where this is settable. */
1442#undef _FILE_OFFSET_BITS 1519#undef _FILE_OFFSET_BITS
@@ -1457,6 +1534,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
1457/* Define if GNUstep uses ObjC exceptions. */ 1534/* Define if GNUstep uses ObjC exceptions. */
1458#undef _NATIVE_OBJC_EXCEPTIONS 1535#undef _NATIVE_OBJC_EXCEPTIONS
1459 1536
1537/* Define to 1 to make NetBSD features available. MINIX 3 needs this. */
1538#undef _NETBSD_SOURCE
1539
1460/* The _Noreturn keyword of C11. */ 1540/* The _Noreturn keyword of C11. */
1461#if ! (defined _Noreturn \ 1541#if ! (defined _Noreturn \
1462 || (defined __STDC_VERSION__ && 201112 <= __STDC_VERSION__)) 1542 || (defined __STDC_VERSION__ && 201112 <= __STDC_VERSION__))
@@ -1480,35 +1560,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
1480/* Needed for system_process_attributes on Solaris. */ 1560/* Needed for system_process_attributes on Solaris. */
1481#undef _STRUCTURED_PROC 1561#undef _STRUCTURED_PROC
1482 1562
1483/* Define to 500 only on HP-UX. */
1484#undef _XOPEN_SOURCE
1485
1486/* Enable extensions on AIX 3, Interix. */
1487#ifndef _ALL_SOURCE
1488# undef _ALL_SOURCE
1489#endif
1490/* Enable general extensions on Mac OS X. */
1491#ifndef _DARWIN_C_SOURCE
1492# undef _DARWIN_C_SOURCE
1493#endif
1494/* Enable GNU extensions on systems that have them. */
1495#ifndef _GNU_SOURCE
1496# undef _GNU_SOURCE
1497#endif
1498/* Enable threading extensions on Solaris. */
1499#ifndef _POSIX_PTHREAD_SEMANTICS
1500# undef _POSIX_PTHREAD_SEMANTICS
1501#endif
1502/* Enable extensions on HP NonStop. */
1503#ifndef _TANDEM_SOURCE
1504# undef _TANDEM_SOURCE
1505#endif
1506/* Enable general extensions on Solaris. */
1507#ifndef __EXTENSIONS__
1508# undef __EXTENSIONS__
1509#endif
1510
1511
1512/* Define to rpl_ if the getopt replacement functions and variables should be 1563/* Define to rpl_ if the getopt replacement functions and variables should be
1513 used. */ 1564 used. */
1514#undef __GETOPT_PREFIX 1565#undef __GETOPT_PREFIX
@@ -1529,13 +1580,22 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
1529 when FOO is an inline function in the header; see 1580 when FOO is an inline function in the header; see
1530 <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54113>. 1581 <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54113>.
1531 _GL_INLINE_HEADER_END contains useful stuff to put 1582 _GL_INLINE_HEADER_END contains useful stuff to put
1532 in the same include file, after uses of _GL_INLINE. */ 1583 in the same include file, after uses of _GL_INLINE.
1533#if (__GNUC__ \ 1584
1534 ? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \ 1585 Suppress extern inline with HP-UX cc, as it appears to be broken; see
1535 : 199901L <= __STDC_VERSION__) 1586 <http://lists.gnu.org/archive/html/bug-texinfo/2013-02/msg00030.html>.
1587
1588 Suppress the use of extern inline on Apple's platforms,
1589 as Libc-825.25 (2012-09-19) is incompatible with it; see
1590 <http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00023.html>.
1591 Perhaps Apple will fix this some day. */
1592#if ((__GNUC__ \
1593 ? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \
1594 : 199901L <= __STDC_VERSION__ && !defined __HP_cc) \
1595 && !defined __APPLE__)
1536# define _GL_INLINE inline 1596# define _GL_INLINE inline
1537# define _GL_EXTERN_INLINE extern inline 1597# define _GL_EXTERN_INLINE extern inline
1538#elif 2 < __GNUC__ + (7 <= __GNUC_MINOR__) 1598#elif 2 < __GNUC__ + (7 <= __GNUC_MINOR__) && !defined __APPLE__
1539# if __GNUC_GNU_INLINE__ 1599# if __GNUC_GNU_INLINE__
1540 /* __gnu_inline__ suppresses a GCC 4.2 diagnostic. */ 1600 /* __gnu_inline__ suppresses a GCC 4.2 diagnostic. */
1541# define _GL_INLINE extern inline __attribute__ ((__gnu_inline__)) 1601# define _GL_INLINE extern inline __attribute__ ((__gnu_inline__))
@@ -1544,8 +1604,8 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
1544# endif 1604# endif
1545# define _GL_EXTERN_INLINE extern 1605# define _GL_EXTERN_INLINE extern
1546#else 1606#else
1547# define _GL_INLINE static inline 1607# define _GL_INLINE static _GL_UNUSED
1548# define _GL_EXTERN_INLINE static inline 1608# define _GL_EXTERN_INLINE static _GL_UNUSED
1549#endif 1609#endif
1550 1610
1551#if 4 < __GNUC__ + (6 <= __GNUC_MINOR__) 1611#if 4 < __GNUC__ + (6 <= __GNUC_MINOR__)
@@ -1573,12 +1633,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
1573/* Define to rpl_gmtime if the replacement function should be used. */ 1633/* Define to rpl_gmtime if the replacement function should be used. */
1574#undef gmtime 1634#undef gmtime
1575 1635
1576/* Define to `__inline__' or `__inline' if that's what the C compiler
1577 calls it, or to nothing if 'inline' is not supported under any name. */
1578#ifndef __cplusplus
1579#undef inline
1580#endif
1581
1582/* Work around a bug in Apple GCC 4.0.1 build 5465: In C99 mode, it supports 1636/* Work around a bug in Apple GCC 4.0.1 build 5465: In C99 mode, it supports
1583 the ISO C 99 semantics of 'extern inline' (unlike the GNU C semantics of 1637 the ISO C 99 semantics of 'extern inline' (unlike the GNU C semantics of
1584 earlier versions), but does not display it by setting __GNUC_STDC_INLINE__. 1638 earlier versions), but does not display it by setting __GNUC_STDC_INLINE__.
diff --git a/nt/configure.bat b/nt/configure.bat
index 3118bb11e5d..f833da72269 100755
--- a/nt/configure.bat
+++ b/nt/configure.bat
@@ -1,7 +1,7 @@
1@echo off 1@echo off
2rem ---------------------------------------------------------------------- 2rem ----------------------------------------------------------------------
3rem Configuration script for MS Windows operating systems 3rem Configuration script for MS Windows operating systems
4rem Copyright (C) 1999-2012 Free Software Foundation, Inc. 4rem Copyright (C) 1999-2013 Free Software Foundation, Inc.
5 5
6rem This file is part of GNU Emacs. 6rem This file is part of GNU Emacs.
7 7
diff --git a/nt/ddeclient.c b/nt/ddeclient.c
index 7648667b4a0..675f0c55985 100644
--- a/nt/ddeclient.c
+++ b/nt/ddeclient.c
@@ -1,5 +1,5 @@
1/* Simple client interface to DDE servers. 1/* Simple client interface to DDE servers.
2 Copyright (C) 1998, 2001-2012 Free Software Foundation, Inc. 2 Copyright (C) 1998, 2001-2013 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/nt/emacs.rc b/nt/emacs.rc
index 72aa47212ac..d2703c45869 100644
--- a/nt/emacs.rc
+++ b/nt/emacs.rc
@@ -1,5 +1,5 @@
1Emacs ICON icons\emacs.ico 1Emacs ICON icons/emacs.ico
232649 CURSOR icons\hand.cur 232649 CURSOR icons/hand.cur
3#ifdef WIN64 3#ifdef WIN64
41 24 "emacs-x64.manifest" 41 24 "emacs-x64.manifest"
5#else 5#else
@@ -31,7 +31,7 @@ BEGIN
31 VALUE "FileDescription", "GNU Emacs: The extensible self-documenting text editor\0" 31 VALUE "FileDescription", "GNU Emacs: The extensible self-documenting text editor\0"
32 VALUE "FileVersion", "24, 3, 50, 0\0" 32 VALUE "FileVersion", "24, 3, 50, 0\0"
33 VALUE "InternalName", "Emacs\0" 33 VALUE "InternalName", "Emacs\0"
34 VALUE "LegalCopyright", "Copyright (C) 2001-2012\0" 34 VALUE "LegalCopyright", "Copyright (C) 2001-2013\0"
35 VALUE "OriginalFilename", "emacs.exe" 35 VALUE "OriginalFilename", "emacs.exe"
36 VALUE "ProductName", "Emacs\0" 36 VALUE "ProductName", "Emacs\0"
37 VALUE "ProductVersion", "24, 3, 50, 0\0" 37 VALUE "ProductVersion", "24, 3, 50, 0\0"
diff --git a/nt/emacsclient.rc b/nt/emacsclient.rc
index 59dd7b09f8a..d303e3451d0 100644
--- a/nt/emacsclient.rc
+++ b/nt/emacsclient.rc
@@ -25,7 +25,7 @@ BEGIN
25 VALUE "FileDescription", "GNU EmacsClient: Client for the extensible self-documenting text editor\0" 25 VALUE "FileDescription", "GNU EmacsClient: Client for the extensible self-documenting text editor\0"
26 VALUE "FileVersion", "24, 3, 50, 0\0" 26 VALUE "FileVersion", "24, 3, 50, 0\0"
27 VALUE "InternalName", "EmacsClient\0" 27 VALUE "InternalName", "EmacsClient\0"
28 VALUE "LegalCopyright", "Copyright (C) 2001-2012\0" 28 VALUE "LegalCopyright", "Copyright (C) 2001-2013\0"
29 VALUE "OriginalFilename", "emacsclientw.exe" 29 VALUE "OriginalFilename", "emacsclientw.exe"
30 VALUE "ProductName", "EmacsClient\0" 30 VALUE "ProductName", "EmacsClient\0"
31 VALUE "ProductVersion", "24, 3, 50, 0\0" 31 VALUE "ProductVersion", "24, 3, 50, 0\0"
diff --git a/nt/envadd.bat b/nt/envadd.bat
index cca44d9ea97..bcb9b6fabe1 100644
--- a/nt/envadd.bat
+++ b/nt/envadd.bat
@@ -1,7 +1,7 @@
1rem Hack to change/add environment variables in the makefiles for the 1rem Hack to change/add environment variables in the makefiles for the
2rem Windows platform. 2rem Windows platform.
3 3
4rem Copyright (C) 2003-2012 Free Software Foundation, Inc. 4rem Copyright (C) 2003-2013 Free Software Foundation, Inc.
5 5
6rem This file is part of GNU Emacs. 6rem This file is part of GNU Emacs.
7 7
diff --git a/nt/gmake.defs b/nt/gmake.defs
index 3d545fab975..6d55cdcc84a 100644
--- a/nt/gmake.defs
+++ b/nt/gmake.defs
@@ -1,5 +1,5 @@
1# -*- Makefile -*- definition file for building GNU Emacs on Windows NT. 1# -*- Makefile -*- definition file for building GNU Emacs on Windows NT.
2# Copyright (C) 2000-2012 Free Software Foundation, Inc. 2# Copyright (C) 2000-2013 Free Software Foundation, Inc.
3 3
4# This file is part of GNU Emacs. 4# This file is part of GNU Emacs.
5 5
diff --git a/nt/icons/README b/nt/icons/README
index a3acb66178c..d77b81de9c2 100644
--- a/nt/icons/README
+++ b/nt/icons/README
@@ -2,13 +2,13 @@ COPYRIGHT AND LICENSE INFORMATION FOR IMAGE FILES
2 2
3File: emacs.ico 3File: emacs.ico
4Author: Kentaro Ohkouchi <nanasess@fsm.ne.jp> 4Author: Kentaro Ohkouchi <nanasess@fsm.ne.jp>
5Copyright (C) 2008-2012 Free Software Foundation, Inc. 5Copyright (C) 2008-2013 Free Software Foundation, Inc.
6License: GNU General Public License version 3 or later 6License: GNU General Public License version 3 or later
7 7
8 8
9File: emacs22.ico 9File: emacs22.ico
10Author: Andrew Zhilin 10Author: Andrew Zhilin
11Copyright (C) 2005-2012 Free Software Foundation, Inc. 11Copyright (C) 2005-2013 Free Software Foundation, Inc.
12License: GNU General Public License version 3 or later (see COPYING) 12License: GNU General Public License version 3 or later (see COPYING)
13 13
14 14
@@ -17,7 +17,7 @@ Files: gnu2a32.ico gnu2a32t.ico gnu2b48.ico gnu2b48t.ico
17 gnu5w32.ico gnu5w32t.ico gnu6w48.ico gnu6w48t.ico 17 gnu5w32.ico gnu5w32t.ico gnu6w48.ico gnu6w48t.ico
18 gnu7.ico gnu8.ico gnu9.ico 18 gnu7.ico gnu8.ico gnu9.ico
19Author: Rob Davenport <rgd at bigfoot.com> 19Author: Rob Davenport <rgd at bigfoot.com>
20Copyright (C) 1999, 2001-2012 Free Software Foundation, Inc. 20Copyright (C) 1999, 2001-2013 Free Software Foundation, Inc.
21License: GNU General Public License version 3 or later (see COPYING) 21License: GNU General Public License version 3 or later (see COPYING)
22 22
23 <http://users.adelphia.net/~rob.davenport/gnuicons.html> 23 <http://users.adelphia.net/~rob.davenport/gnuicons.html>
diff --git a/nt/inc/dirent.h b/nt/inc/dirent.h
index 618f3beddf0..676b82d207b 100644
--- a/nt/inc/dirent.h
+++ b/nt/inc/dirent.h
@@ -30,7 +30,7 @@ typedef struct
30 char dd_buf[DIRBLKSIZ]; /* directory block */ 30 char dd_buf[DIRBLKSIZ]; /* directory block */
31 } DIR; /* stream data from opendir() */ 31 } DIR; /* stream data from opendir() */
32 32
33extern DIR *opendir (char *); 33extern DIR *opendir (const char *);
34extern struct dirent *readdir (DIR *); 34extern struct dirent *readdir (DIR *);
35extern void seekdir (DIR *, long); 35extern void seekdir (DIR *, long);
36extern void closedir (DIR *); 36extern void closedir (DIR *);
diff --git a/nt/inc/grp.h b/nt/inc/grp.h
index 3d369044974..02c0ef7f3a0 100644
--- a/nt/inc/grp.h
+++ b/nt/inc/grp.h
@@ -1,6 +1,6 @@
1/* Replacement grp.h file for building GNU Emacs on Windows. 1/* Replacement grp.h file for building GNU Emacs on Windows.
2 2
3Copyright (C) 2003-2012 Free Software Foundation, Inc. 3Copyright (C) 2003-2013 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/nt/inc/inttypes.h b/nt/inc/inttypes.h
index 688b9bc9223..4629ccb038c 100644
--- a/nt/inc/inttypes.h
+++ b/nt/inc/inttypes.h
@@ -1,6 +1,6 @@
1/* Replacement inntypes.h file for building GNU Emacs on Windows with MSVC. 1/* Replacement inntypes.h file for building GNU Emacs on Windows with MSVC.
2 2
3Copyright (C) 2011-2012 Free Software Foundation, Inc. 3Copyright (C) 2011-2013 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/nt/inc/langinfo.h b/nt/inc/langinfo.h
index 7ab36f0a998..93a56e548c7 100644
--- a/nt/inc/langinfo.h
+++ b/nt/inc/langinfo.h
@@ -1,6 +1,6 @@
1/* Replacement langinfo.h file for building GNU Emacs on Windows. 1/* Replacement langinfo.h file for building GNU Emacs on Windows.
2 2
3Copyright (C) 2006-2012 Free Software Foundation, Inc. 3Copyright (C) 2006-2013 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/nt/inc/ms-w32.h b/nt/inc/ms-w32.h
index 7b16ccab069..cd183c917c4 100644
--- a/nt/inc/ms-w32.h
+++ b/nt/inc/ms-w32.h
@@ -1,6 +1,6 @@
1/* System description file for Windows NT. 1/* System description file for Windows NT.
2 2
3Copyright (C) 1993-1995, 2001-2012 Free Software Foundation, Inc. 3Copyright (C) 1993-1995, 2001-2013 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
@@ -70,6 +70,18 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
70#define HAVE___BUILTIN_UNWIND_INIT 1 70#define HAVE___BUILTIN_UNWIND_INIT 1
71#endif 71#endif
72 72
73/* This isn't perfect, as some systems might have the page file in
74 another place. Also, I suspect that the time stamp of that file
75 might also change when Windows enlarges the file due to
76 insufficient VM. Still, this seems to be the most reliable way;
77 the alternative (of using GetSystemTimes) won't work on laptops
78 that hibernate, because the system clock is stopped then. Other
79 possibility would be to run "net statistics workstation" and parse
80 the output, but that's gross. So this should do; if the file is
81 not there, the boot time will be returned as zero, and filelock.c
82 already handles that. */
83#define BOOT_TIME_FILE "C:/pagefile.sys"
84
73/* ============================================================ */ 85/* ============================================================ */
74 86
75/* Here, add any special hacks needed to make Emacs work on this 87/* Here, add any special hacks needed to make Emacs work on this
@@ -115,6 +127,17 @@ typedef unsigned short mode_t;
115extern char *getenv (); 127extern char *getenv ();
116#endif 128#endif
117 129
130/* Prevent accidental use of features unavailable in older Windows
131 versions we still support. MinGW64 defines this to a higher value
132 in its system headers, and is not really compatible with values
133 lower than 0x0500, so leave it alone. */
134#ifndef _W64
135# define _WIN32_WINNT 0x0400
136#endif
137
138/* Make a leaner executable. */
139#define WIN32_LEAN_AND_MEAN 1
140
118#ifdef HAVE_STRINGS_H 141#ifdef HAVE_STRINGS_H
119#include "strings.h" 142#include "strings.h"
120#endif 143#endif
@@ -133,6 +156,21 @@ extern char *getenv ();
133 156
134#ifdef emacs 157#ifdef emacs
135 158
159#ifdef _W64
160/* MinGW64 specific stuff. */
161/* Make sure 'struct timespec' and 'struct timezone' are defined. */
162#include <sys/types.h>
163#include <time.h>
164/* This prototype avoids MinGW64 compiler warnings due to the fact
165 that time.h is included before localtime is redirected to
166 sys_localtime below. */
167extern struct tm * sys_localtime (const time_t *);
168/* MinGW64 uses a 2-argument _setjmp, and setjmp is a macro defined to
169 supply the 2nd arg correctly, so don't use _setjmp directly in that
170 case. */
171#undef HAVE__SETJMP
172#endif
173
136#ifdef _MSC_VER 174#ifdef _MSC_VER
137#include <sys/timeb.h> 175#include <sys/timeb.h>
138#include <sys/stat.h> 176#include <sys/stat.h>
@@ -149,7 +187,6 @@ extern char *getenv ();
149#define chdir sys_chdir 187#define chdir sys_chdir
150#undef chmod 188#undef chmod
151#define chmod sys_chmod 189#define chmod sys_chmod
152#define chown sys_chown
153#undef close 190#undef close
154#define close sys_close 191#define close sys_close
155#undef creat 192#undef creat
@@ -178,6 +215,10 @@ extern char *getenv ();
178#define strerror sys_strerror 215#define strerror sys_strerror
179#undef unlink 216#undef unlink
180#define unlink sys_unlink 217#define unlink sys_unlink
218/* This prototype is needed because some files include config.h
219 _after_ the standard headers, so sys_unlink gets no prototype from
220 stdio.h or io.h. */
221extern int sys_unlink (const char *);
181#undef write 222#undef write
182#define write sys_write 223#define write sys_write
183 224
@@ -205,6 +246,7 @@ extern char *getenv ();
205/* Map to MSVC names. */ 246/* Map to MSVC names. */
206#define execlp _execlp 247#define execlp _execlp
207#define execvp _execvp 248#define execvp _execvp
249#define fdatasync _commit
208#define fdopen _fdopen 250#define fdopen _fdopen
209#ifndef fileno 251#ifndef fileno
210#define fileno _fileno 252#define fileno _fileno
@@ -218,7 +260,6 @@ typedef int pid_t;
218#define strtoll _strtoi64 260#define strtoll _strtoi64
219#endif 261#endif
220#define isatty _isatty 262#define isatty _isatty
221#define logb _logb
222#define _longjmp longjmp 263#define _longjmp longjmp
223#define lseek _lseek 264#define lseek _lseek
224#define popen _popen 265#define popen _popen
@@ -251,18 +292,24 @@ int _getpid (void);
251/* 'struct timespec' is used by time-related functions in lib/ and 292/* 'struct timespec' is used by time-related functions in lib/ and
252 elsewhere, but we don't use lib/time.h where the structure is 293 elsewhere, but we don't use lib/time.h where the structure is
253 defined. */ 294 defined. */
295/* MinGW64 defines 'struct timespec' and _TIMESPEC_DEFINED in sys/types.h. */
296#ifndef _TIMESPEC_DEFINED
254struct timespec 297struct timespec
255{ 298{
256 time_t tv_sec; /* seconds */ 299 time_t tv_sec; /* seconds */
257 long int tv_nsec; /* nanoseconds */ 300 long int tv_nsec; /* nanoseconds */
258}; 301};
302#endif
259 303
260/* Required for functions in lib/time_r.c, since we don't use lib/time.h. */ 304/* Required for functions in lib/time_r.c, since we don't use lib/time.h. */
261extern struct tm *gmtime_r (time_t const * restrict, struct tm * restrict); 305extern struct tm *gmtime_r (time_t const * restrict, struct tm * restrict);
262extern struct tm *localtime_r (time_t const * restrict, struct tm * restrict); 306extern struct tm *localtime_r (time_t const * restrict, struct tm * restrict);
263 307
308#ifdef _MSC_VER
264/* This is hacky, but is necessary to avoid warnings about macro 309/* This is hacky, but is necessary to avoid warnings about macro
265 redefinitions using the SDK compilers. */ 310 redefinitions using the MSVC compilers, since, when __STDC__ is
311 undefined or zero, those compilers declare functions like fileno,
312 lseek, and chdir, for which we defined macros above. */
266#ifndef __STDC__ 313#ifndef __STDC__
267#define __STDC__ 1 314#define __STDC__ 1
268#define MUST_UNDEF__STDC__ 315#define MUST_UNDEF__STDC__
@@ -274,6 +321,11 @@ extern struct tm *localtime_r (time_t const * restrict, struct tm * restrict);
274#undef __STDC__ 321#undef __STDC__
275#undef MUST_UNDEF__STDC__ 322#undef MUST_UNDEF__STDC__
276#endif 323#endif
324#else /* !_MSC_VER */
325#include <direct.h>
326#include <io.h>
327#include <stdio.h>
328#endif /* !_MSC_VER */
277 329
278/* Defines that we need that aren't in the standard signal.h. */ 330/* Defines that we need that aren't in the standard signal.h. */
279#define SIGHUP 1 /* Hang up */ 331#define SIGHUP 1 /* Hang up */
@@ -289,11 +341,19 @@ extern struct tm *localtime_r (time_t const * restrict, struct tm * restrict);
289#define NSIG 23 341#define NSIG 23
290#endif 342#endif
291 343
344#ifndef ENOTSUP
345#define ENOTSUP ENOSYS
346#endif
347
292#ifdef _MSC_VER 348#ifdef _MSC_VER
293typedef int sigset_t; 349typedef int sigset_t;
294typedef int ssize_t; 350typedef int ssize_t;
295#endif 351#endif
296 352
353#ifndef _POSIX /* MinGW64 */
354typedef _sigset_t sigset_t;
355#endif
356
297typedef void (_CALLBACK_ *signal_handler) (int); 357typedef void (_CALLBACK_ *signal_handler) (int);
298extern signal_handler sys_signal (int, signal_handler); 358extern signal_handler sys_signal (int, signal_handler);
299 359
@@ -339,13 +399,6 @@ extern char *get_emacs_configuration_options (void);
339#define _WINSOCKAPI_ 1 399#define _WINSOCKAPI_ 1
340#define _WINSOCK_H 400#define _WINSOCK_H
341 401
342/* Prevent accidental use of features unavailable in
343 older Windows versions we still support. */
344#define _WIN32_WINNT 0x0400
345
346/* Make a leaner executable. */
347#define WIN32_LEAN_AND_MEAN 1
348
349/* Defines size_t and alloca (). */ 402/* Defines size_t and alloca (). */
350#ifdef emacs 403#ifdef emacs
351#define malloc e_malloc 404#define malloc e_malloc
@@ -376,9 +429,19 @@ extern char *get_emacs_configuration_options (void);
376#define sys_nerr _sys_nerr 429#define sys_nerr _sys_nerr
377#endif 430#endif
378 431
432/* This must be after including stdlib.h, which defines putenv on MinGW. */
433#ifdef putenv
434# undef putenv
435#endif
436#define putenv sys_putenv
437extern int sys_putenv (char *);
438
379extern int getloadavg (double *, int); 439extern int getloadavg (double *, int);
380extern int getpagesize (void); 440extern int getpagesize (void);
381 441
442extern void * memrchr (void const *, int, size_t);
443
444
382#if defined (__MINGW32__) 445#if defined (__MINGW32__)
383 446
384/* Define to 1 if the system has the type `long long int'. */ 447/* Define to 1 if the system has the type `long long int'. */
diff --git a/nt/inc/nl_types.h b/nt/inc/nl_types.h
index 3d3a162bada..e3eb9eb5477 100644
--- a/nt/inc/nl_types.h
+++ b/nt/inc/nl_types.h
@@ -1,6 +1,6 @@
1/* Replacement nl_types.h file for building GNU Emacs on Windows. 1/* Replacement nl_types.h file for building GNU Emacs on Windows.
2 2
3Copyright (C) 2006-2012 Free Software Foundation, Inc. 3Copyright (C) 2006-2013 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/nt/inc/stdint.h b/nt/inc/stdint.h
index 97c9bbdaee9..c8b3aba0916 100644
--- a/nt/inc/stdint.h
+++ b/nt/inc/stdint.h
@@ -1,6 +1,6 @@
1/* Replacement stdint.h file for building GNU Emacs on Windows. 1/* Replacement stdint.h file for building GNU Emacs on Windows.
2 2
3Copyright (C) 2011-2012 Free Software Foundation, Inc. 3Copyright (C) 2011-2013 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
@@ -38,6 +38,7 @@ typedef unsigned __int64 uint64_t;
38#define INT64_MIN (~INT64_MAX) 38#define INT64_MIN (~INT64_MAX)
39#define INTPTR_MAX INT64_MAX 39#define INTPTR_MAX INT64_MAX
40#define INTPTR_MIN INT64_MIN 40#define INTPTR_MIN INT64_MIN
41#define UINTPTR_MAX UINT64_MAX
41#define UINTMAX_MAX UINT64_MAX 42#define UINTMAX_MAX UINT64_MAX
42#define UINTMAX_MIN UINT64_MIN 43#define UINTMAX_MIN UINT64_MIN
43#define INTMAX_MAX INT64_MAX 44#define INTMAX_MAX INT64_MAX
@@ -53,6 +54,7 @@ typedef unsigned int uint32_t;
53#define INT32_MIN (~INT32_MAX) 54#define INT32_MIN (~INT32_MAX)
54#define INTPTR_MAX INT32_MAX 55#define INTPTR_MAX INT32_MAX
55#define INTPTR_MIN INT32_MIN 56#define INTPTR_MIN INT32_MIN
57#define UINTPTR_MAX UINT32_MAX
56#define UINTMAX_MAX UINT32_MAX 58#define UINTMAX_MAX UINT32_MAX
57#define UINTMAX_MIN UINT32_MIN 59#define UINTMAX_MIN UINT32_MIN
58#define INTMAX_MAX INT32_MAX 60#define INTMAX_MAX INT32_MAX
diff --git a/nt/inc/sys/acl.h b/nt/inc/sys/acl.h
new file mode 100644
index 00000000000..3133e3bfc09
--- /dev/null
+++ b/nt/inc/sys/acl.h
@@ -0,0 +1,25 @@
1/* Emulation of Posix ACLs for Windows. */
2
3#ifndef ACL_H
4#define ACL_H
5
6#define NOMINMAX 1 /* don't define min and max */
7#include <windows.h>
8
9typedef PSECURITY_DESCRIPTOR acl_t;
10typedef unsigned acl_type_t;
11
12/* Values of acl_type_t */
13#define ACL_TYPE_ACCESS 0
14#define ACL_TYPE_DEFAULT 1
15
16typedef unsigned acl_perm_t;
17
18extern int acl_valid (acl_t);
19extern acl_t acl_get_file (const char *, acl_type_t);
20extern int acl_set_file (const char *, acl_type_t, acl_t);
21extern char * acl_to_text (acl_t, ssize_t *);
22extern acl_t acl_from_text (const char *);
23extern int acl_free (void *);
24
25#endif /* ACL_H */
diff --git a/nt/inc/sys/socket.h b/nt/inc/sys/socket.h
index 1c8be6c452f..99227d75d28 100644
--- a/nt/inc/sys/socket.h
+++ b/nt/inc/sys/socket.h
@@ -1,4 +1,4 @@
1/* Copyright (C) 1995, 2001-2012 Free Software Foundation, Inc. 1/* Copyright (C) 1995, 2001-2013 Free Software Foundation, Inc.
2 2
3This file is part of GNU Emacs. 3This file is part of GNU Emacs.
4 4
diff --git a/nt/inc/sys/stat.h b/nt/inc/sys/stat.h
index b673b80a0e3..f6785c56477 100644
--- a/nt/inc/sys/stat.h
+++ b/nt/inc/sys/stat.h
@@ -1,7 +1,7 @@
1/* sys/stat.h supplied with MSVCRT uses too narrow data types for 1/* sys/stat.h supplied with MSVCRT uses too narrow data types for
2 inode and user/group id, so we replace them with our own. 2 inode and user/group id, so we replace them with our own.
3 3
4Copyright (C) 2008-2012 Free Software Foundation, Inc. 4Copyright (C) 2008-2013 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
7 7
@@ -74,6 +74,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
74#define S_ISDOOR(m) 0 74#define S_ISDOOR(m) 0
75#define S_ISMPB(m) 0 75#define S_ISMPB(m) 0
76#define S_ISMPC(m) 0 76#define S_ISMPC(m) 0
77#define S_ISMPX(m) 0
77#define S_ISNWK(m) 0 78#define S_ISNWK(m) 0
78#define S_ISPORT(m) 0 79#define S_ISPORT(m) 0
79#define S_ISWHT(m) 0 80#define S_ISWHT(m) 0
@@ -98,13 +99,18 @@ struct stat {
98 char st_gname[260]; 99 char st_gname[260];
99}; 100};
100 101
102/* Internal variable for asking 'stat'/'lstat' to produce accurate
103 info about owner and group of files. */
104extern int w32_stat_get_owner_group;
105
101/* Prevent redefinition by other headers, e.g. wchar.h. */ 106/* Prevent redefinition by other headers, e.g. wchar.h. */
102#define _STAT_DEFINED 107#define _STAT_DEFINED
103 108
104_CRTIMP int __cdecl __MINGW_NOTHROW fstat (int, struct stat*); 109int __cdecl __MINGW_NOTHROW fstat (int, struct stat*);
105_CRTIMP int __cdecl __MINGW_NOTHROW chmod (const char*, int); 110int __cdecl __MINGW_NOTHROW stat (const char*, struct stat*);
106_CRTIMP int __cdecl __MINGW_NOTHROW stat (const char*, struct stat*); 111int __cdecl __MINGW_NOTHROW lstat (const char*, struct stat*);
107_CRTIMP int __cdecl __MINGW_NOTHROW lstat (const char*, struct stat*); 112int __cdecl __MINGW_NOTHROW fstatat (int, char const *,
113 struct stat *, int);
114int __cdecl __MINGW_NOTHROW chmod (const char*, int);
108 115
109#endif /* INC_SYS_STAT_H_ */ 116#endif /* INC_SYS_STAT_H_ */
110
diff --git a/nt/inc/sys/time.h b/nt/inc/sys/time.h
index 2d2c3abe222..aa51041bcd8 100644
--- a/nt/inc/sys/time.h
+++ b/nt/inc/sys/time.h
@@ -6,6 +6,9 @@
6 * have the below stuff. 6 * have the below stuff.
7 */ 7 */
8 8
9/* The guards are for MinGW64, which defines these structs on its
10 system headers which are included by ms-w32.h. */
11#ifndef _W64
9/* Allow inclusion of sys/time.h and winsock2.h in any order. Needed 12/* Allow inclusion of sys/time.h and winsock2.h in any order. Needed
10 for running the configure test, which is only relevant to MinGW. */ 13 for running the configure test, which is only relevant to MinGW. */
11#ifndef _TIMEVAL_DEFINED 14#ifndef _TIMEVAL_DEFINED
@@ -22,12 +25,15 @@ struct timeval
22 ((tvp)->tv_usec cmp (uvp)->tv_usec)) 25 ((tvp)->tv_usec cmp (uvp)->tv_usec))
23#define timerclear(tvp) (tvp)->tv_sec = (tvp)->tv_usec = 0 26#define timerclear(tvp) (tvp)->tv_sec = (tvp)->tv_usec = 0
24#endif /* _TIMEVAL_DEFINED */ 27#endif /* _TIMEVAL_DEFINED */
28#endif /* _W64 */
25 29
30#ifndef _TIMEZONE_DEFINED
26struct timezone 31struct timezone
27{ 32{
28 int tz_minuteswest; /* minutes west of Greenwich */ 33 int tz_minuteswest; /* minutes west of Greenwich */
29 int tz_dsttime; /* type of dst correction */ 34 int tz_dsttime; /* type of dst correction */
30}; 35};
36#endif
31 37
32void gettimeofday (struct timeval *, struct timezone *); 38void gettimeofday (struct timeval *, struct timezone *);
33 39
diff --git a/nt/inc/sys/wait.h b/nt/inc/sys/wait.h
index 8d890c9e175..d192453ff57 100644
--- a/nt/inc/sys/wait.h
+++ b/nt/inc/sys/wait.h
@@ -1,6 +1,6 @@
1/* A limited emulation of sys/wait.h on Posix systems. 1/* A limited emulation of sys/wait.h on Posix systems.
2 2
3Copyright (C) 2012 Free Software Foundation, Inc. 3Copyright (C) 2012-2013 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/nt/inc/unistd.h b/nt/inc/unistd.h
index b75e7d7d6bf..8ad8cf213b1 100644
--- a/nt/inc/unistd.h
+++ b/nt/inc/unistd.h
@@ -15,6 +15,7 @@
15 and whose prototypes are usually found in unistd.h on POSIX 15 and whose prototypes are usually found in unistd.h on POSIX
16 platforms. */ 16 platforms. */
17extern ssize_t readlink (const char *, char *, size_t); 17extern ssize_t readlink (const char *, char *, size_t);
18extern ssize_t readlinkat (int, const char *, char *, size_t);
18extern int symlink (char const *, char const *); 19extern int symlink (char const *, char const *);
19extern int setpgid (pid_t, pid_t); 20extern int setpgid (pid_t, pid_t);
20extern pid_t getpgrp (void); 21extern pid_t getpgrp (void);
@@ -29,6 +30,11 @@ extern int faccessat (int, char const *, int, int);
29#define AT_EACCESS 4 30#define AT_EACCESS 4
30#define AT_SYMLINK_NOFOLLOW 4096 31#define AT_SYMLINK_NOFOLLOW 4096
31 32
33#define O_IGNORE_CTTY 0
32#define O_NOCTTY 0 34#define O_NOCTTY 0
35#define O_NOFOLLOW 0
36
37/* This is normally on stdlib.h, but we don't override that header. */
38extern int unsetenv (const char *);
33 39
34#endif /* _UNISTD_H */ 40#endif /* _UNISTD_H */
diff --git a/nt/makefile.w32-in b/nt/makefile.w32-in
index 7377d7e33b9..d3e1c8e2228 100644
--- a/nt/makefile.w32-in
+++ b/nt/makefile.w32-in
@@ -1,5 +1,5 @@
1# -*- Makefile -*- for GNU Emacs on the Microsoft Windows API. 1# -*- Makefile -*- for GNU Emacs on the Microsoft Windows API.
2# Copyright (C) 2000-2012 Free Software Foundation, Inc. 2# Copyright (C) 2000-2013 Free Software Foundation, Inc.
3# 3#
4# Top level makefile for building GNU Emacs on Windows NT 4# Top level makefile for building GNU Emacs on Windows NT
5# 5#
@@ -31,33 +31,26 @@ CLIENTRES = $(BLD)/emacsclient.res
31 31
32XMFLAGS = 32XMFLAGS =
33 33
34ALL = addpm ddeclient runemacs cmdproxy addsection preprep 34ALL = $(BLD)/addpm.exe $(BLD)/ddeclient.exe $(BLD)/runemacs.exe \
35 $(BLD)/cmdproxy.exe $(BLD)/addsection.exe $(BLD)/preprep.exe
35 36
36.PHONY: $(ALL)
37
38
39addpm: stamp_BLD $(BLD)/addpm.exe
40$(BLD)/addpm.exe: $(BLD)/addpm.$(O) 37$(BLD)/addpm.exe: $(BLD)/addpm.$(O)
41 $(LINK) $(LINK_OUT)$@ \ 38 $(LINK) $(LINK_OUT)$@ \
42 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(ADVAPI32) \ 39 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(ADVAPI32) \
43 $(USER32) $(OLE32) $(UUID) $(SHELL32) 40 $(USER32) $(OLE32) $(UUID) $(SHELL32)
44 41
45ddeclient: stamp_BLD $(BLD)/ddeclient.exe
46$(BLD)/ddeclient.exe: $(BLD)/ddeclient.$(O) 42$(BLD)/ddeclient.exe: $(BLD)/ddeclient.$(O)
47 $(LINK) $(LINK_OUT)$@ \ 43 $(LINK) $(LINK_OUT)$@ \
48 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(ADVAPI32) $(USER32) 44 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(ADVAPI32) $(USER32)
49 45
50cmdproxy: stamp_BLD $(BLD)/cmdproxy.exe
51$(BLD)/cmdproxy.exe: $(BLD)/cmdproxy.$(O) 46$(BLD)/cmdproxy.exe: $(BLD)/cmdproxy.$(O)
52 $(LINK) $(LINK_OUT)$@ \ 47 $(LINK) $(LINK_OUT)$@ \
53 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(USER32) 48 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(USER32)
54 49
55addsection: stamp_BLD $(BLD)/addsection.exe
56$(BLD)/addsection.exe: $(BLD)/addsection.$(O) 50$(BLD)/addsection.exe: $(BLD)/addsection.$(O)
57 $(LINK) $(LINK_OUT)$@ \ 51 $(LINK) $(LINK_OUT)$@ \
58 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(USER32) 52 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(USER32)
59 53
60preprep: stamp_BLD $(BLD)/preprep.exe
61$(BLD)/preprep.exe: $(BLD)/preprep.$(O) 54$(BLD)/preprep.exe: $(BLD)/preprep.$(O)
62 $(LINK) $(LINK_OUT)$@ \ 55 $(LINK) $(LINK_OUT)$@ \
63 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) 56 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS)
@@ -72,7 +65,6 @@ $(TRES): emacs.rc icons/emacs.ico $(EMACS_MANIFEST) stamp_BLD
72$(CLIENTRES): emacsclient.rc stamp_BLD 65$(CLIENTRES): emacsclient.rc stamp_BLD
73 $(RC) $(RC_OUT)$(CLIENTRES) emacsclient.rc 66 $(RC) $(RC_OUT)$(CLIENTRES) emacsclient.rc
74 67
75runemacs: stamp_BLD $(BLD)/runemacs.exe
76$(BLD)/runemacs.exe: $(BLD)/runemacs.$(O) $(TRES) 68$(BLD)/runemacs.exe: $(BLD)/runemacs.$(O) $(TRES)
77 $(LINK) $(LINK_OUT)$@ $(SUBSYSTEM_WINDOWS) \ 69 $(LINK) $(LINK_OUT)$@ $(SUBSYSTEM_WINDOWS) \
78 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(ADVAPI32) $(USER32) 70 $(LINK_FLAGS) $(ALL_DEPS) $(BASE_LIBS) $(ADVAPI32) $(USER32)
@@ -93,7 +85,7 @@ all: which-sh $(ALL) $(CLIENTRES) all-other-dirs-$(MAKETYPE)
93 85
94all-other-dirs-$(MAKETYPE): maybe-bootstrap 86all-other-dirs-$(MAKETYPE): maybe-bootstrap
95 87
96all-other-dirs-nmake: addsection 88all-other-dirs-nmake: $(BLD)/addsection.exe
97 cd ..\lib 89 cd ..\lib
98 $(MAKE) $(MFLAGS) all 90 $(MAKE) $(MFLAGS) all
99 cd ..\lib-src 91 cd ..\lib-src
@@ -106,7 +98,7 @@ all-other-dirs-nmake: addsection
106 $(MAKE) $(MFLAGS) all 98 $(MAKE) $(MFLAGS) all
107 cd ..\nt 99 cd ..\nt
108 100
109all-other-dirs-gmake: addsection 101all-other-dirs-gmake: $(BLD)/addsection.exe
110 $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib all 102 $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib all
111 $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib-src all 103 $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib-src all
112 $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../src all 104 $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../src all
@@ -153,10 +145,10 @@ maybe-bootstrap-SH: doit
153 145
154# Bootstrap depends on cmdproxy because some Lisp functions 146# Bootstrap depends on cmdproxy because some Lisp functions
155# loaded during bootstrap may need to run shell commands. 147# loaded during bootstrap may need to run shell commands.
156bootstrap: addsection cmdproxy bootstrap-$(MAKETYPE) 148bootstrap: $(BLD)/addsection.exe $(BLD)/cmdproxy.exe bootstrap-$(MAKETYPE)
157 $(MAKE) $(MFLAGS) $(XMFLAGS) all 149 $(MAKE) $(MFLAGS) $(XMFLAGS) all
158 150
159bootstrap-nmake: addsection cmdproxy 151bootstrap-nmake: $(BLD)/addsection.exe $(BLD)/cmdproxy.exe
160 cd ..\lisp 152 cd ..\lisp
161 $(MAKE) $(MFLAGS) bootstrap-clean 153 $(MAKE) $(MFLAGS) bootstrap-clean
162 cd ..\src 154 cd ..\src
@@ -176,7 +168,7 @@ bootstrap-nmake: addsection cmdproxy
176 $(MAKE) $(MFLAGS) DOC 168 $(MAKE) $(MFLAGS) DOC
177 cd ..\nt 169 cd ..\nt
178 170
179bootstrap-gmake: addsection cmdproxy 171bootstrap-gmake: $(BLD)/addsection.exe $(BLD)/cmdproxy.exe
180 $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp bootstrap-clean 172 $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp bootstrap-clean
181 $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../src clean 173 $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../src clean
182 $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib-src clean 174 $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lib-src clean
@@ -257,7 +249,7 @@ install-other-dirs-gmake: all
257 $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp install 249 $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp install
258 $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../leim install 250 $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../leim install
259 251
260install-addpm: $(INSTALL_DIR)/bin addpm 252install-addpm: $(INSTALL_DIR)/bin $(BLD)/addpm.exe
261 - $(CP) $(BLD)/addpm.exe $(INSTALL_DIR)/bin 253 - $(CP) $(BLD)/addpm.exe $(INSTALL_DIR)/bin
262 254
263install-shortcuts: install-addpm 255install-shortcuts: install-addpm
diff --git a/nt/multi-install-info.bat b/nt/multi-install-info.bat
index 0fff904c60e..9bb723a4d89 100644
--- a/nt/multi-install-info.bat
+++ b/nt/multi-install-info.bat
@@ -3,7 +3,7 @@
3rem Hack to run install-info with multiple info files on the command 3rem Hack to run install-info with multiple info files on the command
4rem line on the Windows platform. 4rem line on the Windows platform.
5 5
6rem Copyright (C) 2003-2012 Free Software Foundation, Inc. 6rem Copyright (C) 2003-2013 Free Software Foundation, Inc.
7 7
8rem This file is part of GNU Emacs. 8rem This file is part of GNU Emacs.
9 9
diff --git a/nt/nmake.defs b/nt/nmake.defs
index 2c6bc66b673..04a3f1660a8 100644
--- a/nt/nmake.defs
+++ b/nt/nmake.defs
@@ -1,5 +1,5 @@
1# -*- Makefile -*- definition file for building GNU Emacs on Windows NT. 1# -*- Makefile -*- definition file for building GNU Emacs on Windows NT.
2# Copyright (C) 2000-2012 Free Software Foundation, Inc. 2# Copyright (C) 2000-2013 Free Software Foundation, Inc.
3 3
4# This file is part of GNU Emacs. 4# This file is part of GNU Emacs.
5 5
@@ -117,7 +117,7 @@ RC_INCLUDE = -i
117 117
118USE_CRT_DLL = 1 118USE_CRT_DLL = 1
119 119
120!if USE_CRT_DLL 120!if $(USE_CRT_DLL)
121libc = msvcrt$(D).lib 121libc = msvcrt$(D).lib
122EMACS_EXTRA_C_FLAGS= -D_DLL -D_MT -DUSE_CRT_DLL=1 122EMACS_EXTRA_C_FLAGS= -D_DLL -D_MT -DUSE_CRT_DLL=1
123!else 123!else
diff --git a/nt/paths.h b/nt/paths.h
index 801d187646f..e9601a7ce32 100644
--- a/nt/paths.h
+++ b/nt/paths.h
@@ -1,7 +1,7 @@
1/* paths.h file for MS Windows 1/* paths.h file for MS Windows
2 2
3Copyright (C) 1993, 1995, 1997, 1999, 2001-2012 3Copyright (C) 1993, 1995, 1997, 1999, 2001-2013 Free Software
4 Free Software Foundation, Inc. 4Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
7 7
diff --git a/nt/preprep.c b/nt/preprep.c
index 6976567e038..42855ce7f20 100644
--- a/nt/preprep.c
+++ b/nt/preprep.c
@@ -1,5 +1,5 @@
1/* Pre-process emacs.exe for profiling by MSVC. 1/* Pre-process emacs.exe for profiling by MSVC.
2 Copyright (C) 1999, 2001-2012 Free Software Foundation, Inc. 2 Copyright (C) 1999, 2001-2013 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
@@ -25,7 +25,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
25#include <stdio.h> 25#include <stdio.h>
26#include <fcntl.h> 26#include <fcntl.h>
27#include <time.h> 27#include <time.h>
28#ifdef __GNUC__ 28#if defined(__GNUC__) && !defined(_W64)
29#define _ANONYMOUS_UNION 29#define _ANONYMOUS_UNION
30#define _ANONYMOUS_STRUCT 30#define _ANONYMOUS_STRUCT
31#endif 31#endif
diff --git a/nt/runemacs.c b/nt/runemacs.c
index dbb18bcd82c..b090ffdd639 100644
--- a/nt/runemacs.c
+++ b/nt/runemacs.c
@@ -1,6 +1,6 @@
1/* runemacs --- Simple program to start Emacs with its console window hidden. 1/* runemacs --- Simple program to start Emacs with its console window hidden.
2 2
3Copyright (C) 2001-2012 Free Software Foundation, Inc. 3Copyright (C) 2001-2013 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/nt/zipdist.bat b/nt/zipdist.bat
index e196299b6d6..2953e40ae89 100644
--- a/nt/zipdist.bat
+++ b/nt/zipdist.bat
@@ -1,5 +1,5 @@
1@echo off 1@echo off
2rem Copyright (C) 2001-2012 Free Software Foundation, Inc. 2rem Copyright (C) 2001-2013 Free Software Foundation, Inc.
3 3
4rem Author: Christoph Scholtes cschol2112 at gmail.com 4rem Author: Christoph Scholtes cschol2112 at gmail.com
5 5