- /* skip over the first vmap, it is the main program, always loaded. */
- vp = vp->nxt;
-
- for (; vp; vp = vp->nxt) {
-
- if (re_exec (vp->name) || (*vp->member && re_exec (vp->member))) {
-
- matched = 1;
-
- /* if already loaded, continue with the next one. */
- if (vp->loaded) {
-
- printf_unfiltered ("%s%s%s%s: already loaded.\n",
- *vp->member ? "(" : "",
- vp->member,
- *vp->member ? ") " : "",
- vp->name);
- continue;
- }
-
- printf_unfiltered ("Loading %s%s%s%s...",
- *vp->member ? "(" : "",
- vp->member,
- *vp->member ? ") " : "",
- vp->name);
- gdb_flush (gdb_stdout);
-
- /* This is gross and doesn't work. If this code is re-enabled,
- just stick a objfile member into the struct vmap; that's the
- way solib.c (for SunOS/SVR4) does it. */
- obj = lookup_objfile_bfd (vp->bfd);
- if (!obj) {
- warning ("\nObj structure for the shared object not found. Loading failed.");
- continue;
- }
-
- syms_from_objfile (obj, 0, 0, 0);
- new_symfile_objfile (obj, 0, 0);
- vmap_symtab (vp, 0, 0);
- printf_unfiltered ("Done.\n");
- loaded = vp->loaded = 1;
- }
- }
- /* if any shared object is loaded, then misc_func_vector needs sorting. */
- if (loaded) {
-#if 0
- sort_misc_function_vector ();
-#endif
- current_source_symtab = saved_symtab;
- current_source_line = saved_line;
-
- /* Getting new symbols might change our opinion about what is frameless.
- Is this correct?? FIXME. */
-/* reinit_frame_cache(); */
- }
- else if (!matched)
- printf_unfiltered ("No matching shared object found.\n");
-}
-#endif /* SOLIB_SYMBOLS_MANUAL */