summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/usr.bin/binutils/gdb/config/powerpc/nm-obsd.h150
-rw-r--r--gnu/usr.bin/binutils/gdb/config/powerpc/obsd.mh13
-rw-r--r--gnu/usr.bin/binutils/gdb/config/powerpc/xm-obsd.h3
3 files changed, 149 insertions, 17 deletions
diff --git a/gnu/usr.bin/binutils/gdb/config/powerpc/nm-obsd.h b/gnu/usr.bin/binutils/gdb/config/powerpc/nm-obsd.h
index 656cc6c4533..12648bf65f7 100644
--- a/gnu/usr.bin/binutils/gdb/config/powerpc/nm-obsd.h
+++ b/gnu/usr.bin/binutils/gdb/config/powerpc/nm-obsd.h
@@ -1,6 +1,5 @@
-/* Definitions for running gdb on a host machine running any flavor of SVR4.
- Copyright 1991, 1992 Free Software Foundation, Inc.
- Written by Fred Fish at Cygnus Support (fnf@cygnus.com).
+/* Native-dependent definitions for OpenBSD.
+ Copyright 1994, 1996 Free Software Foundation, Inc.
This file is part of GDB.
@@ -18,20 +17,145 @@ 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 "solib.h" /* Support for shared libraries. */
+/* "Support" the Net- and OpenBSD-specific "-k" option. */
+#define ADDITIONAL_OPTIONS {"k", no_argument, 0, 'k'},
+#define ADDITIONAL_OPTION_CASES case 'k': \
+ fprintf_unfiltered (gdb_stderr, \
+"-k: obsolete option. For kernel debugging, start gdb\n" \
+"with just the kernel name as an argument (no core file)\n" \
+"and then use the gdb command `target kcore COREFILE'.\n"); \
+ exit (1);
+/* End of "-k" stuff. */
-/* Use SVR4 style shared library support */
+#define ATTACH_DETACH
-#define SVR4_SHARED_LIBS
+/* Use this instead of KERNEL_U_ADDR (See gdb/infptrace.c) */
+#define KERNEL_U_ADDR 0
+#define FETCH_INFERIOR_REGISTERS
-/* SVR4 has /proc support, so use it instead of ptrace. */
-/* On OpenBSD we prefer ptrace */
+/* This enables functions needed by kcore-nbsd.c */
+#define FETCH_KCORE_REGISTERS
-#undef USE_PROC_FS
+#define PTRACE_ARG3_TYPE char*
-/* SVR4 machines can easily do attach and detach via /proc (procfs.c)
- support */
+#if 0
+#include "solib.h" /* Support for shared libraries. */
+#endif
-#define ATTACH_DETACH
+/*
+ * fix this later
+ */
+#if 0
+#ifdef SVR4_SHARED_LIBS
+/* The Net- and OpenBSD link.h structure definitions have different names
+ than the SunOS version, but the structures are very similar,
+ so we can use solib.c by defining the SunOS names. */
+#define link_object sod
+#define lo_name sod_name
+#define lo_library sod_library
+#define lo_unused sod_reserved
+#define lo_major sod_major
+#define lo_minor sod_minor
+#define lo_next sod_next
+
+#define link_map so_map
+#define l_addr som_addr
+#define l_name som_path
+#define l_next som_next
+#define lm_lop som_sod
+#define lm_lob som_sodbase
+#define l_prev som_sodbase
+#define lm_rwt som_write
+#define lm_ld som_dynamic
+#define lm_lpd som_spd
+
+#define link_dynamic_2 section_dispatch_table
+#define ld_loaded sdt_loaded
+#define ld_need sdt_sods
+#define ld_rules sdt_rules
+#define ld_got sdt_got
+#define ld_plt sdt_plt
+#define ld_rel sdt_rel
+#define ld_hash sdt_hash
+#define ld_stab sdt_nzlist
+#define ld_stab_hash sdt_filler2
+#define ld_buckets sdt_buckets
+#define ld_symbols sdt_strings
+#define ld_symb_size sdt_str_sz
+#define ld_text sdt_text_sz
+#define ld_plt_sz sdt_plt_sz
+
+#define rtc_symb rt_symbol
+#define rtc_sp rt_sp
+#define rtc_next rt_next
+
+#define r_debug so_debug
+#define ldd_version dd_version
+#define ldd_in_debugger dd_in_debugger
+#define ldd_sym_loaded dd_sym_loaded
+#define ldd_bp_addr dd_bpt_addr
+#define ldd_bp_inst dd_bpt_shadow
+#define ldd_cp dd_cc
+
+#define link_dynamic _dynamic
+#define ld_version d_version
+#define ldd d_debug
+#define ld_un d_un
+#define ld_2 d_sdt
+
+#else
+
+#define link_object sod
+#define lo_name sod_name
+#define lo_library sod_library
+#define lo_unused sod_reserved
+#define lo_major sod_major
+#define lo_minor sod_minor
+#define lo_next sod_next
+
+#define link_map so_map
+#define lm_addr som_addr
+#define lm_name som_path
+#define lm_next som_next
+#define lm_lop som_sod
+#define lm_lob som_sodbase
+#define lm_rwt som_write
+#define lm_ld som_dynamic
+#define lm_lpd som_spd
+
+#define link_dynamic_2 section_dispatch_table
+#define ld_loaded sdt_loaded
+#define ld_need sdt_sods
+#define ld_rules sdt_rules
+#define ld_got sdt_got
+#define ld_plt sdt_plt
+#define ld_rel sdt_rel
+#define ld_hash sdt_hash
+#define ld_stab sdt_nzlist
+#define ld_stab_hash sdt_filler2
+#define ld_buckets sdt_buckets
+#define ld_symbols sdt_strings
+#define ld_symb_size sdt_str_sz
+#define ld_text sdt_text_sz
+#define ld_plt_sz sdt_plt_sz
+
+#define rtc_symb rt_symbol
+#define rtc_sp rt_sp
+#define rtc_next rt_next
+
+#define ld_debug so_debug
+#define ldd_version dd_version
+#define ldd_in_debugger dd_in_debugger
+#define ldd_sym_loaded dd_sym_loaded
+#define ldd_bp_addr dd_bpt_addr
+#define ldd_bp_inst dd_bpt_shadow
+#define ldd_cp dd_cc
+
+#define link_dynamic _dynamic
+#define ld_version d_version
+#define ldd d_debug
+#define ld_un d_un
+#define ld_2 d_sdt
-#define KERNEL_U_ADDR ((u_int)(USER_ADDR))
+#endif /* SVR4_SHARED_LIBS */
+#endif
diff --git a/gnu/usr.bin/binutils/gdb/config/powerpc/obsd.mh b/gnu/usr.bin/binutils/gdb/config/powerpc/obsd.mh
index 6e3e5c84e20..29976b851ec 100644
--- a/gnu/usr.bin/binutils/gdb/config/powerpc/obsd.mh
+++ b/gnu/usr.bin/binutils/gdb/config/powerpc/obsd.mh
@@ -1,10 +1,15 @@
-# Host: PowerPC, running Linux
+# Host: PowerPC, running OpenBSD
-XM_FILE= xm-obsd.h
+XM_FILE= ../xm-obsd.h
XDEPFILES= ser-tcp.o
XM_CLIBS=
NAT_FILE= nm-obsd.h
-NATDEPFILES= obsdsolib.o corelow.o core-aout.o core-regset.o # infptrace.o inftarg.o fork-child.o
+NATDEPFILES= ppcobsd-nat.o corelow.o infptrace.o fork-child.o core-aout.o inftarg.o #core-regset.o
-#GDBSERVER_DEPFILES= low-linux.o
+GDBSERVER_DEPFILES=
+
+# SVR4 comes standard with terminfo, and in some implementations, the
+# old termcap descriptions are incomplete. So ensure that we use the
+# new terminfo interface and latest terminal descriptions.
+TERMCAP=-lcurses
diff --git a/gnu/usr.bin/binutils/gdb/config/powerpc/xm-obsd.h b/gnu/usr.bin/binutils/gdb/config/powerpc/xm-obsd.h
index 41c8ba71dc5..697e7ba1748 100644
--- a/gnu/usr.bin/binutils/gdb/config/powerpc/xm-obsd.h
+++ b/gnu/usr.bin/binutils/gdb/config/powerpc/xm-obsd.h
@@ -19,3 +19,6 @@ along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define HOST_BYTE_ORDER BIG_ENDIAN
+/*
+#define KERNEL_U_ADDR 0
+*/