old-cross-binutils/gdb/config/sparc/xm-sun4os4.h
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

65 lines
2.5 KiB
C

/* Macro definitions for running gdb on a Sun 4 running sunos 4.
Copyright (C) 1989, 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., 675 Mass Ave, Cambridge, MA 02139, USA. */
#include "sparc/xm-sparc.h"
#define FPU
/* Large alloca's fail because the attempt to increase the stack limit in
main() fails because shared libraries are allocated just below the initial
stack limit. The SunOS kernel will not allow the stack to grow into
the area occupied by the shared libraries. Sun knows about this bug
but has no obvious fix for it. */
#define BROKEN_LARGE_ALLOCA
/* SunOS 4.x has memory mapped files. */
#define HAVE_MMAP
/* If you expect to use the mmalloc package to obtain mapped symbol files,
for now you have to specify some parameters that determine how gdb places
the mappings in it's address space. See the comments in map_to_address()
for details. This is expected to only be a short term solution. Yes it
is a kludge.
FIXME: Make this more automatic. */
#define MMAP_BASE_ADDRESS 0xE0000000 /* First mapping here */
#define MMAP_INCREMENT 0x01000000 /* Increment to next mapping */
#ifndef __STDC__
/* GCC (2.3-ish at least) fixes this in fixincludes. */
/* /usr/include/malloc.h is included by vx-share/xdr_ld. */
/* /usr/include/malloc.h defines these w/o prototypes (and uses
char * instead of void *). */
#define MALLOC_INCOMPATIBLE
extern char* malloc ();
extern char* realloc ();
/* Yes, it really does define it as returning int, both in malloc.h and
stdlib.h, at least on SunOS 4.1.1. */
extern int free ();
#endif
/* SunOS 4.x uses nonstandard "char *" as type of third argument to ptrace() */
#define PTRACE_ARG3_TYPE char*
/* Using termios is required to save and restore ICRNL and ONLCR
separately. */
/* At least SunOS 4.1.1 has termios. I'm not sure about 4.0.3. */
#define HAVE_TERMIOS