OSDN Git Service

PR binutils/3166
authornickc <nickc>
Tue, 5 Sep 2006 08:22:27 +0000 (08:22 +0000)
committernickc <nickc>
Tue, 5 Sep 2006 08:22:27 +0000 (08:22 +0000)
* objcopy.c (is_strip_section): Do not treat group sections as debugging sections.
* doc/binutils.texi (--only-keep-debug): Document that this switch is only intended for use on fully linked files.

binutils/ChangeLog
binutils/doc/binutils.texi
binutils/objcopy.c

index 184f0b1..b36b875 100644 (file)
@@ -1,3 +1,11 @@
+2006-09-05  Nick Clifton  <nickc@redhat.com>
+
+       PR binutils/3166
+       * objcopy.c (is_strip_section): Do not treat group sections as
+       debugging sections.
+       * doc/binutils.texi (--only-keep-debug): Document that this switch
+       is only intended for use on fully linked files.
+
 2006-09-01  Nick Clifton  <nickc@redhat.com>
 
        PR binutils/3146
index d74be80..e6d9ecd 100644 (file)
@@ -1482,6 +1482,13 @@ i.e., the file pointed to by the @option{--add-gnu-debuglink} can be the
 full executable.  It does not have to be a file created by the
 @option{--only-keep-debug} switch.
 
+Note - this switch is only intended for use on fully linked files.  It
+does not make sense to use it on object files where the debugging
+information may be incomplete.  Besides the gnu_debuglink feature
+currently only supports the presence of one filename containing
+debugging information, not multiple filenames on a one-per-object-file
+basis.
+
 @item -V
 @itemx --version
 Show the version number of @command{objcopy}.
@@ -2391,6 +2398,13 @@ ie the file pointed to by the @option{--add-gnu-debuglink} can be the
 full executable.  It does not have to be a file created by the
 @option{--only-keep-debug} switch.
 
+Note - this switch is only intended for use on fully linked files.  It
+does not make sense to use it on object files where the debugging
+information may be incomplete.  Besides the gnu_debuglink feature
+currently only supports the presence of one filename containing
+debugging information, not multiple filenames on a one-per-object-file
+basis.
+
 @item -V
 @itemx --version
 Show the version number for @command{strip}.
index 0d56845..8db5ef0 100644 (file)
@@ -815,6 +815,13 @@ is_strip_section (bfd *abfd ATTRIBUTE_UNUSED, asection *sec)
        return FALSE;
     }
 
+  /* PR binutils/3166
+     Group sections look like debugging sections but they are not.
+     (They have a non-zero size but they are not ALLOCated).  */
+  if ((bfd_get_section_flags (abfd, sec) & SEC_GROUP) != 0
+      && strip_symbols == STRIP_NONDEBUG)
+    return TRUE;
+
   return FALSE;
 }