aboutsummaryrefslogtreecommitdiff
path: root/gdb/windows-tdep.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/windows-tdep.c')
-rw-r--r--gdb/windows-tdep.c20
1 files changed, 19 insertions, 1 deletions
diff --git a/gdb/windows-tdep.c b/gdb/windows-tdep.c
index f90323f..fbbca0c 100644
--- a/gdb/windows-tdep.c
+++ b/gdb/windows-tdep.c
@@ -31,6 +31,8 @@
#include "coff-pe-read.h"
#include "gdb_bfd.h"
#include "complaints.h"
+#include "solib.h"
+#include "solib-target.h"
struct cmd_list_element *info_w32_cmdlist;
@@ -427,7 +429,7 @@ windows_xfer_shared_library (const char* so_name, CORE_ADDR load_addr,
to print the value of another global variable defined with the same
name, but in a different DLL. */
-void
+static void
windows_iterate_over_objfiles_in_search_order
(struct gdbarch *gdbarch,
iterate_over_objfiles_in_search_order_cb_ftype *cb,
@@ -481,6 +483,22 @@ init_w32_command_list (void)
}
}
+/* To be called from the various GDB_OSABI_CYGWIN handlers for the
+ various Windows architectures and machine types. */
+
+void
+windows_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
+{
+ /* Canonical paths on this target look like
+ `c:\Program Files\Foo App\mydll.dll', for example. */
+ set_gdbarch_has_dos_based_file_system (gdbarch, 1);
+
+ set_gdbarch_iterate_over_objfiles_in_search_order
+ (gdbarch, windows_iterate_over_objfiles_in_search_order);
+
+ set_solib_ops (gdbarch, &solib_target_so_ops);
+}
+
/* Provide a prototype to silence -Wmissing-prototypes. */
extern initialize_file_ftype _initialize_windows_tdep;