OSDN Git Service

* gdb.texinfo (Target Description Format): Add version attribute
[pf3gnuchains/pf3gnuchains4x.git] / gdb / solib-null.c
1 /* Definitions for targets without shared libraries for GDB, the GNU Debugger.
2
3    Copyright (C) 2004, 2007 Free Software Foundation, Inc.
4
5    This file is part of GDB.
6
7    This program is free software; you can redistribute it and/or modify
8    it under the terms of the GNU General Public License as published by
9    the Free Software Foundation; either version 2 of the License, or
10    (at your option) any later version.
11
12    This program is distributed in the hope that it will be useful,
13    but WITHOUT ANY WARRANTY; without even the implied warranty of
14    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15    GNU General Public License for more details.
16
17    You should have received a copy of the GNU General Public License
18    along with this program; if not, write to the Free Software
19    Foundation, Inc., 51 Franklin Street, Fifth Floor,
20    Boston, MA 02110-1301, USA.  */
21
22 #include "defs.h"
23 #include "solist.h"
24
25 static struct so_list *
26 null_current_sos (void)
27 {
28   return NULL;
29 }
30
31 static void
32 null_special_symbol_handling (void)
33 {
34 }
35
36 static void
37 null_solib_create_inferior_hook (void)
38 {
39 }
40
41 static void
42 null_clear_solib (void)
43 {
44 }
45
46 static void
47 null_free_so (struct so_list *so)
48 {
49   xfree (so->lm_info);
50 }
51
52
53 static void
54 null_relocate_section_addresses (struct so_list *so,
55                                  struct section_table *sec)
56 {
57 }
58
59 static int
60 null_open_symbol_file_object (void *from_ttyp)
61 {
62   return 0;
63 }
64
65 static int
66 null_in_dynsym_resolve_code (CORE_ADDR pc)
67 {
68   return 0;
69 }
70
71 static struct target_so_ops null_so_ops;
72
73 extern initialize_file_ftype _initialize_null_solib; /* -Wmissing-prototypes */
74
75 void
76 _initialize_null_solib (void)
77 {
78   null_so_ops.relocate_section_addresses = null_relocate_section_addresses;
79   null_so_ops.free_so = null_free_so;
80   null_so_ops.clear_solib = null_clear_solib;
81   null_so_ops.solib_create_inferior_hook = null_solib_create_inferior_hook;
82   null_so_ops.special_symbol_handling = null_special_symbol_handling;
83   null_so_ops.current_sos = null_current_sos;
84   null_so_ops.open_symbol_file_object = null_open_symbol_file_object;
85   null_so_ops.in_dynsym_resolve_code = null_in_dynsym_resolve_code;
86
87   /* Set current_target_so_ops to null_so_ops if not already set.  */
88   if (current_target_so_ops == 0)
89     current_target_so_ops = &null_so_ops;
90 }