summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2012-10-17 21:02:44 +0200
committerEli Zaretskii <eliz@gnu.org>2012-10-17 21:02:44 +0200
commita68089e4a4dd41c9b838d82d1d96d971b01398c8 (patch)
tree96c0226490d77760d0f783a4646c38f23cc7a688 /src
parent6c24e35f04e102ce8ddc4e6f9a1bc5e117a91b45 (diff)
downloademacs-a68089e4a4dd41c9b838d82d1d96d971b01398c8.tar.gz
Fix warnings when compiling on MS-Windows with -std=gnu99.
src/makefile.w32-in ($(BLD)/w32.$(O)): ($(BLD)/vm-limit.$(O)): ($(BLD)/term.$(O)): ($(BLD)/unexw32.$(O)): ($(BLD)/fileio.$(O)): ($(BLD)/dispnew.$(O)): Update dependencies. src/w32term.h (w32_initialize_display_info, initialize_w32_display): Add prototypes. src/w32proc.c: Include ctype.h. src/w32.h (init_environment, check_windows_init_file) (syms_of_ntproc, syms_of_ntterm, dostounix_filename) (unixtodos_filename, init_winsock, srandom, random, sys_pipe) (set_process_dir, sys_spawnve, register_child, sys_sleep, getwd) (sys_link): Add prototypes. src/w32.c: Include w32select.h. (sys_access, e_malloc, sys_select): Add prototypes. (emacs_gnutls_pull): 'timeout' is now EMACS_TIME, not struct timeval. src/vm-limit.c [WINDOWSNT]: Include w32heap.h. src/unexw32.c: Include lisp.h and w32.h. src/term.c [WINDOWSNT]: Include w32term.h. src/process.c [WINDOWSNT]: Add prototype of sys_select. src/fileio.c [WINDOWSNT]: Include w32.h. src/dispnew.c [WINDOWSNT]: Include w32.h. nt/inc/pwd.h (getuid, geteuid): Add prototypes. nt/inc/ms-w32.h (sys_wait, _getpid, gmtgime_r, localtime_r) (signal_handler, sys_signal, sigemptyset, sigfillset, sigprocmask) (pthread_sigmask, sigismember, setpgrp, sigaction, alarm) (sys_kill, getpagesize): Add prototypes for emulated functions. nt/inc/grp.h (getgid, getegid): Add prototypes. nt/gmake.defs (DEBUG_CFLAGS) [NOOPT]: Add -std=gnu99. nt/configure.bat (chkapiN): Avoid compiler warning in junk.c when compiling with -std=gnu99. nt/config.nt (CHECK_LISP_OBJECT_TYPE): Don't undef, so that it could be used via --cflags switch to configure.bat.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog34
-rw-r--r--src/dispnew.c4
-rw-r--r--src/fileio.c1
-rw-r--r--src/makefile.w32-in7
-rw-r--r--src/process.c5
-rw-r--r--src/term.c1
-rw-r--r--src/unexw32.c2
-rw-r--r--src/vm-limit.c2
-rw-r--r--src/w32.c12
-rw-r--r--src/w32.h22
-rw-r--r--src/w32proc.c3
-rw-r--r--src/w32term.h3
12 files changed, 91 insertions, 5 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 3a6fb718e41..827850e332d 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,39 @@
2012-10-17 Eli Zaretskii <eliz@gnu.org>
+ * makefile.w32-in ($(BLD)/w32.$(O)):
+ ($(BLD)/vm-limit.$(O)):
+ ($(BLD)/term.$(O)):
+ ($(BLD)/unexw32.$(O)):
+ ($(BLD)/fileio.$(O)):
+ ($(BLD)/dispnew.$(O)): Update dependencies.
+
+ * w32term.h (w32_initialize_display_info, initialize_w32_display):
+ Add prototypes.
+
+ * w32proc.c: Include ctype.h.
+
+ * w32.h (init_environment, check_windows_init_file)
+ (syms_of_ntproc, syms_of_ntterm, dostounix_filename)
+ (unixtodos_filename, init_winsock, srandom, random, sys_pipe)
+ (set_process_dir, sys_spawnve, register_child, sys_sleep, getwd)
+ (sys_link): Add prototypes.
+
+ * w32.c: Include w32select.h.
+ (sys_access, e_malloc, sys_select): Add prototypes.
+ (emacs_gnutls_pull): 'timeout' is now EMACS_TIME, not struct timeval.
+
+ * vm-limit.c [WINDOWSNT]: Include w32heap.h.
+
+ * unexw32.c: Include lisp.h and w32.h.
+
+ * term.c [WINDOWSNT]: Include w32term.h.
+
+ * process.c [WINDOWSNT]: Add prototype of sys_select.
+
+ * fileio.c [WINDOWSNT]: Include w32.h.
+
+ * dispnew.c [WINDOWSNT]: Include w32.h.
+
* cygw32.c (Fcygwin_convert_path_to_windows)
(Fcygwin_convert_path_from_windows): Use EQ to compare 2
Lisp_Object values. (Bug#12661)
diff --git a/src/dispnew.c b/src/dispnew.c
index 0956e3f2905..fa24408aa43 100644
--- a/src/dispnew.c
+++ b/src/dispnew.c
@@ -60,6 +60,10 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#if defined (HAVE_TERM_H) && defined (GNU_LINUX)
#include <term.h> /* for tgetent */
#endif
+
+#ifdef WINDOWSNT
+#include "w32.h"
+#endif
/* Structure to pass dimensions around. Used for character bounding
boxes, glyph matrix dimensions and alike. */
diff --git a/src/fileio.c b/src/fileio.c
index e3a91c2c9da..d47d7dd9e0b 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -53,6 +53,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include <windows.h>
#include <fcntl.h>
#include <sys/file.h>
+#include "w32.h"
#endif /* not WINDOWSNT */
#ifdef MSDOS
diff --git a/src/makefile.w32-in b/src/makefile.w32-in
index 2acce9c123f..5be1ccb70df 100644
--- a/src/makefile.w32-in
+++ b/src/makefile.w32-in
@@ -735,6 +735,7 @@ $(BLD)/dispnew.$(O) : \
$(SRC)/disptab.h \
$(SRC)/indent.h \
$(SRC)/termchar.h \
+ $(SRC)/w32.h \
$(NT_INC)/unistd.h \
$(BUFFER_H) \
$(CHARACTER_H) \
@@ -832,6 +833,7 @@ $(BLD)/fileio.$(O) : \
$(SRC)/fileio.c \
$(SRC)/blockinput.h \
$(SRC)/commands.h \
+ $(SRC)/w32.h \
$(NT_INC)/pwd.h \
$(NT_INC)/sys/file.h \
$(NT_INC)/sys/stat.h \
@@ -1173,6 +1175,7 @@ $(BLD)/w32.$(O) : \
$(SRC)/w32.h \
$(SRC)/w32common.h \
$(SRC)/w32heap.h \
+ $(SRC)/w32select.h \
$(NT_INC)/pwd.h \
$(NT_INC)/sys/file.h \
$(NT_INC)/sys/time.h \
@@ -1428,6 +1431,7 @@ $(BLD)/term.$(O) : \
$(SYSSIGNAL_H) \
$(SYSTTY_H) \
$(TERMHOOKS_H) \
+ $(W32TERM_H) \
$(WINDOW_H)
$(BLD)/terminal.$(O) : \
@@ -1468,13 +1472,16 @@ $(BLD)/undo.$(O) : \
$(BLD)/unexw32.$(O) : \
$(SRC)/unexw32.c \
$(SRC)/unexec.h \
+ $(SRC)/w32.h \
$(SRC)/w32common.h \
$(SRC)/w32heap.h \
+ $(LISP_H) \
$(CONFIG_H)
$(BLD)/vm-limit.$(O) : \
$(SRC)/vm-limit.c \
$(SRC)/mem-limits.h \
+ $(SRC)/w32heap.h \
$(NT_INC)/unistd.h \
$(CONFIG_H) \
$(LISP_H)
diff --git a/src/process.c b/src/process.c
index d45a2c6e8e0..307e82819d6 100644
--- a/src/process.c
+++ b/src/process.c
@@ -125,6 +125,11 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include "xgselect.h"
#endif
+#ifdef WINDOWSNT
+extern int sys_select (int, SELECT_TYPE *, SELECT_TYPE *, SELECT_TYPE *,
+ EMACS_TIME *, void *);
+#endif
+
#ifndef WNOHANG
# undef waitpid
# define waitpid(pid, status, options) wait (status)
diff --git a/src/term.c b/src/term.c
index acce9c0548c..f7c87b7608d 100644
--- a/src/term.c
+++ b/src/term.c
@@ -66,6 +66,7 @@ static int been_here = -1;
/* The name of the default console device. */
#ifdef WINDOWSNT
#define DEV_TTY "CONOUT$"
+#include "w32term.h"
#else
#define DEV_TTY "/dev/tty"
#endif
diff --git a/src/unexw32.c b/src/unexw32.c
index 82671d0f120..1e591a78b73 100644
--- a/src/unexw32.c
+++ b/src/unexw32.c
@@ -22,7 +22,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include <config.h>
#include "unexec.h"
+#include "lisp.h"
#include "w32common.h"
+#include "w32.h"
#include <stdio.h>
#include <fcntl.h>
diff --git a/src/vm-limit.c b/src/vm-limit.c
index 3020b84858a..2a71e88695a 100644
--- a/src/vm-limit.c
+++ b/src/vm-limit.c
@@ -85,6 +85,8 @@ get_lim_data (void)
#else /* not USG */
#ifdef WINDOWSNT
+#include "w32heap.h"
+
static void
get_lim_data (void)
{
diff --git a/src/w32.c b/src/w32.c
index babbcc6df9f..5ac1bc3eb7c 100644
--- a/src/w32.c
+++ b/src/w32.c
@@ -175,6 +175,7 @@ typedef struct _REPARSE_DATA_BUFFER {
#include "ndir.h"
#include "w32common.h"
#include "w32heap.h"
+#include "w32select.h"
#include "systime.h"
#include "dispextern.h" /* for xstrcasecmp */
#include "coding.h" /* for Vlocale_coding_system */
@@ -198,6 +199,12 @@ static int enable_privilege (LPCTSTR, BOOL, TOKEN_PRIVILEGES *);
static int restore_privilege (TOKEN_PRIVILEGES *);
static BOOL WINAPI revert_to_self (void);
+extern int sys_access (const char *, int);
+extern void *e_malloc (size_t);
+extern int sys_select (int, SELECT_TYPE *, SELECT_TYPE *, SELECT_TYPE *,
+ EMACS_TIME *, void *);
+
+
/* Initialization states.
@@ -6961,7 +6968,7 @@ emacs_gnutls_pull (gnutls_transport_ptr_t p, void* buf, size_t sz)
{
int n, sc, err;
SELECT_TYPE fdset;
- struct timeval timeout;
+ EMACS_TIME timeout;
struct Lisp_Process *process = (struct Lisp_Process *)p;
int fd = process->infd;
@@ -6977,8 +6984,7 @@ emacs_gnutls_pull (gnutls_transport_ptr_t p, void* buf, size_t sz)
if (err == EWOULDBLOCK)
{
/* Set a small timeout. */
- timeout.tv_sec = 1;
- timeout.tv_usec = 0;
+ timeout = make_emacs_time (1, 0);
FD_ZERO (&fdset);
FD_SET ((int)fd, &fdset);
diff --git a/src/w32.h b/src/w32.h
index c4cfdf5fedd..8309a3cc23d 100644
--- a/src/w32.h
+++ b/src/w32.h
@@ -146,6 +146,28 @@ extern int _sys_wait_accept (int fd);
extern Lisp_Object QCloaded_from;
extern HMODULE w32_delayed_load (Lisp_Object);
+extern void init_environment (char **);
+extern void check_windows_init_file (void);
+extern void syms_of_ntproc (void);
+extern void syms_of_ntterm (void);
+extern void dostounix_filename (register char *);
+extern void unixtodos_filename (register char *);
+extern BOOL init_winsock (int load_now);
+extern void srandom (int);
+extern int random (void);
+
+extern int sys_pipe (int *);
+
+extern void set_process_dir (char *);
+extern int sys_spawnve (int, char *, char **, char **);
+extern void register_child (int, int);
+
+extern void sys_sleep (int);
+extern char *getwd (char *);
+extern int sys_link (const char *, const char *);
+
+
+
#ifdef HAVE_GNUTLS
#include <gnutls/gnutls.h>
diff --git a/src/w32proc.c b/src/w32proc.c
index 7e8183b0e82..57b3860cb76 100644
--- a/src/w32proc.c
+++ b/src/w32proc.c
@@ -24,6 +24,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
+#include <ctype.h>
#include <io.h>
#include <fcntl.h>
#include <signal.h>
@@ -68,8 +69,6 @@ extern BOOL WINAPI IsValidLocale (LCID, DWORD);
Lisp_Object Qhigh, Qlow;
-typedef void (_CALLBACK_ *signal_handler) (int);
-
/* Signal handlers...SIG_DFL == 0 so this is initialized correctly. */
static signal_handler sig_handlers[NSIG];
diff --git a/src/w32term.h b/src/w32term.h
index 83f9e7b98dc..af5b37a1171 100644
--- a/src/w32term.h
+++ b/src/w32term.h
@@ -681,6 +681,9 @@ extern BOOL parse_button (int, int, int *, int *);
extern void w32_sys_ring_bell (struct frame *f);
extern void x_delete_display (struct w32_display_info *dpyinfo);
+extern void w32_initialize_display_info (Lisp_Object);
+extern void initialize_w32_display (struct terminal *);
+
/* Keypad command key support. W32 doesn't have virtual keys defined
for the function keys on the keypad (they are mapped to the standard