diff options
author | Tom Tromey <tom@tromey.com> | 2020-04-13 12:42:59 -0600 |
---|---|---|
committer | Tom Tromey <tromey@adacore.com> | 2020-04-13 14:10:03 -0600 |
commit | 06cc9596e8c8e431dcdfe2ce3f494e1431e95d6f (patch) | |
tree | 818bbfd82f66ffd6101f11d68f621f0b2fba9364 /gdbsupport | |
parent | 8ae8e197961644c3621591d0ac5738e7efff64da (diff) | |
download | binutils-06cc9596e8c8e431dcdfe2ce3f494e1431e95d6f.zip binutils-06cc9596e8c8e431dcdfe2ce3f494e1431e95d6f.tar.gz binutils-06cc9596e8c8e431dcdfe2ce3f494e1431e95d6f.tar.bz2 |
Move gdb_select.h to gdbsupport/
This moves gdb_select.h to gdbsupport/, so it can be used by other
code there.
gdb/ChangeLog
2020-04-13 Tom Tromey <tom@tromey.com>
* gdb_select.h: Move to ../gdbsupport/.
* event-loop.c: Update include path.
* top.c: Update include path.
* ser-base.c: Update include path.
* ui-file.c: Update include path.
* ser-tcp.c: Update include path.
* guile/scm-ports.c: Update include path.
* posix-hdep.c: Update include path.
* ser-unix.c: Update include path.
* gdb_usleep.c: Update include path.
* mingw-hdep.c: Update include path.
* inflow.c: Update include path.
* infrun.c: Update include path.
* event-top.c: Update include path.
gdbsupport/ChangeLog
2020-04-13 Tom Tromey <tom@tromey.com>
* gdb_select.h: Move from ../gdb/.
Diffstat (limited to 'gdbsupport')
-rw-r--r-- | gdbsupport/ChangeLog | 4 | ||||
-rw-r--r-- | gdbsupport/gdb_select.h | 51 |
2 files changed, 55 insertions, 0 deletions
diff --git a/gdbsupport/ChangeLog b/gdbsupport/ChangeLog index 0d0ea87..880a6ae 100644 --- a/gdbsupport/ChangeLog +++ b/gdbsupport/ChangeLog @@ -1,5 +1,9 @@ 2020-04-13 Tom Tromey <tom@tromey.com> + * gdb_select.h: Move from ../gdb/. + +2020-04-13 Tom Tromey <tom@tromey.com> + * config.in, configure: Rebuild. * common.m4 (GDB_AC_COMMON): Check for poll.h, sys/poll.h, sys/select.h, and poll. diff --git a/gdbsupport/gdb_select.h b/gdbsupport/gdb_select.h new file mode 100644 index 0000000..69021ac --- /dev/null +++ b/gdbsupport/gdb_select.h @@ -0,0 +1,51 @@ +/* Slightly more portable version of <sys/select.h>. + + Copyright (C) 2006-2020 Free Software Foundation, Inc. + + This file is part of GDB. + + This program 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 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. */ + +#if !defined(GDB_SELECT_H) +#define GDB_SELECT_H + +#ifdef HAVE_SYS_SELECT_H +#include <sys/select.h> +#else +#include "gdbsupport/gdb_sys_time.h" +#endif + +#ifdef USE_WIN32API +#include <winsock2.h> +#endif + +extern int gdb_select (int n, fd_set *readfds, fd_set *writefds, + fd_set *exceptfds, struct timeval *timeout); + +/* Convenience wrapper around gdb_select that returns -1/EINTR if + set_quit_flag is set, either on entry or from a signal handler or + from a different thread while select is blocked. The quit flag is + not cleared on exit -- the caller is responsible to check it with + check_quit_flag or QUIT. + + Note this does NOT return -1/EINTR if any signal handler other than + SIGINT runs, nor if the current SIGINT handler does not call + set_quit_flag. */ +extern int interruptible_select (int n, + fd_set *readfds, + fd_set *writefds, + fd_set *exceptfds, + struct timeval *timeout); + +#endif /* !defined(GDB_SELECT_H) */ |