This is the mail archive of the gdb-testers@sourceware.cygnus.com mailing list for the GDB project. See the GDB home page for more information.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Something to be slipped in for 4.17. I have no idea who did the original patches. I've cleaned them and thinned them down a lot, so I'll claim them for ease of copyright assignment issues. r~
Sun Feb 22 01:03:58 1998 Richard Henderson <rth@cygnus.com> * configure.host, configure.tgt: Add sparc-linux. * sparc-nat.c: Include <asm/reg.h> not <machine/reg.h> for Linux. * config/sparc/*linux*: New files. ? config/sparc/linux.mt ? config/sparc/xm-linux.h ? config/sparc/linux.mh ? config/sparc/nm-linux.h ? config/sparc/tm-linux.h Index: configure.host =================================================================== RCS file: /cvs/cvsfiles/devo/gdb/configure.host,v retrieving revision 2.9 diff -u -p -r2.9 configure.host --- configure.host 1998/02/03 01:20:10 2.9 +++ configure.host 1998/02/22 09:01:25 @@ -144,6 +144,7 @@ rs6000-*-lynxos*) gdb_host=rs6000lynx ;; rs6000-*-aix4*) gdb_host=aix4 ;; rs6000-*-*) gdb_host=rs6000 ;; +sparc-*-linux*) gdb_host=linux ;; sparc-*-lynxos*) gdb_host=sparclynx ;; sparc-*-netbsd*) gdb_host=nbsd ;; sparc-*-solaris2*) gdb_host=sun4sol2 ;; Index: configure.tgt =================================================================== RCS file: /cvs/cvsfiles/devo/gdb/configure.tgt,v retrieving revision 2.42 diff -u -p -r2.42 configure.tgt --- configure.tgt 1998/02/06 22:36:52 2.42 +++ configure.tgt 1998/02/22 09:01:26 @@ -261,6 +261,7 @@ rs6000-*-*) gdb_target=rs6000 ;; sparc-*-aout*) gdb_target=sparc-em ;; sparc-*-coff*) gdb_target=sparc-em ;; sparc-*-elf*) gdb_target=sparc-em ;; +sparc-*-linux*) gdb_target=linux ;; sparc-*-lynxos*) gdb_target=sparclynx configdirs="${configdirs} gdbserver" ;; sparc-*-netbsd*) gdb_target=nbsd ;; Index: sparc-nat.c =================================================================== RCS file: /cvs/cvsfiles/devo/gdb/sparc-nat.c,v retrieving revision 2.15 diff -u -p -r2.15 sparc-nat.c --- sparc-nat.c 1997/01/04 00:32:43 2.15 +++ sparc-nat.c 1998/02/22 09:01:27 @@ -25,7 +25,11 @@ Foundation, Inc., 59 Temple Place - Suit #include <signal.h> #include <sys/ptrace.h> #include <sys/wait.h> +#ifdef __linux__ +#include <asm/reg.h> +#else #include <machine/reg.h> +#endif #include <sys/user.h> /* We don't store all registers immediately when requested, since they *** /dev/null Mon Dec 31 20:00:00 1979 --- config/sparc/linux.mh Sun Feb 22 00:47:14 1998 *************** *** 0 **** --- 1,7 ---- + # Host: Sparcstation, running Linux + XDEPFILES= ser-tcp.o + XM_FILE= xm-linux.h + NAT_FILE= nm-linux.h + NATDEPFILES= fork-child.o infptrace.o inftarg.o corelow.o sparc-nat.o + HOST_IPC=-DBSD_IPC + GDBSERVER_DEPFILES= low-sparc.o *** /dev/null Mon Dec 31 20:00:00 1979 --- config/sparc/linux.mt Sun Feb 22 00:47:21 1998 *************** *** 0 **** --- 1,3 ---- + # Target: Sparcstation, running Linux + TDEPFILES= sparc-tdep.o solib.o + TM_FILE= tm-linux.h *** /dev/null Mon Dec 31 20:00:00 1979 --- config/sparc/nm-linux.h Sun Feb 22 00:44:42 1998 *************** *** 0 **** --- 1,34 ---- + /* Macro definitions for running gdb on a Sparc running Linux. + Copyright (C) 1989, 1992, 1996, 1998 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. */ + + #include <nm-sysv4.h> + #include "solib.h" + + #define FETCH_INFERIOR_REGISTERS + + /* Return sizeof user struct to callers in less machine dependent routines */ + + #define KERNEL_U_SIZE kernel_u_size() + extern int kernel_u_size PARAMS ((void)); + + /* Linux is svr4ish but not that much */ + #undef USE_PROC_FS + + #define PT_ATTACH PTRACE_SUNATTACH + #define PT_DETACH PTRACE_SUNDETACH *** /dev/null Mon Dec 31 20:00:00 1979 --- config/sparc/nm-linux.h~ Sun Feb 22 00:40:03 1998 *************** *** 0 **** --- 1,31 ---- + /* Macro definitions for running gdb on a Sparc running Linux. + Copyright (C) 1989, 1992, 1996, 1998 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. */ + + #include <nm-sysv4.h> + #include "solib.h" + + #define FETCH_INFERIOR_REGISTERS + + /* Return sizeof user struct to callers in less machine dependent routines */ + + #define KERNEL_U_SIZE kernel_u_size() + extern int kernel_u_size PARAMS ((void)); + + /* Linux is svr4ish but not that much */ + #undef USE_PROC_FS *** /dev/null Mon Dec 31 20:00:00 1979 --- config/sparc/tm-linux.h Sun Feb 22 00:40:03 1998 *************** *** 0 **** --- 1,29 ---- + /* Macro definitions for GDB for a Sparc running Linux. + Copyright 1989, 1992, 1994, 1995, 1998 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 TM_SPARCLINUX_H + #define TM_SPARCLINUX_H + + #include "sparc/tm-sparc.h" + + #define SIGCONTEXT_PC_OFFSET 12 + + #include "tm-sysv4.h" + + #endif /* TM_SPARCLINUX_H */ *** /dev/null Mon Dec 31 20:00:00 1979 --- config/sparc/xm-linux.h Sun Feb 22 00:40:03 1998 *************** *** 0 **** --- 1,48 ---- + /* Macro definitions for running gdb on a Sparc running Linux. + Copyright (C) 1989, 1993, 1994, 1995, 1996, 1998 + 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 XM_SPARCLINUX_H + #define XM_SPARCLINUX_H + + #include "sparc/xm-sparc.h" + + #define HAVE_TERMIOS + /* This is the amount to subtract from u.u_ar0 + to get the offset in the core file of the register values. */ + #define KERNEL_U_ADDR 0x0 + + #define U_REGS_OFFSET 0 + + #define NEED_POSIX_SETPGID + + /* Need R_OK etc, but USG isn't defined. */ + #include <unistd.h> + + /* 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 */ + + #endif /* _XM_SPARCLINUX_H */