Commit Graph

65 Commits

Author SHA1 Message Date
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 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
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
Jim Kingdon 372d09c3fd check in serial.h change that grossman made but forgot to check in 1993-05-07 04:00:42 +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
John Gilmore f24c159f1b Lint: * c-exp.y (parse_number): Avoid shift warning.
* serial.h (struct ttystate):  Declare empty one on DOS.
1993-03-20 08:44:42 +00:00
Steve Chamberlain 5fe932391d * command.c (shell_escape, make_command, _initialze_command):
don't create or use fork if CANT_FORK is defined.
	* serial.h, ser-go32.c: now compiles, but "the obvious problems of
	code written for the IBM PC" remain.
	* xm-go32.h: define CANT_FORK
1993-01-04 15:39:00 +00:00
Fred Fish 402dca80e7 * {ser-bsd.c, ser-termios.c} (serial_close): Pass address of
struct, not struct itself.
	* serial.h (serial_restore):  Fix prototype, takes pointer not
	struct.
1992-11-06 01:35:57 +00:00
Stu Grossman 740b7efa43 * elfread.c, mipsread.c: Include <string.h>.
* i386-stub.c:  Include "ansidecl.h" to deal with prototypes.
* serial.h:  Add prototype for serial_restore().
1992-11-04 23:31:52 +00:00
Stu Grossman 5a6242dddd * remote-hms.c, ser-go32.c, serial.h: Change from
serial_timedreadchar() to new serial_readchar().
1992-10-19 23:40:36 +00:00
Stu Grossman ed3f6049b4 * serial.h: Fix prototye for serial_raw().
* ser-bsd.c, ser-termios.c:  Fix args for serial_open() &
serial_write() to match prototypes.
* remote-st2000.c (get_reg_name):  Make *p be const.
1992-09-09 04:09:56 +00:00
Stu Grossman a0f9783ea7 * a68v-xdep.c (store_inferior_registers): declare as void.
* infptrace.c:  HP/Apollos have ptrace.h in the wrong place.
* remote-st2000.c:  Massive changes to use new serial package.
Also added 'connect' command to transparantly connect to serial
port.
* ser-termios.c:  Big cleanup, use nicer coding conventions.
* ser-bsd.c:  New module, serial stuff for BSD systems.
* serial.h:  Define struct ttystate properly using HAVE_TERMIO.
* xm-apollo68b.h:  #define PTRACE_IN_WRONG_PLACE...
1992-09-08 22:46:08 +00:00
John Gilmore b52373a2b1 * ser-termios.c, ser-go32.c: Remove DEFUN crap, clean up.
* serial.h (EXFUN):  Remove all uses, convert to PARAMS.
* config/sun4os4.mh:  Include ser-termios.o.  FIXME, all .mh files
should include a ser-XXX.o module.

* dbxread.c (elfstab_build_psymtabs):  Remove DEFUN crap.
* defs.h, i960-pinsn.c, remote-hms.c:  Replace CONST with simple const.

* configure.in:  Map unrecognized sun 68k's, sun sparcs, into
known suns in configure.in, rather than mapping them to unique
config files that happen to duplicate other config files.
* config/sun3.{mh,mt}:  Remove (use identical sun3os4.*).
* config/sun4.{mh,mt}:  Remove (use identical sun4os4.*).
1992-09-02 08:51:17 +00:00
Steve Chamberlain ae0ea72ee2 Changes to support GDB running on DOS using GO32 and H8 support
* defs.h: if xm.h doesn't define FOPEN_RB, include "fopen-same.h",
	allowing hosts with different text and binary file formats to
	work.
	* coffread.c (read_coff_symtab): changed calling convention and
	operation - now it opens its own file with FOPEN_RB rather than
	duping and fdopening the provided handle.
	* dbxread.c, cplus-dem.c: #include mangling.
	* exec.c: If O_BINARY isn't defined, set it to 0, call openp for
	binary files oring in the right bit.
	* utils.c, terminal.h, inflow.c: hackery because dos doesn't have terminals.
	* remote-hms.c: cleanup to use the new remote serial stuff
	* serial.h, ser-termios.c, ser-go32.c: newfiles to provide host
	independent remote terminal I/O.
	* remote.c: if DONT_USE_REMOTE is defined, then don't use it.
	* source.c (openp): fix off by one problem removing / - can now
	open a source file in the root directory with DOS.
	* values.c (value_as_pointer): remove bogus address bits from
	long. (unpack_long): unpack into unsigned long/short if pointer.
1992-05-13 01:12:18 +00:00