From a583bbef0ea8fe8bbc12ba93fef83f079e04edaf Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Sun, 22 Aug 2010 20:00:08 +0300 Subject: [PATCH] Fix the w32 build after 2010-08-22T15:14:37Z!dann@ics.uci.edu. sysselect.h [WINDOWSNT]: Don't define the FD_* and select stuff for w32. s/ms-w32.h (HAVE_SYS_TIMEB_H): Don't #undef HAVE_SYS_SELECT_H, it's done in nt/config.nt. makefile.w32-in ($(BLD)/sysdep.$(O)): Depend on sysselect.h. --- src/ChangeLog | 8 ++++++++ src/makefile.w32-in | 1 + src/s/ms-w32.h | 1 - src/sysselect.h | 5 +++++ 4 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/ChangeLog b/src/ChangeLog index 86b94e10d90..4add0968b6e 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,13 @@ 2010-08-22 Eli Zaretskii + * sysselect.h [WINDOWSNT]: Don't define the FD_* and select stuff + for w32. + + * s/ms-w32.h (HAVE_SYS_TIMEB_H): Don't #undef HAVE_SYS_SELECT_H, + it's done in nt/config.nt. + + * makefile.w32-in ($(BLD)/sysdep.$(O)): Depend on sysselect.h. + * unexcoff.c (report_error, make_hdr, write_segment) (copy_text_and_data, copy_sym, mark_x, adjust_lnnoptrs, unexec): Convert argument lists and prototypes to ANSI C. diff --git a/src/makefile.w32-in b/src/makefile.w32-in index fc86ae6cb0c..8d99d6cedfe 100644 --- a/src/makefile.w32-in +++ b/src/makefile.w32-in @@ -1357,6 +1357,7 @@ $(BLD)/sysdep.$(O) : \ $(SRC)/frame.h \ $(SRC)/keyboard.h \ $(SRC)/process.h \ + $(SRC)/sysselect.h \ $(SRC)/syssignal.h \ $(SRC)/systime.h \ $(SRC)/systty.h \ diff --git a/src/s/ms-w32.h b/src/s/ms-w32.h index f61fae57eff..4ae5f32e873 100644 --- a/src/s/ms-w32.h +++ b/src/s/ms-w32.h @@ -106,7 +106,6 @@ struct sigaction { #define HAVE_SOUND 1 #define LISP_FLOAT_TYPE 1 -#undef HAVE_SYS_SELECT_H #define HAVE_SYS_TIMEB_H 1 #define HAVE_SYS_TIME_H 1 #define HAVE_UNISTD_H 1 diff --git a/src/sysselect.h b/src/sysselect.h index ddb3e91f2e3..0c90814390c 100644 --- a/src/sysselect.h +++ b/src/sysselect.h @@ -27,6 +27,10 @@ along with GNU Emacs. If not, see . */ #endif #endif +/* The w32 build defines select stuff in w32.h, which is included + where w32 needs it, but not where sysselect.h is included. The w32 + definitions in w32.h are incompatible with the below. */ +#ifndef WINDOWSNT #ifdef FD_SET #ifdef FD_SETSIZE #define MAXDESC FD_SETSIZE @@ -44,6 +48,7 @@ along with GNU Emacs. If not, see . */ #define FD_ISSET(n, p) (*(p) & (1 << (n))) #define FD_ZERO(p) (*(p) = 0) #endif /* no FD_SET */ +#endif /* not WINDOWSNT */ #if !defined (HAVE_SELECT) #define select sys_select -- 2.39.2