]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - gdb/solib-null.c
Copyright updates for 2007.
[thirdparty/binutils-gdb.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 }