/* sysselect.h - System-dependent definitions for the select function.
- Copyright (C) 1995, 2001, 2002, 2003, 2004, 2005,
- 2006, 2007 Free Software Foundation, Inc.
+ Copyright (C) 1995, 2001-2011 Free Software Foundation, Inc.
This file is part of GNU Emacs.
-GNU Emacs is free software; you can redistribute it and/or modify
+GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 3, or (at your option)
-any later version.
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
-along with GNU Emacs; see the file COPYING. If not, write to
-the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-Boston, MA 02110-1301, USA. */
+along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#ifdef HAVE_SYS_SELECT_H
-#if defined (DARWIN) || defined (MAC_OSX)
+#if defined (DARWIN_OS)
#undef init_process
#endif
#include <sys/select.h>
-#if defined (DARWIN) || defined (MAC_OSX)
+#if defined (DARWIN_OS)
#define init_process emacs_init_process
#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
#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) || defined (BROKEN_SELECT_NON_X)
+#if !defined (HAVE_SELECT)
#define select sys_select
#endif
-/* arch-tag: 36d05500-8cf6-4847-8e78-6721f18c06ef
- (do not change this comment) */