Add OpenBSD/sh native support.
authorMark Kettenis <kettenis@gnu.org>
Fri, 15 Dec 2006 23:57:35 +0000 (23:57 +0000)
committerMark Kettenis <kettenis@gnu.org>
Fri, 15 Dec 2006 23:57:35 +0000 (23:57 +0000)
* NEWS (New native configurations): Mention OpenBSD/sh.
* configure.host: Add sh*-*-openbsd*.
* shnbsd-nat.c: Include "inf-ptrace.h".
(shnbsd_fetch_inferior_registers): Rename from
fetch_inferior_registers.  Make static.
(shnbsd_store_inferior_registers): Rename from
store_inferior_registers.  Make static.
(_initialize_shnbsd_nat): New function.
* Makefile.in (shnbsd-nat.o): Update dependencies.
* config/sh/nbsd.mh (NAT_CLIBS, NAT_FILE): Remove.
(NATDEPFILES): Remove infptrace.o and inftarg.o.  Add
inf-ptrace.o.

gdb/ChangeLog
gdb/Makefile.in
gdb/NEWS
gdb/config/sh/nbsd.mh
gdb/configure.host
gdb/shnbsd-nat.c

index 876185a..01f510c 100644 (file)
@@ -1,5 +1,19 @@
 2006-12-16  Mark Kettenis  <kettenis@gnu.org>
 
+       Add OpenBSD/sh native support.
+       * NEWS (New native configurations): Mention OpenBSD/sh.
+       * configure.host: Add sh*-*-openbsd*.
+       * shnbsd-nat.c: Include "inf-ptrace.h".
+       (shnbsd_fetch_inferior_registers): Rename from
+       fetch_inferior_registers.  Make static.
+       (shnbsd_store_inferior_registers): Rename from
+       store_inferior_registers.  Make static.
+       (_initialize_shnbsd_nat): New function.
+       * Makefile.in (shnbsd-nat.o): Update dependencies.
+       * config/sh/nbsd.mh (NAT_CLIBS, NAT_FILE): Remove.
+       (NATDEPFILES): Remove infptrace.o and inftarg.o.  Add
+       inf-ptrace.o.
+
        Add OpenBSD/sh support.
        * NEWS (New targets): Mention OpenBSD/sh.
        * configure.tgt: Add sh*-*-openbsd*.
index 695a3a7..51e74df 100644 (file)
@@ -2604,7 +2604,7 @@ sh64-tdep.o: sh64-tdep.c $(defs_h) $(frame_h) $(frame_base_h) \
        $(gdb_string_h) $(gdb_assert_h) $(arch_utils_h) $(regcache_h) \
        $(osabi_h) $(elf_bfd_h) $(elf_sh_h) $(gdb_sim_sh_h)
 shnbsd-nat.o: shnbsd-nat.c $(defs_h) $(inferior_h) $(sh_tdep_h) \
-       $(shnbsd_tdep_h)
+       $(shnbsd_tdep_h) $(inf_ptrace_h)
 shnbsd-tdep.o: shnbsd-tdep.c $(defs_h) $(gdbcore_h) $(regcache_h) $(value_h) \
        $(osabi_h) $(solib_svr4_h) $(nbsd_tdep_h) $(sh_tdep_h) \
        $(shnbsd_tdep_h)
index b39c89c..22b7518 100644 (file)
--- a/gdb/NEWS
+++ b/gdb/NEWS
@@ -28,6 +28,10 @@ show breakpoint auto-hw
   "break" command and internal breakpoints used for other commands
   including "next" and "finish".
 
+* New native configurations
+
+OpenBSD/sh                     sh*-*openbsd*
+
 * New targets
 
 OpenBSD/sh                     sh*-*-openbsd*
index 9c7cec9..d5e67cb 100644 (file)
@@ -1,4 +1,2 @@
-# Host: SuperH running NetBSD
-NAT_CLIBS=
-NATDEPFILES= infptrace.o inftarg.o fork-child.o shnbsd-nat.o
-NAT_FILE= config/nm-nbsd.h
+# Host: NetBSD/sh
+NATDEPFILES= fork-child.o inf-ptrace.o shnbsd-nat.o
index 3615859..f8aa18d 100644 (file)
@@ -130,6 +130,7 @@ s390*-*-*)          gdb_host=s390 ;;
 
 sh*-*-netbsdelf* | sh*-*-knetbsd*-gnu)
                        gdb_host=nbsd ;;
+sh*-*-openbsd*)                gdb_host=nbsd ;;
 
 sparc64-*-freebsd* | sparc64-*-kfreebsd*-gnu)
                        gdb_host=fbsd ;;
index 8a2ded3..264d01e 100644 (file)
@@ -1,6 +1,7 @@
-/* Native-dependent code for SuperH running NetBSD, for GDB.
+/* Native-dependent code for NetBSD/sh.
+
+   Copyright (C) 2002, 2003, 2004, 2006 Free Software Foundation, Inc.
 
-   Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
    Contributed by Wasabi Systems, Inc.
 
    This file is part of GDB.
    Foundation, Inc., 51 Franklin Street, Fifth Floor,
    Boston, MA 02110-1301, USA.  */
 
+#include "defs.h"
+#include "inferior.h"
+
 #include <sys/types.h>
 #include <sys/ptrace.h>
 #include <machine/reg.h>
 
-#include "defs.h"
-#include "inferior.h"
-
 #include "sh-tdep.h"
 #include "shnbsd-tdep.h"
+#include "inf-ptrace.h"
 
 /* Determine if PT_GETREGS fetches this register. */
 #define GETREGS_SUPPLIES(regno) \
@@ -37,8 +39,8 @@
 || (regno) == MACH_REGNUM || (regno) == MACL_REGNUM \
 || (regno) == SR_REGNUM)
 
-void
-fetch_inferior_registers (int regno)
+static void
+shnbsd_fetch_inferior_registers (int regno)
 {
   if (regno == -1 || GETREGS_SUPPLIES (regno))
     {
@@ -55,8 +57,8 @@ fetch_inferior_registers (int regno)
     }
 }
 
-void
-store_inferior_registers (int regno)
+static void
+shnbsd_store_inferior_registers (int regno)
 {
   if (regno == -1 || GETREGS_SUPPLIES (regno))
     {
@@ -76,3 +78,17 @@ store_inferior_registers (int regno)
        return;
     }
 }
+
+/* Provide a prototype to silence -Wmissing-prototypes.  */
+void _initialize_shnbsd_nat (void);
+
+void
+_initialize_shnbsd_nat (void)
+{
+  struct target_ops *t;
+
+  t = inf_ptrace_target ();
+  t->to_fetch_registers = shnbsd_fetch_inferior_registers;
+  t->to_store_registers = shnbsd_store_inferior_registers;
+  add_target (t);
+}