aboutsummaryrefslogtreecommitdiff
path: root/gdb/solib-legacy.c
diff options
context:
space:
mode:
authorUlrich Weigand <uweigand@de.ibm.com>2007-10-24 21:21:16 +0000
committerUlrich Weigand <uweigand@de.ibm.com>2007-10-24 21:21:16 +0000
commit8d005789186b3d1e0b58b37ead5f260c05256f28 (patch)
tree5c484ebee785c57ca608d4f9b8834b86871f12a6 /gdb/solib-legacy.c
parent59215afbea47b0845a7fe36534c37e7ce02065bf (diff)
downloadgdb-8d005789186b3d1e0b58b37ead5f260c05256f28.zip
gdb-8d005789186b3d1e0b58b37ead5f260c05256f28.tar.gz
gdb-8d005789186b3d1e0b58b37ead5f260c05256f28.tar.bz2
* solib-svr4.c (legacy_svr4_fetch_link_map_offsets_hook): Remove.
(solib_svr4_init): Initialize fetch_link_map_offsets to NULL. * solib-svr4.h (legacy_svr4_fetch_link_map_offsets_hook): Remove. * solib-legacy.c: Remove file. * config/alpha/alpha-linux.mt (TDEPFILES): Remove solib-legacy.o. * config/arm/linux.mt (TDEPFILES): Likewise. * config/i386/i386gnu.mh (NATDEPFILES): Likewise. * config/ia64/linux.mt (TDEPFILES): Likewise. * config/m32r/linux.mt (TDEPFILES): Likewise. * config/powerpc/linux.mt (TDEPFILES): Likewise. * config/s390/s390.mt (TDEPFILES): Likewise. * alpha-linux-tdep.c (alpha_linux_init_abi): Call set_solib_svr4_fetch_link_map_offsets. * i386gnu-tdep.c (i386gnu_init_abi): Likewise. * ia64-linux-tdep.c (ia64_linux_init_abi): Likewise. * i386gnu-tdep.c: Include "solib-svr4.h". * Makefile.in: Update dependencies.
Diffstat (limited to 'gdb/solib-legacy.c')
-rw-r--r--gdb/solib-legacy.c132
1 files changed, 0 insertions, 132 deletions
diff --git a/gdb/solib-legacy.c b/gdb/solib-legacy.c
deleted file mode 100644
index e943ba5..0000000
--- a/gdb/solib-legacy.c
+++ /dev/null
@@ -1,132 +0,0 @@
-/* Provide legacy r_debug and link_map support for SVR4-like native targets.
-
- Copyright (C) 2000, 2001, 2006, 2007 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 3 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, see <http://www.gnu.org/licenses/>. */
-
-#include "defs.h"
-#include "gdbcore.h"
-#include "solib-svr4.h"
-
-#ifdef HAVE_LINK_H
-
-#ifdef HAVE_NLIST_H
-/* nlist.h needs to be included before link.h on some older *BSD systems. */
-#include <nlist.h>
-#endif
-
-#include <link.h>
-
-/* Fetch (and possibly build) an appropriate link_map_offsets structure
- for native targets using struct definitions from link.h. */
-
-static struct link_map_offsets *
-legacy_svr4_fetch_link_map_offsets (void)
-{
- static struct link_map_offsets lmo;
- static struct link_map_offsets *lmp = 0;
-#if defined (HAVE_STRUCT_LINK_MAP32)
- static struct link_map_offsets lmo32;
- static struct link_map_offsets *lmp32 = 0;
-#endif
-
-#ifndef offsetof
-#define offsetof(TYPE, MEMBER) ((unsigned long) &((TYPE *)0)->MEMBER)
-#endif
-#define fieldsize(TYPE, MEMBER) (sizeof (((TYPE *)0)->MEMBER))
-
- if (lmp == 0)
- {
- lmp = &lmo;
-
-#ifdef HAVE_STRUCT_LINK_MAP_WITH_L_MEMBERS
- lmo.r_version_offset = offsetof (struct r_debug, r_version);
- lmo.r_version_size = fieldsize (struct r_debug, r_version);
- lmo.r_map_offset = offsetof (struct r_debug, r_map);
- lmo.r_ldsomap_offset = -1;
-
- lmo.link_map_size = sizeof (struct link_map);
-
- lmo.l_addr_offset = offsetof (struct link_map, l_addr);
- lmo.l_next_offset = offsetof (struct link_map, l_next);
- lmo.l_ld_offset = offsetof (struct link_map, l_ld);
- lmo.l_prev_offset = offsetof (struct link_map, l_prev);
- lmo.l_name_offset = offsetof (struct link_map, l_name);
-#else /* !defined(HAVE_STRUCT_LINK_MAP_WITH_L_MEMBERS) */
-#ifdef HAVE_STRUCT_LINK_MAP_WITH_LM_MEMBERS
- lmo.link_map_size = sizeof (struct link_map);
-
- lmo.l_addr_offset = offsetof (struct link_map, lm_addr);
- lmo.l_next_offset = offsetof (struct link_map, lm_next);
- /* FIXME: Is this the right field name, or is it available at all? */
- lmo.l_ld_offset = offsetof (struct link_map, lm_ld);
- lmo.l_name_offset = offsetof (struct link_map, lm_name);
-#else /* !defined(HAVE_STRUCT_LINK_MAP_WITH_LM_MEMBERS) */
-#if HAVE_STRUCT_SO_MAP_WITH_SOM_MEMBERS
- lmo.link_map_size = sizeof (struct so_map);
-
- lmo.l_addr_offset = offsetof (struct so_map, som_addr);
- lmo.l_next_offset = offsetof (struct so_map, som_next);
- lmo.l_name_offset = offsetof (struct so_map, som_path);
- /* FIXME: Is the address of the dynamic table available? */
- lmo.l_ld_offset = -1;
-#endif /* HAVE_STRUCT_SO_MAP_WITH_SOM_MEMBERS */
-#endif /* HAVE_STRUCT_LINK_MAP_WITH_LM_MEMBERS */
-#endif /* HAVE_STRUCT_LINK_MAP_WITH_L_MEMBERS */
- }
-
-#if defined (HAVE_STRUCT_LINK_MAP32)
- if (lmp32 == 0)
- {
- lmp32 = &lmo32;
-
- lmo32.r_version_offset = offsetof (struct r_debug32, r_version);
- lmo32.r_version_size = fieldsize (struct r_debug32, r_version);
- lmo32.r_map_offset = offsetof (struct r_debug32, r_map);
- lmo32.r_ldsomap_offset = -1;
-
- lmo32.link_map_size = sizeof (struct link_map32);
-
- lmo32.l_addr_offset = offsetof (struct link_map32, l_addr);
- lmo32.l_next_offset = offsetof (struct link_map32, l_next);
- lmo32.l_prev_offset = offsetof (struct link_map32, l_prev);
- lmo32.l_name_offset = offsetof (struct link_map32, l_name);
- }
-#endif /* defined (HAVE_STRUCT_LINK_MAP32) */
-
-#if defined (HAVE_STRUCT_LINK_MAP32)
- if (exec_bfd != NULL)
- {
- if (bfd_get_arch_size (exec_bfd) == 32)
- return lmp32;
- }
- if (gdbarch_ptr_bit (current_gdbarch) == 32)
- return lmp32;
-#endif
- return lmp;
-}
-
-#endif /* HAVE_LINK_H */
-
-extern initialize_file_ftype _initialize_svr4_lm; /* -Wmissing-prototypes */
-
-void
-_initialize_svr4_lm (void)
-{
-#ifdef HAVE_LINK_H
- legacy_svr4_fetch_link_map_offsets_hook = legacy_svr4_fetch_link_map_offsets;
-#endif /* HAVE_LINK_H */
-}