]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - gdb/xcoffsolib.c
Update years in copyright notice for the GDB files.
[thirdparty/binutils-gdb.git] / gdb / xcoffsolib.c
index d6f15e5e7ccec6e667640dca6e582a23de6529f6..069b016ad37279698e0d23d0d213d266ebc293d5 100644 (file)
@@ -1,13 +1,12 @@
 /* Shared library support for RS/6000 (xcoff) object files, for GDB.
-   Copyright 1991, 1992, 1995, 1996, 1999, 2000, 2001
-   Free Software Foundation, Inc.
+   Copyright (C) 1991-2013 Free Software Foundation, Inc.
    Contributed by IBM Corporation.
 
    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 2 of the License, or
+   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,
@@ -16,9 +15,7 @@
    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, write to the Free Software
-   Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
 #include "defs.h"
 #include "bfd.h"
@@ -48,11 +45,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;
@@ -64,6 +61,7 @@ static void sharedlibrary_command (char *pattern, int from_tty);
 static void
 solib_info (char *args, int from_tty)
 {
+  int addr_size = gdbarch_addr_bit (target_gdbarch ()) / 8;
   struct vmap *vp = vmap;
 
   /* Check for new shared libraries loaded with load ().  */
@@ -79,14 +77,16 @@ solib_info (char *args, int from_tty)
   /* Skip over the first vmap, it is the main program, always loaded.  */
   vp = vp->nxt;
 
-  printf_unfiltered ("\
-Text Range             Data Range              Syms    Shared Object Library\n");
+  printf_unfiltered ("Text Range               Data Range              "
+                    "Syms      Shared Object Library\n");
 
   for (; vp != NULL; vp = vp->nxt)
     {
       printf_unfiltered ("0x%s-0x%s    0x%s-0x%s       %s      %s%s%s%s\n",
-                        paddr (vp->tstart),paddr (vp->tend),
-                        paddr (vp->dstart), paddr (vp->dend),
+                        phex (vp->tstart, addr_size),
+                        phex (vp->tend, addr_size),
+                        phex (vp->dstart, addr_size),
+                        phex (vp->dend, addr_size),
                         vp->loaded ? "Yes" : "No ",
                         vp->name,
                         *vp->member ? "(" : "",
@@ -109,7 +109,7 @@ sharedlibrary_command (char *pattern, int from_tty)
       char *re_err = re_comp (pattern);
 
       if (re_err)
-       error ("Invalid regexp: %s", re_err);
+       error (_("Invalid regexp: %s"), re_err);
     }
 
   /* Walk the list of currently loaded shared libraries, and read
@@ -123,7 +123,7 @@ sharedlibrary_command (char *pattern, int from_tty)
     if (!vp)
       return;
 
-    /* skip over the first vmap, it is the main program, always loaded. */
+    /* skip over the first vmap, it is the main program, always loaded.  */
     for (vp = vp->nxt; vp; vp = vp->nxt)
       if (! pattern
            || re_exec (vp->name)
@@ -157,40 +157,26 @@ 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_xcoffsolib (void);
 
 void
-_initialize_solib (void)
+_initialize_xcoffsolib (void)
 {
   add_com ("sharedlibrary", class_files, sharedlibrary_command,
-          "Load shared object library symbols for files matching REGEXP.");
+          _("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,
-                 (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'.",
-                 &setlist),
-     &showlist);
+           _("Status of loaded shared object libraries"));
+
+  add_setshow_boolean_cmd ("auto-solib-add", class_support,
+                          &auto_solib_add, _("\
+Set autoloading of shared library symbols."), _("\
+Show autoloading of shared library symbols."), _("\
+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'."),
+                          NULL,
+                          NULL, /* FIXME: i18n: */
+                          &setlist, &showlist);
 }