2004-08-20 Michael Chastain <mec.gnu@mindspring.com>
[deliverable/binutils-gdb.git] / gdb / xcoffsolib.c
index dd3c1d80e763b5c86cf0d171f6c9a64e15abfac4..9dcc3c4f715c0a0c2ca91a2d42e4e00f0e77390a 100644 (file)
@@ -48,11 +48,11 @@ xcoff_solib_address (CORE_ADDR addr)
     if (vp->tstart <= addr && addr < vp->tend)
       {
        xfree (buffer);
-       xasprintf (&buffer, "%s%s%s%s",
-                           vp->name,
-                           *vp->member ? "(" : "",
-                           vp->member,
-                           *vp->member ? ")" : "");
+       buffer = xstrprintf ("%s%s%s%s",
+                            vp->name,
+                            *vp->member ? "(" : "",
+                            vp->member,
+                            *vp->member ? ")" : "");
        return buffer;
       }
   return NULL;
@@ -67,8 +67,8 @@ solib_info (char *args, int from_tty)
   struct vmap *vp = vmap;
 
   /* Check for new shared libraries loaded with load ().  */
-  if (inferior_pid)
-    xcoff_relocate_symtab (inferior_pid);
+  if (! ptid_equal (inferior_ptid, null_ptid))
+    xcoff_relocate_symtab (PIDGET (inferior_ptid));
 
   if (vp == NULL || vp->nxt == NULL)
     {
@@ -101,8 +101,8 @@ sharedlibrary_command (char *pattern, int from_tty)
   dont_repeat ();
 
   /* Check for new shared libraries loaded with load ().  */
-  if (inferior_pid)
-    xcoff_relocate_symtab (inferior_pid);
+  if (! ptid_equal (inferior_ptid, null_ptid))
+    xcoff_relocate_symtab (PIDGET (inferior_ptid));
 
   if (pattern)
     {
@@ -157,22 +157,40 @@ sharedlibrary_command (char *pattern, int from_tty)
   }
 }
 
+/* LOCAL FUNCTION
+
+   no_shared_libraries -- handle command to explicitly discard symbols
+   from shared libraries.
+
+   DESCRIPTION
+
+   Implements the command "nosharedlibrary", which discards symbols
+   that have been auto-loaded from shared libraries.  Symbols from
+   shared libraries that were added by explicit request of the user
+   are not discarded.  Also called from remote.c.  */
+
+void
+no_shared_libraries (char *ignored, int from_tty)
+{
+  /* FIXME */
+}
+
 void
-_initialize_solib (void)
+_initialize_xcoffsolib (void)
 {
   add_com ("sharedlibrary", class_files, sharedlibrary_command,
           "Load shared object library symbols for files matching REGEXP.");
   add_info ("sharedlibrary", solib_info,
            "Status of loaded shared object libraries");
 
-  add_show_from_set
-    (add_set_cmd ("auto-solib-add", class_support, var_zinteger,
+  deprecated_add_show_from_set
+    (add_set_cmd ("auto-solib-add", class_support, var_boolean,
                  (char *) &auto_solib_add,
                  "Set autoloading of shared library symbols.\n\
-If nonzero, symbols from all shared object libraries will be loaded\n\
-automatically when the inferior begins execution or when the dynamic linker\n\
-informs gdb that a new library has been loaded.  Otherwise, symbols\n\
-must be loaded manually, using `sharedlibrary'.",
+If \"on\", symbols from all shared object libraries will be loaded\n\
+automatically when the inferior begins execution, when the dynamic linker\n\
+informs gdb that a new library has been loaded, or when attaching to the\n\
+inferior.  Otherwise, symbols must be loaded manually, using `sharedlibrary'.",
                  &setlist),
      &showlist);
 }
This page took 0.024615 seconds and 4 git commands to generate.