mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-01-13 16:38:14 +00:00
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.
This commit is contained in:
parent
6c24e35f04
commit
a68089e4a4
19
nt/ChangeLog
19
nt/ChangeLog
@ -1,3 +1,22 @@
|
||||
2012-10-17 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* inc/pwd.h (getuid, geteuid): Add prototypes.
|
||||
|
||||
* 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.
|
||||
|
||||
* inc/grp.h (getgid, getegid): Add prototypes.
|
||||
|
||||
* gmake.defs (DEBUG_CFLAGS) [NOOPT]: Add -std=gnu99.
|
||||
|
||||
* configure.bat (chkapiN): Avoid compiler warning in junk.c when
|
||||
compiling with -std=gnu99.
|
||||
|
||||
* config.nt (CHECK_LISP_OBJECT_TYPE): Don't undef, so that it
|
||||
could be used via --cflags switch to configure.bat.
|
||||
|
||||
2012-10-08 Juanma Barranquero <lekktu@gmail.com>
|
||||
|
||||
* config.nt: Sync with autogen/config.in.
|
||||
|
@ -76,7 +76,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
||||
#undef CANNOT_DUMP
|
||||
|
||||
/* Define this to enable compile time checks for the Lisp_Object data type. */
|
||||
#undef CHECK_LISP_OBJECT_TYPE
|
||||
/* #undef CHECK_LISP_OBJECT_TYPE */
|
||||
|
||||
/* Define if you want lock files to be written, so that Emacs can tell
|
||||
instantly when you try to modify a file that someone else has modified in
|
||||
|
@ -429,7 +429,7 @@ rem
|
||||
echo Checking whether Windows API headers are too old...
|
||||
echo #include "windows.h" >junk.c
|
||||
echo #include "usp10.h" >>junk.c
|
||||
echo test(PIMAGE_NT_HEADERS pHeader) >>junk.c
|
||||
echo void test(PIMAGE_NT_HEADERS pHeader) >>junk.c
|
||||
echo {PIMAGE_SECTION_HEADER pSection = IMAGE_FIRST_SECTION(pHeader);} >>junk.c
|
||||
if (%nocygwin%) == (Y) goto chkapi1
|
||||
set cf=%usercflags%
|
||||
|
@ -211,7 +211,7 @@ OBJ1_c = $(patsubst $(BLD)%.$(O),$(CURDIR)%.c,$(OBJ1))
|
||||
OBJ2_c = $(patsubst $(BLD)%.$(O),$(CURDIR)%.c,$(OBJ2))
|
||||
|
||||
ifdef NOOPT
|
||||
DEBUG_CFLAGS = -DEMACSDEBUG -fno-crossjumping
|
||||
DEBUG_CFLAGS = -DEMACSDEBUG -fno-crossjumping -std=gnu99
|
||||
else
|
||||
DEBUG_CFLAGS =
|
||||
endif
|
||||
|
@ -28,7 +28,10 @@ struct group {
|
||||
gid_t gr_gid; /* group numerical ID */
|
||||
};
|
||||
|
||||
struct group *getgrgid(gid_t);
|
||||
extern unsigned getgid (void);
|
||||
extern unsigned getegid (void);
|
||||
|
||||
extern struct group *getgrgid(gid_t);
|
||||
|
||||
#endif /* _GRP_H */
|
||||
|
||||
|
@ -120,21 +120,6 @@ extern char *getenv ();
|
||||
#endif
|
||||
#include <sys/types.h>
|
||||
|
||||
#ifdef _MSC_VER
|
||||
typedef int sigset_t;
|
||||
typedef int ssize_t;
|
||||
#endif
|
||||
|
||||
struct sigaction {
|
||||
int sa_flags;
|
||||
void (_CALLBACK_ *sa_handler)(int);
|
||||
sigset_t sa_mask;
|
||||
};
|
||||
#define SA_RESTART 0
|
||||
#define SIG_BLOCK 1
|
||||
#define SIG_SETMASK 2
|
||||
#define SIG_UNBLOCK 3
|
||||
|
||||
#ifndef MAXPATHLEN
|
||||
#define MAXPATHLEN _MAX_PATH
|
||||
#endif
|
||||
@ -207,6 +192,8 @@ struct sigaction {
|
||||
/* Internal signals. */
|
||||
#define emacs_raise(sig) emacs_abort()
|
||||
|
||||
extern int sys_wait (int *);
|
||||
|
||||
/* termcap.c calls that are emulated. */
|
||||
#define tputs sys_tputs
|
||||
#define tgetstr sys_tgetstr
|
||||
@ -251,6 +238,9 @@ typedef int pid_t;
|
||||
#define stricmp _stricmp
|
||||
#define tzset _tzset
|
||||
|
||||
/* We cannot include system header process.h, since there's src/process.h. */
|
||||
int _getpid (void);
|
||||
|
||||
/* Include time.h before redirecting tzname, since MSVC's time.h
|
||||
defines _tzname to call a function, but also declares tzname a
|
||||
2-element array. Having the redirection before including the
|
||||
@ -272,6 +262,10 @@ struct timespec
|
||||
long int tv_nsec; /* nanoseconds */
|
||||
};
|
||||
|
||||
/* Required for functions in lib/time_r.c, since we don't use lib/time.h. */
|
||||
extern struct tm *gmtime_r (time_t const * restrict, struct tm * restrict);
|
||||
extern struct tm *localtime_r (time_t const * restrict, struct tm * restrict);
|
||||
|
||||
/* This is hacky, but is necessary to avoid warnings about macro
|
||||
redefinitions using the SDK compilers. */
|
||||
#ifndef __STDC__
|
||||
@ -300,6 +294,37 @@ struct timespec
|
||||
#define NSIG 23
|
||||
#endif
|
||||
|
||||
#ifdef _MSC_VER
|
||||
typedef int sigset_t;
|
||||
typedef int ssize_t;
|
||||
#endif
|
||||
|
||||
typedef void (_CALLBACK_ *signal_handler) (int);
|
||||
extern signal_handler sys_signal (int, signal_handler);
|
||||
|
||||
struct sigaction {
|
||||
int sa_flags;
|
||||
void (_CALLBACK_ *sa_handler)(int);
|
||||
sigset_t sa_mask;
|
||||
};
|
||||
#define SA_RESTART 0
|
||||
#define SIG_BLOCK 1
|
||||
#define SIG_SETMASK 2
|
||||
#define SIG_UNBLOCK 3
|
||||
|
||||
extern int sigemptyset (sigset_t *);
|
||||
extern int sigaddset (sigset_t *, int);
|
||||
extern int sigfillset (sigset_t *);
|
||||
extern int sigprocmask (int, const sigset_t *, sigset_t *);
|
||||
extern int pthread_sigmask (int, const sigset_t *, sigset_t *);
|
||||
extern int sigismember (const sigset_t *, int);
|
||||
extern int setpgrp (int, int);
|
||||
extern int sigaction (int, const struct sigaction *, struct sigaction *);
|
||||
extern int alarm (int);
|
||||
|
||||
extern int sys_kill (int, int);
|
||||
|
||||
|
||||
/* For integration with MSDOS support. */
|
||||
#define getdisk() (_getdrive () - 1)
|
||||
#ifdef emacs
|
||||
@ -357,6 +382,7 @@ extern char *get_emacs_configuration_options (void);
|
||||
#endif
|
||||
|
||||
extern int getloadavg (double *, int);
|
||||
extern int getpagesize (void);
|
||||
|
||||
#if defined (__MINGW32__)
|
||||
|
||||
|
@ -18,8 +18,11 @@ struct passwd {
|
||||
typedef unsigned uid_t;
|
||||
typedef uid_t gid_t;
|
||||
|
||||
struct passwd * getpwnam (char *);
|
||||
struct passwd * getpwuid (unsigned);
|
||||
extern unsigned getuid (void);
|
||||
extern unsigned geteuid (void);
|
||||
|
||||
extern struct passwd * getpwnam (char *);
|
||||
extern struct passwd * getpwuid (unsigned);
|
||||
|
||||
|
||||
#endif /* _PWD_H_ */
|
||||
|
@ -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)
|
||||
|
@ -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. */
|
||||
|
@ -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
|
||||
|
@ -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)
|
||||
|
@ -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)
|
||||
|
@ -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
|
||||
|
@ -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>
|
||||
|
@ -85,6 +85,8 @@ get_lim_data (void)
|
||||
#else /* not USG */
|
||||
#ifdef WINDOWSNT
|
||||
|
||||
#include "w32heap.h"
|
||||
|
||||
static void
|
||||
get_lim_data (void)
|
||||
{
|
||||
|
12
src/w32.c
12
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);
|
||||
|
||||
|
22
src/w32.h
22
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>
|
||||
|
||||
|
@ -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];
|
||||
|
||||
|
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user