diff options
-rw-r--r-- | gdb/ChangeLog | 9 | ||||
-rw-r--r-- | gdb/Makefile.in | 10 | ||||
-rw-r--r-- | gdb/inflow.c | 17 | ||||
-rw-r--r-- | gdb/inflow.h | 51 | ||||
-rw-r--r-- | gdb/inftarg.c | 3 | ||||
-rw-r--r-- | gdb/procfs.c | 3 |
6 files changed, 69 insertions, 24 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 09fbfc08d1c..f81c39b3b92 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,14 @@ 2003-02-06 Andrew Cagney <ac131313@redhat.com> + * Makefile.in (inflow_h): Define. + (procfs.o, inflow.o, procfs.o): Update dependencies. + * inftarg.c (child_stop): Delete extern declaration of + inferior_process_group. Include "inflow.h". + * procfs.c (procfs_stop): Ditto. Include "inflow.h". + * inflow.c (PROCESS_GROUP_TYPE): Move definitions from here ... + * inflow.h (PROCESS_GROUP_TYPE): ... to here. New file. + (our_process_group, inferior_process_group): Extern declarations. + * procfs.c: Include "gdb_assert.h". * linux-proc.c: Include "gdb_stat.h" instead of <sys/stat.h>. diff --git a/gdb/Makefile.in b/gdb/Makefile.in index c5de436c140..e4e10fed2aa 100644 --- a/gdb/Makefile.in +++ b/gdb/Makefile.in @@ -660,6 +660,7 @@ i386_tdep_h = i386-tdep.h i387_tdep_h = i387-tdep.h inf_loop_h = inf-loop.h inferior_h = inferior.h $(breakpoint_h) $(target_h) $(frame_h) +inflow_h = inflow.h $(terminal_h) interps_h = interps.h jv_lang_h = jv-lang.h kod_h = kod.h @@ -1790,7 +1791,8 @@ infcmd.o: infcmd.c $(defs_h) $(gdb_string_h) $(symtab_h) $(gdbtypes_h) \ $(objfiles_h) $(completer_h) $(ui_out_h) $(event_top_h) \ $(parser_defs_h) $(regcache_h) inflow.o: inflow.c $(defs_h) $(frame_h) $(inferior_h) $(command_h) \ - $(serial_h) $(terminal_h) $(target_h) $(gdbthread_h) $(gdb_string_h) + $(serial_h) $(terminal_h) $(target_h) $(gdbthread_h) $(gdb_string_h) \ + $(inflow_h) infptrace.o: infptrace.c $(defs_h) $(frame_h) $(inferior_h) $(target_h) \ $(gdb_string_h) $(regcache_h) $(gdb_wait_h) $(command_h) \ $(gdb_dirent_h) $(gdbcore_h) $(gdb_stat_h) @@ -1799,7 +1801,7 @@ infrun.o: infrun.c $(defs_h) $(gdb_string_h) $(symtab_h) $(frame_h) \ $(cli_script_h) $(target_h) $(gdbthread_h) $(annotate_h) \ $(symfile_h) $(top_h) $(inf_loop_h) $(regcache_h) $(value_h) inftarg.o: inftarg.c $(defs_h) $(frame_h) $(inferior_h) $(target_h) \ - $(gdbcore_h) $(command_h) $(gdb_stat_h) $(gdb_wait_h) + $(gdbcore_h) $(command_h) $(gdb_stat_h) $(gdb_wait_h) $(inflow_h) infttrace.o: infttrace.c $(defs_h) $(frame_h) $(inferior_h) $(target_h) \ $(gdb_string_h) $(gdb_wait_h) $(command_h) $(gdbcore_h) interps.o: interps.c $(defs_h) $(gdbcmd_h) $(ui_out_h) $(event_loop_h) \ @@ -2007,8 +2009,8 @@ proc-service.o: proc-service.c $(defs_h) $(gdb_proc_service_h) $(inferior_h) \ $(symtab_h) $(target_h) $(gregset_h) proc-why.o: proc-why.c $(defs_h) $(proc_utils_h) procfs.o: procfs.c $(defs_h) $(inferior_h) $(target_h) $(gdbcore_h) \ - $(elf_bfd_h) $(gdbcmd_h) $(gdbthread_h) $(gdb_dirent_h) $(X_OK) \ - $(gdb_stat_h) $(proc_utils_h) $(gregset_h) + $(elf_bfd_h) $(gdbcmd_h) $(gdbthread_h) $(gdb_assert_h) $(inflow_h) \ + $(gdb_dirent_h) $(X_OK) $(gdb_stat_h) $(proc_utils_h) $(gregset_h) regcache.o: regcache.c $(defs_h) $(inferior_h) $(target_h) $(gdbarch_h) \ $(gdbcmd_h) $(regcache_h) $(reggroups_h) $(gdb_assert_h) \ $(gdb_string_h) $(gdbcmd_h) diff --git a/gdb/inflow.c b/gdb/inflow.c index c8df106fe9a..2a41f57982f 100644 --- a/gdb/inflow.c +++ b/gdb/inflow.c @@ -35,22 +35,7 @@ #include <sys/select.h> #endif -#ifdef HAVE_TERMIOS -#define PROCESS_GROUP_TYPE pid_t -#endif - -#ifdef HAVE_TERMIO -#define PROCESS_GROUP_TYPE int -#endif - -#ifdef HAVE_SGTTY -#ifdef SHORT_PGRP -/* This is only used for the ultra. Does it have pid_t? */ -#define PROCESS_GROUP_TYPE short -#else -#define PROCESS_GROUP_TYPE int -#endif -#endif /* sgtty */ +#include "inflow.h" #ifdef HAVE_SYS_IOCTL_H #include <sys/ioctl.h> diff --git a/gdb/inflow.h b/gdb/inflow.h new file mode 100644 index 00000000000..1cbfa71b484 --- /dev/null +++ b/gdb/inflow.h @@ -0,0 +1,51 @@ +/* Low level interface to ptrace, for GDB when running under Unix. + + Copyright 2003 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 2 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, write to the Free Software + Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ + +#ifndef INFLOW_H +#define INFLOW_H + +#include "terminal.h" /* For HAVE_TERMIOS et.al. */ + +#ifdef HAVE_TERMIOS +#define PROCESS_GROUP_TYPE pid_t +#endif + +#ifdef HAVE_TERMIO +#define PROCESS_GROUP_TYPE int +#endif + +#ifdef HAVE_SGTTY +#ifdef SHORT_PGRP +/* This is only used for the ultra. Does it have pid_t? */ +#define PROCESS_GROUP_TYPE short +#else +#define PROCESS_GROUP_TYPE int +#endif +#endif /* sgtty */ + +#ifdef PROCESS_GROUP_TYPE +/* Process group for us and the inferior. Saved and restored just like + {our,inferior}_ttystate. */ +extern PROCESS_GROUP_TYPE our_process_group; +extern PROCESS_GROUP_TYPE inferior_process_group; +#endif + +#endif diff --git a/gdb/inftarg.c b/gdb/inftarg.c index 629f37d96c7..7786579d406 100644 --- a/gdb/inftarg.c +++ b/gdb/inftarg.c @@ -36,6 +36,7 @@ #include <fcntl.h> #include "gdb_wait.h" +#include "inflow.h" extern struct symtab_and_line *child_enable_exception_callback (enum exception_event_kind, @@ -512,8 +513,6 @@ child_can_run (void) static void child_stop (void) { - extern pid_t inferior_process_group; - kill (-inferior_process_group, SIGINT); } diff --git a/gdb/procfs.c b/gdb/procfs.c index 3ad2f886ea8..969bbcb2b61 100644 --- a/gdb/procfs.c +++ b/gdb/procfs.c @@ -43,6 +43,7 @@ Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include <signal.h> #include <ctype.h> #include "gdb_assert.h" +#include "inflow.h" /* * PROCFS.C @@ -4606,8 +4607,6 @@ procfs_can_run (void) static void procfs_stop (void) { - extern pid_t inferior_process_group; - kill (-inferior_process_group, SIGINT); } |