Commit Graph

100 Commits

Author SHA1 Message Date
Jason Molenda d9fcf2fb1c import gdb-2000-02-01 snapshot 2000-02-02 00:21:19 +00:00
Jason Molenda 2acceee218 import gdb-1999-10-04 snapshot 1999-10-05 23:13:56 +00:00
Jason Molenda c2c6d25f0d import gdb-1999-09-21 1999-09-22 03:28:34 +00:00
Jason Molenda 104c1213b4 import gdb-1999-08-30 snapshot 1999-08-31 01:14:27 +00:00
Jason Molenda c5aa993b1f import gdb-1999-07-07 post reformat 1999-07-07 20:19:36 +00:00
Jason Molenda 9846de1bb5 import gdb-1999-07-07 pre reformat 1999-07-07 17:31:57 +00:00
Jason Molenda 43ff13b418 import gdb-1999-07-05 snapshot 1999-07-05 17:58:44 +00:00
Stan Shebs 7a292a7adf import gdb-19990422 snapshot 1999-04-26 18:34:20 +00:00
Stan Shebs c906108c21 Initial creation of sourceware repository 1999-04-16 01:35:26 +00:00
Stan Shebs 071ea11e85 Initial creation of sourceware repository 1999-04-16 01:34:07 +00:00
Jim Ingham c98fe0c119 This is the merge of the Itcl3.0 gdbtk development branch into the
trunk.  To build it, you will have to do update -dP in the itcl
directory, and update tcl, tk, tix and libgui as well.
1999-01-28 03:50:17 +00:00
Geoffrey Noer d836385e11 Fri Nov 13 00:15:08 1998 Geoffrey Noer <noer@cygnus.com>
Changes to account for name change from cygwin32 to cygwin and
        clean up Win32-related ifdefs.

        * configure.tgt: check for cygwin* instead of cygwin32.
        New cygwin gdb_target variable loses the "32".
        * configure.host: check for cygwin* instead of cygwin32.
        New cygwin gdb_host variable loses the "32".
        * configure.in: test __CYGWIN__ instead of __CYGWIN32__,
        rename gdb_cv_os_cygwin32 variable to drop the "32".  Call
        AM_EXEEXT instead of AC_EXEEXT since that isn't in a released
        autoconf yet.
        * configure: regenerate.

        * main.c: drop "32" from cygwin_ funcs, include sys/cygwin.h
          where
        cygwin path conv protos live, instead of adding a proto here
          for
        them here.
        * {main.c, ser-tcp.c, ser-unix.c, top.c}: check __CYGWIN__
        instead of __CYGWIN32__.
        * source.c: thoughout, check _WIN32 instead of WIN32.

        * config/i386/cygwin32.mh: delete.
        * config/i386/cygwin.mh: new file, was cygwin32.mh.
        * config/i386/cygwin32.mt: delete.
        * config/i386/cygwin.mt: new file, was cygwin32.mt.
        * config/i386/tm-cygwin32.h: delete.
        * config/i386/tm-cygwin.h: new file, was tm-cygwin32.h.
        * config/i386/xm-cygwin32.h: delete.
        * config/i386/xm-cygwin.h: new file, was xm-cygwin32.h.
        * config/i386/xm-windows.h: #include xm-cygwin.h now.
        * config/powerpc/cygwin32.mh: delete.
        * config/powerpc/cygwin.mh: new file, was cygwin32.mh.
        * config/powerpc/cygwin32.mt: delete.
        * config/powerpc/cygwin.mt: new file, was cygwin32.mt.
        * config/powerpc/tm-cygwin32.h: delete.
        * config/powerpc/tm-cygwin.h: new file, was tm-cygwin32.h.
        * config/powerpc/xm-cygwin32.h: delete.
        * config/powerpc/xm-cygwin.h: new file, was xm-cygwin32.h.

        * rdi-share/aclocal.m4: regenerate with aclocal.
        * rdi-share/configure: regenerate with autoconf.
        * rdi-share/{host.h, hostchan.c, hostchan.h, serdrv.c,
        * serpardr.c,
        unixcomm.c}: check __CYGWIN__ instead of __CYGWIN32__.
1998-11-13 08:16:08 +00:00
Jason Molenda 24418cfbac 1998-10-16 Jason Molenda (jsm@bugshack.cygnus.com)
* command.c copying.c copying.awk core-aout.c core-regset.c
          corelow.c dcache.c i386-tdep.c i386v4-nat.c i387-tdep.c
          infcmd.c infptrace.c infrun.c remote.c solib.c symfile.c
          symmisc.c valarith.c: Add prototypes.

        * defs.h: Add prototype for utils.c::do_run_cleanups.

        * gdbtypes.c: Add prototypes.
        (make_pointer_type): Add braces to remove nested if-else ambiguity.
        (make_reference_type): Ditto.

        * printcmd.c (printf_command): Initialize 'f' and 'string' at
        function startup to suppress possibly-used-before-initialized warning.

        * remote-utils.c: Add prototypes.
        (sr_pollchar): Add braces to remove nested if-else ambiguity.

        * ser-tcp.c: Add prototypes.
        (wait_for): Add braces to remove nested if-else ambiguity.
        (tcp_readchar): Ditto.

        * ser-unix.c: Add prototypes.
        (get_tty_state): Don't define errno here.

        (get_tty_state): Don't define errno here.
        (hardwire_readchar): Only define 't' if we are compiling in a Cygwin
        environment.

        * symtab.c: Add prototypes.
        (find_methods): Add braces to remove nested if-else ambiguity.
        (search_symbols): Set 'i' to an initial value to suppress a
        possibly-used-before-initialized warning.

        * valops.c: Add prototypes.
        (value_cast): Set 'eltype2' to an initial value to suppress a
        possibly-used-before-initialized warning.
        (value_of_variable): Add braces to remove nested if-else ambiguity.
        (value_of_this): Ditto.

        * valprint.c: Add prototypes.
        (print_floating): Add braces to remove nested if-else ambiguity.


Looks like a big change, but it is really just a lot of small stuff.

In the cases where GCC was flagging a possible use-before-initialized
warning on variables, it turned out that these were being used properly
but GCC couldn't see that.
1998-10-16 21:45:06 +00:00
Drew Moseley c2867a6c70 Change the definition of ui_loop_hook to be a function pointer
rather than a function.
1998-07-31 17:26:05 +00:00
Keith Seitz 21b3bc779c * ser-unix.c (wait_for): Do not reset timeout_remaining for cygwin32 so
that
        we can use this member to track real timeouts.
        (hardwire_readchar): Modify for cygwin32 so that we only ever use a real
        system timeout of one second. Track the "real" timeout as a series of th
ese
        one second timeouts.
        Call ui_loop_hook to keep the gui alive.

        * top.c: Define new hook for cygwin32, "ui_loop_hook".

        * gdbtk.c (gdbtk_init): Add ui_loop_hook for CygWin32 to work around
        update problems.
1998-05-24 21:05:12 +00:00
Stu Grossman 63c3e305f6 Update copyright. 1998-05-04 21:27:55 +00:00
Stu Grossman e5a940e2c8 * ser-unix.c (baudtab): Add 57600, 115200, 230400, and 460800 baud. 1998-05-02 16:36:05 +00:00
Fred Fish 3ffbdf1532 PR 15068
* utils.c (quit): Call SERIAL_DRAIN_OUTPUT rather than
 	SERIAL_FLUSH_OUTPUT.
	* serial.h (struct serial_ops): Add drain_output, pointer to
 	function that waits for output to drain.
	(SERIAL_DRAIN_OUTPUT): Macro to wait for output to drain.
	* ser-unix.c (hardwire_drain_output): New function and prototype.

	* ser-unix.c (hardwire_ops): Add entry for drain_output function.
	* ser-tcp.c (tcp_ops): Ditto.
	* ser-ocd.c (ocd_ops): Ditto.
	* ser-mac.c (mac_ops): Ditto.
	* ser-go32.c (dos_ops): Ditto.
	* ser-e7kpc.c (e7000pc_ops): Ditto.
1998-03-06 20:38:45 +00:00
Fred Fish b607efe714 See gdb ChangeLog entry with header:
Thu Jul 25 19:41:31 1996  Fred Fish  <fnf@cygnus.com>

for a rather huge set of changes.  I was going to put them here, but it
made cvs dump core.  :-(
1996-07-26 03:01:51 +00:00
Steve Chamberlain dedcc91de6 Thu Sep 28 14:32:11 1995 steve chamberlain <sac@slash.cygnus.com>
* callback.[ch]: New files.
	* remote-rdp.c: Support for the ARM RDP monitor.
	* Makefile: Update.
	* arm-tdep.c (arm_othernames): New.
	(_initialize_arm_tdep): install 'othernames' command.
	(arm_nullified_insn, shifted_reg_val, arm_get_next_pc): New.
	* configure.in: Check for termios.h, termio.h and sgtty.h.
	(i[345]86-*-win32*): New host.
	* configure: Regenerated.
	* inflow.c: Clean up inclusions.
	* main.c (main): Check for WINGDB, not WIN32.
	* printcmd.c (do_examine): Put QUIT test in loop.
	* remote-hms.c (e7000_load): Delete.
	(hms_ops): Point to generic_load instead.
	* remote-hms.c (hms_ops): Point to generic_load.
	* remote-sim.c (sim_callback_write_stdout): Becomes
	gdbsim_write_stdout.
	(gdbsim_load): Call generic_load.
	* remote-utils.c (gr_load_image): Delete.
	* ser-unix.c (terminal.h): Include instead of havig
	own #if tree.
	(hardwire_flush_input): Reset input buffer too.
	* source.c (openp): If WIN32 then open file in binary mode.
	* terminal.h: Configure IO mechanism using autoconf defines if available and
	not overriden.
	* utils.c (quit, pollquit, notice_quit): WIN32 check becomes WINGDB check.
	* config/arm/arm.mt (TDEPFILES): Add remote-rdp.o
	* config/arm/tm-arm.h (TARGET_BYTE_ORDER): becomes TARGET_BYTE_ORDER_SELECTABLE.
	(ADDR_BITS_REMOVE): New.
	(ORIGINAL_REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): New.
	(INST_xx): New
	(FRAME_FIND_SAVED_REGS): Pass the right argument.
	(arm_get_next_pc): Declare.
	* mswin/prebuilt/*/bfdtarget.h (SELECT_ARCHITECTURES): Need leading &.
1995-09-29 00:14:01 +00:00
Fred Fish 6c9638b444 Update FSF address. 1995-08-02 03:41:12 +00:00
Fred Fish 6b14af2bc6 * dache.c (struct dcache_block): Change data member from unsigned char
to char, since everything passed in and out of dcache is char or casted
	to appropriate type anyway.
	(dcache_alloc):  Move assignment of db out of test and combine separate
	tests into if-else.
	(dcache_peek_byte):  Change ptr from unsigned char* to char*.
	(dcache_peek_byte):  Remove now unnecessary cast in read_memory call.
	(dcache_peek):  Change cast of incoming data arg.
	(dcache_poke):  Change cast of addr of incoming data arg.
	(dcache_info):  Mask data passed to printf_filtered to lsbyte only.
	(dcache_info):  Change printf_filtered arg from "% 2x" to " %2x".
	* target.c (debug_to_thread_alive): Change return type to int and
	return zero, for type compatibility with other *_thread_alive funcs.
	(cleanup_target): Change cast of ignore function to match type of the
	to_thread_alive member.
	* defs.h (error_hook): Add ATTR_NORETURN.
	* defs.h (NORETURN, ATTR_NORETURN):  Switch from volatile to
	__attribute__ method with gcc 2.7, to avoid gcc 2.6.3 bug.
	* remote.c (remote_wait):  Cast first arg to strtol, strchr, and strncmp
	to "const char *" from "unsigned char *".
	(remote_wait):  Cast arg to putpkt and strcpy from "unsigned char *" to
	"char *".
	(remote_wait):  Change printf format for long arg from "%d" to "%ld".
	(getpkt):  Remove unused variable "bp".
	(remote_fetch_word, remote_store_word):  Ifdef out apparently unused
	functions.
	* breakpoint.c (watchpoint_check):  Removed unused variables
	"saved_level" and "saved_frame".
	* valops.c (value_arg_coerce):  Add other enum TYPE_CODE_* and
	default cases to switch for completeness.
	* infrun.c (wait_for_inferior):  Enclose "have_waited" label
	in #ifdef that matches the one in which it is referenced.
	* ser-unix.c (hardwire_noflush_set_tty_state):  Enclose otherwise
	unused variable "state" in #ifdef that matches one in which it is
	referenced.
	* eval.c (evaluate_subexp_standard):  Remove unused variable "var".
	* eval.c (evaluate_subexp_standard):  Remove unused variable "tmp_symbol".
	* valarith.c (value_subscript):  Remove unused variable "lowerbound",
	which is redeclared in a nested scope prior to use.
	* printcmd.c (print_frame_nameless_args):  Use "%ld" to print long
	arg, not "%d".
	* {mem-break.c, remote-pa.c, remote.c, saber.suppress}:
	Remove unused static var "check_break_insn_size".
	* buildsym.c (finish_block):  Add other enum LOC_* and default
	cases to switch for completeness.
	ch-lang.c (type_lower_upper):  Removed unused label "retry".
	Add other enum TYPE_* and default cases to switch for completeness.
	* f-typeprint.c (f_type_print_args):  Ifdef out unused function
	that may be used someday when Fortran support is complete.
	* ch-valprint.c (chill_print_type_scalar):  Add other enum
	TYPE_* and default cases to switch for completeness.
	(chill_val_print):  Remove unused local var "high_bound" that
	is redeclared in a nested scope prior to use.
	(chill_var_print):  Use "%ld" to print long arg, not "%d".
	* regex.c (re_compile_fastmap, re_match_2):  Add remaining enum types
	and default to switches for completeness.
	* minsyms.c (lookup_minimal_symbol_text): Delete unused variable
	"trampoline_symbol".
	(prim_record_minimal_symbol_and_info):  Return NULL rather than trash.
	* elfread.c (elf_symtab_read):  Don't dereference NULL returns from
	record_minimal_symbol_and_info.
	* f-lang.c (saved_function_list_end):  Ifdef out unused variable
	that may be used someday.
	* f-valprint.c (f_val_print):  Remove unused local variable "straddr".
1995-07-18 04:38:06 +00:00
Stu Grossman 85c8b135fe * serial.h ser-go32.c ser-go32-para.c ser-mac.c ser-tcp.c
ser-unix.c:  Add SERIAL_SETSTOPBITS to set the number of stopbits
	(needed for IDP board?!?!?).
1995-03-07 09:03:37 +00:00
Stu Grossman 2e6784a89f * configure.in: Add nlm subdir to configdirs for alpha-*-netware
target.
	* defs.h (enum language):  Add language_asm.
	* findvar.c (read_register_bytes read_register_gen
	write_register_bytes read_register read_register_pid
	write_register write_register_pid supply_register):  Move multi-
	thread handling down into these routines.  Create XXX_pid routines
	that allow register references to specify the pid.
	* findvar.c infcmd.c (read_pc read_pc_pid write_pc write_pc_pid
	read_sp write_sp read_fp write_fp):  Move these routines from
	infcmd to findvar to centralize the whole mess.
	* i386-nlmstub.c:  Portability fixes.
	* infptrace.c (child_resume):  Conditionalize to allow other natives
	to override it.  Remove PIDGET gubbish, it's no longer necessary.
	* infrun.c (wait_for_inferior):  Put registers_changed() before
	target_wait() to speed up remote debugging.
	* Replace code that reads registers from other threads with much
	nicer looking new function calls (see changes to findvar.c).
	* Don't skip prologues if debugging assembly source.
	* lynx-nat.c (child_resume):  Lynx now needs it's own version of
	child_resume to handle multi-thread debugging properly.
	* remote.c:  Add O response to get console output from target.
	* (readchar): Add timeout parameter.  Handle SERIAL_EOF and
	SERIAL_ERROR here to simplify callers.
	* Change static var timeout to remote_timeout.
	* (fromhex):  Remove unnecessary return -1 at end of routine.
	* (remote_wait):  Turn this into a big switch statement.  Add
	support for O response.
	* (putpkt):  Remove unnecessary handling of SERIAL_EOF/ERROR.
	* (getpkt):  Split getpkt into two parts.  read_frame deals with
	all formatting issues, run-length encoding, and framing.  getpkt
	now handles error recovery, and frame detection.
	* ser-tcp.c (tcp_readchar):  Handle EINTR from read().
	* ser-unix.c (hardwire_raw):  Set CLOCAL so that we ignore modem
	control.  (hardwire_readchar):  Handle EINTR from read().
	* symfile.c (deduce_language_from_filename):  Add support for .s
	files.
	* config/nm-lynx.h:  Define CHILD_WAIT so that lynx-nat.c can
	override infptrace's child_wait.
	* config/rs6000/rs6000lynx.mh:  Use xm-rs6000ly.h & nm-rs6000ly.h
	instead of XXXlynx.h.
	* config/rs6000/rs6000lynx.mt:  Use tm-rs6000ly.h instead of
	tm-rs6000lynx.h.
	* nlm/gdbserve.c:  Portability fixes.
1994-06-02 16:58:48 +00:00
Peter Schauer 5c07a10bb4 * exec.c (print_section_info): Print entry point for exec_bfd only.
* ser-unix.c (wait_for):  Fix typo in HAVE_TERMIO case.
1994-02-24 12:40:39 +00:00
Jim Kingdon 9db58d3ab4 * ser-unix.c (wait_for, hardwire_readchar) [HAVE_TERMIO, HAVE_TERMIOS]:
If the timeout is too big to fit in c_cc[VTIME], then do multiple reads
	to achieve the desired timeout.
	* serial.h (serial_t): Add field timeout_remaining.
1994-01-29 16:12:35 +00:00
Jim Kingdon 864df7e6f3 * remote-mips.c (mips_initialize): Clear mips_initializing via
cleanup chain, not directly.

	* ser-unix.c (wait_for) [HAVE_TERMIO, HAVE_TERMIOS]: Make a timeout
	of -1 mean forever, like in the HAVE_SGTTY case.  Warn if we are
	munging the timeout due to the limited range of c_cc[VTIME].
1994-01-22 19:16:02 +00:00
Jim Kingdon d881dd869f * ser-unix.c (hardwire_noflush_set_tty_state): Don't muck with ICANON.
* inflow.c (terminal_ours_1): When discussing how to deal with the
	tty state, make note of query() as well as readline.
1994-01-18 04:29:34 +00:00
K. Richard Pixley 88cc9a424a set the other three terminal state pieces for systems that HAVE_SGTTY 1993-12-07 00:41:42 +00:00
Thomas Lord 199b2450f6 Change the stream argument to _filtered to GDB_FILE *.
Change all references to stdout/stderr to gdb_stdout/gdb_stderr.

Replace all calls to stdio output functions with calls to
corresponding _unfiltered functions (`fprintf_unfiltered')

Replaced calls to fopen for output to gdb_fopen.

Added sufficient goo to utils.c and defs.h to make the above work.

The net effect is that stdio output functions are only directly used
in utils.c.  Elsewhere, the _unfiltered and _filtered functions and
GDB_FILE type are used.

In the near future, GDB_FILE will stop being equivalant to FILE.

The semantics of some commands has changed in a very subtle way:
called in the right context, they may cause new occurences of
prompt_for_continue() behavior.  The testsuite doesn't notice anything
like this, though.

Please respect this change by not reintroducing stdio output
dependencies in the main body of gdb code.  All output from commands
should go to a GDB_FILE.

Target-specific code can still use stdio directly to communicate with
targets.
1993-11-01 22:25:23 +00:00
Jim Kingdon a14a8fad36 * inflow.c: Remove unused includes of sys/param.h, etc.
* inflow.c, ser-unix.c, ser-go32.c, ser-tcp.c, serial.h,
	terminal.h: Move all the process group stuff back to inflow.c;
	that's a better place for it and fixes problems with trying to get/set
	the process group of a tty we're doing remote debugging on.
	* terminal.h: Skip the redefine crap if HAVE_TERMIOS.
1993-10-08 22:18:27 +00:00
K. Richard Pixley 0ac0a9f6f1 gcc lint 1993-09-08 20:57:08 +00:00
K. Richard Pixley 057c2f4773 * ser-unix.c (get_tty_state): if a descriptor is not a tty, then
simply save encode this fact as the process group and return
	  success rather than an error.
	  (set_tty_state): if process group is -1, do not reset the
	  process group.
	  (hardwire_reachar): comment change.
1993-08-13 21:48:39 +00:00
Jim Kingdon 95a98b5efa * ser-unix.c (hardwire_send_break) [HAVE_SGTTY]: Use select not usleep. 1993-08-08 21:02:37 +00:00
Jim Kingdon d4c22c5233 * ser-unix.c (gdb_setpgid): Pass our pid, not 0, to setpgid. 1993-07-29 19:02:08 +00:00
Jim Kingdon 704deef2c0 * serial.h, ser-{unix,go32,tcp}.c: Add flush_input and send_break.
* nindy-share/*, remote-nindy.c: Extensive hacking to make it
	conform to GDB conventions like using memcpy not bcopy, serial.h,
	etc.  This is to make it host on Solaris, AIX, etc.
	* Makefile.in: Reflect removed nindy-share files.
1993-07-28 06:45:35 +00:00
Jim Kingdon 7706616f20 * config/sparc/xm-sun4os4.h: Define MEM_FNS_DECLARED and include
<memory.h>.
	Include <malloc.h> rather than declaring malloc functions ourself.

	* ser-unix.c (set_tty_state): Don't ignore errors setting process
	group.
	* inflow.c (terminal_inferior): If attach_flag set, ignore errors
	from set_tty_state.
1993-07-27 22:37:51 +00:00
Jim Kingdon dc34b11d9d * ser-unix.c: Don't try to use job control with termio. 1993-07-19 18:51:00 +00:00
Jim Kingdon 3fe11d4734 * ser-unix.c (hardwire_noflush_set_tty_state): Use an assignment,
not an initializer, to copy the structure.
1993-07-02 02:50:43 +00:00
Jim Kingdon a77a5278a4 * ser-unix.c (hardwire_print_tty_state) [HAVE_TERMIOS]: Don't
print c_line.
	(_initialize_ser_hardwire): Just check whether _POSIX_JOB_CONTROL
	is defined; don't care what it is defined to.
1993-07-01 18:22:02 +00:00
Jim Kingdon c2e247c4ff * inftarg.c: Remove unused include of terminal.h.
* signals.h: Don't undefine signals anymore.
	* main.c: Use job_control from serial.h.
	* fork-child.c (fork_inferior): Use gdb_setpgid.
	* serial.h, ser-unix.c, ser-go32.c: Provide gdb_setpgid.
	* utils.c (quit): Use current_target->to_terminal_ours to figure
	out whether we care about lack of job control, rather than __GO32__.
	* utils.c: Include serial.h not terminal.h
	(quit): Use job_control not TIOCGPGRP.
	* terminal.h: Don't undefine TIOCGPGRP.
	* serial.h, ser-unix.c, ser-go32.c, ser-tcp.c: Add SERIAL_FLUSH_OUTPUT.
	* utils.c (quit): Use it.
	* serial.h: Add SERIAL_UN_FDOPEN.
	* utils.c (quit): Use it.
	* ser-unix.c: Add process group to ttystate.
	[HAVE_SGTTY]: Add tchars, ltchars, and lmode to ttystate.
	* inflow.c: Include serial.h not terminal.h.
	Use serial.h stuff to replace most of the maze of #ifdef's.
	* inflow.c, main.c, inferior.h: make gdb_has_a_terminal a function.
	* serial.h: Document SERIAL_SET_TTY_STATE as being immediate.
	* ser-unix.c: Use TIOCSETN not TIOCSETP so it is true.
	* serial.h, ser-unix.c, ser-go32.c, ser-tcp.c:
	Add SERIAL_PRINT_TTY_STATE, SERIAL_NOFLUSH_SET_TTY_STATE, and
	SERIAL_SET_PROCESS_GROUP.
	* inflow.c: Use them.
	* config/xm-svr4.h, config/rs6000/xm-rs6000.h, config/sparc/sun4os4.h:
	Define HAVE_TERMIOS.
	* Various: Remove all use of TIOC*_BROKEN.
1993-06-30 22:20:53 +00:00
Jim Kingdon 68d2db622d * ser-unix.c: Move #include of <sys/time.h> to HAVE_SGTTY section. 1993-06-27 14:16:34 +00:00
Stu Grossman a037b21e75 * remote.c: Add arg names to prototypes, in a modest effort at
clarification.  Also add prototypes for some new functions.
	* (remote_wait):  Better error reporting for 'T' responses.
	* ser-go32.c (strncasecmp):  Make str1 & str2 be const.
	* (dos_async_init):  Make usage message reflect requested port #.
	* ser-tcp.c (tcp_open):  Terminate hostname properly to prevent
	random hostname lookup failures.  Add nicer message for unknown
	host error.  (wait_for):  Wake up in case of exceptions.  Also,
	restart select() if we got EINTR.
	* ser-unix.c (wait_for):  Restart select() if we got EINTR.
	* serial.c: (serial_close):  Clean up code.
1993-06-26 00:22:30 +00:00
Stu Grossman 38dc5e123f * Makefile.in: Add new file ser-tcp.c.
* defs.h (memcmp):  Add decl for memcmp to #ifndef MEM_FNS_DECLARED.
	* findvar.c (write_register):  See if we are writing back the same
	value that's already in the register.  If so, don't bother.
	* remote.c (putpkt, getpkt):  Improve handling of communication
	problems.
	* ser-go32.c:  Prototype it to death.  Update serial_ops and add
	dummy routines where appropriate.
	* ser-tcp.c:  New module to implement serial I/O via TCP
	connections.
	* ser-unix.c:  Clean up getting/setting of tty state.  Get rid of
	SERIAL_RESTORE, add SERIAL_{GET|SET}_TTY_STATE interfaces.
	* serial.c:  Add start of support for connect command.
	(serial_open):  Distinguish between tcp and local devices.
	* serial.h (struct serial_ops):  Get rid of restore, add
	get_tty_state and set_tty_state.  Define protoypes and macros for
	this mess.
	* gdbserver/remote-utils.c:  Add tcp support.  (readchar):  Do
	some real buffering.  Handle error conditions gracefully.
	* gdbserver/remote-inflow-sparc.c:  Update to remote-inflow.c
	(Lynx), remove lots of cruft.
1993-05-29 01:33:36 +00:00
Stu Grossman 9e15da4ac4 * ser-unix.c (wait_for): Use VTIME to do timeouts instead of
poll() for termio{s}.
1993-05-06 22:17:10 +00:00
Stu Grossman 9775789df6 * ser-unix.c (wait_for): New routine to handle read timeouts,
etc.  Uses poll() if HAVE_TERMIO[S] is defined, select() otherwise.
1993-05-04 02:22:14 +00:00
Fred Fish ebd99d5409 * defs.h (UINT_MAX, LONG_MAX, INT_MAX, INT_MIN): Replace hex
constants with slightly more portable definitions (still depends
	on 2's complement arithmetic though).
	* config/i386/nm-linux.h:  Define NO_SYS_REG_H for no <sys/reg.h>.
	* i386v-nat.c (sys/reg.h):  Conditionalize include on
	NO_SYS_REG_H.  Linux doesn't have <sys/reg.h>.
	* ser-unix.c (termio.h):  Include <termio.h> like other files that
	include termio.h, not <sys/termio.h> which may not exist (on
	linux for example).
1993-05-02 18:57:03 +00:00
Jim Kingdon eca2963437 * ser-unix.c [USE_{TERMIO,ALARM}_TIMEOUT]: New code to deal with
systems lacking select().
1993-04-30 22:15:28 +00:00
Stu Grossman 4febd10272 * remote.c (remote_open): Use SERIAL_OPEN instead of serial_open.
(putpkt, getpkt):  Use new return codes for SERIAL_READCHAR.
	* ser-go32.c:  Return -1 on most failures, 0 on most successes,
	and use new return codes for go32_readchar().
	* ser-unix.c:  Ditto.  Also, move error handling up to caller for
	SERIAL_SETBAUDRATE().
	* serial.c (serial_open):  Internal call, not SERIAL_OPEN to get
	to specific routine.
	(serial_close):  New routine to wrap around device close routine.
	serial.h:  Clean & document return values more clearly.
1993-04-09 22:14:04 +00:00
Stu Grossman 4e772f4426 * Makefile.in (SFILES OBS): Add serial.[co] & ser-hardwire.[co].
These implement a new serial line interface for talking to remote
	targets.
	* configure.in:  Link ser-hardwire.c to ser-unix.c for all hosts,
	EXCEPT go32, which gets ser-go32.c.
	* remote.c:  Use new serial interface.  More remote-xxx's to be
	converted later.
	* ser-bsd.c, ser-termios.c:  Removed.
	* serial.c:  New.  Implements common operations for all serial
	types.
	* ser-unix.c:  New.  Unix specific serial operations for various
	flavors of Unix (Posix, SysV, BSD).
	* serial.h:  Generic serial interface defs.
	* config/i386/go32.mh, config/i386/i386bsd.h,
	config/m68k/apollo68b.mh, config/sparc/sun4os4.mh:  Remove
	ser-bsd.o from XDEPFILES.  All the magic is now handled in
	configure.in.
1993-04-06 05:50:54 +00:00