]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
* ldmain.c (main): Init "strip_discarded".
authorAlan Modra <amodra@gmail.com>
Mon, 23 Dec 2002 12:05:38 +0000 (12:05 +0000)
committerAlan Modra <amodra@gmail.com>
Mon, 23 Dec 2002 12:05:38 +0000 (12:05 +0000)
* lexsup.c (OPTION_STRIP_DISCARDED): Define.
(OPTION_NO_STRIP_DISCARDED): Define.
(ld_options): Add "strip-discarded" and "no-strip-discarded".
(parse_args): Handle them.

ld/ChangeLog
ld/ldmain.c
ld/lexsup.c

index cc43cea29cfbeb228752805900e618f71690fd06..8295f1e58109d40fae6f26075db6fc156dd6c568 100644 (file)
@@ -1,17 +1,25 @@
+2002-12-23  Alan Modra  <amodra@bigpond.net.au>
+
+       * ldmain.c (main): Init "strip_discarded".
+       * lexsup.c (OPTION_STRIP_DISCARDED): Define.
+       (OPTION_NO_STRIP_DISCARDED): Define.
+       (ld_options): Add "strip-discarded" and "no-strip-discarded".
+       (parse_args): Handle them.
+
 2002-12-23  Nick Clifton  <nickc@redhat.com>
 
        * ld.h (struct args_type): Add new field
        'accept_unknown_input_architecture'.
-        * ldmain.c (main): Initialise 'accept_unknown_input_architecture'
+       * ldmain.c (main): Initialise 'accept_unknown_input_architecture'
        to false.
-        * ldlang.c (lang_check): Pass accept_unknown_input_architecture to
+       * ldlang.c (lang_check): Pass accept_unknown_input_architecture to
        bfd_arch_get_compatible.
-        * ldfile.c (ldfile_try_open_bfd): Likewise.
-        * lexsup.c (ld_options): Add new command line switch
+       * ldfile.c (ldfile_try_open_bfd): Likewise.
+       * lexsup.c (ld_options): Add new command line switch
        --accept-unknown-input-architecture and its inverse.
-        (parse_args): Handle --accept-unknown-input-architecture.
-        * ld.texinfo: Document new linker option.
-        * NEWS: Mention new linker option.
+       (parse_args): Handle --accept-unknown-input-architecture.
+       * ld.texinfo: Document new linker option.
+       * NEWS: Mention new linker option.
 
 2002-12-20  Alan Modra  <amodra@bigpond.net.au>
 
@@ -46,7 +54,7 @@
        so that it is not confused with -c.
 
 2002-12-13  Ralf Habacker  <Ralf.Habacker@freenet.de>
-            Charles Wilson  <cwilson@ece.gatech.edu>
+           Charles Wilson  <cwilson@ece.gatech.edu>
 
        * configure.in: Add check for realpath function.
        * configure: Regenerate.
index 03a5c5acdcca0d57e16571092f20c8119fa8d410..c90cb6653742425ddac26062fadc9abe46596c65 100644 (file)
@@ -248,6 +248,7 @@ main (argc, argv)
   link_info.new_dtags = FALSE;
   link_info.combreloc = TRUE;
   link_info.eh_frame_hdr = FALSE;
+  link_info.strip_discarded = TRUE;
   link_info.strip = strip_none;
   link_info.discard = discard_sec_merge;
   link_info.common_skip_ar_aymbols = bfd_link_common_skip_none;
index ce4cf30994d0b67dcb27c3689fa5c9373631084e..87a729a4fe28ba5ba967c591cde6c0af92245f34 100644 (file)
@@ -133,7 +133,9 @@ int parsing_defsym = 0;
 #define OPTION_NO_DEFINE_COMMON                (OPTION_SPARE_DYNAMIC_TAGS + 1)
 #define OPTION_NOSTDLIB                        (OPTION_NO_DEFINE_COMMON + 1)
 #define OPTION_NO_OMAGIC               (OPTION_NOSTDLIB + 1)
-#define OPTION_ACCEPT_UNKNOWN_INPUT_ARCH    (OPTION_NO_OMAGIC + 1)
+#define OPTION_STRIP_DISCARDED         (OPTION_NO_OMAGIC + 1)
+#define OPTION_NO_STRIP_DISCARDED      (OPTION_STRIP_DISCARDED + 1)
+#define OPTION_ACCEPT_UNKNOWN_INPUT_ARCH    (OPTION_NO_STRIP_DISCARDED + 1)
 #define OPTION_NO_ACCEPT_UNKNOWN_INPUT_ARCH (OPTION_ACCEPT_UNKNOWN_INPUT_ARCH + 1)
 
 /* The long options.  This structure is used for both the option
@@ -241,6 +243,10 @@ static const struct ld_option ld_options[] =
       's', NULL, N_("Strip all symbols"), TWO_DASHES },
   { {"strip-debug", no_argument, NULL, 'S'},
       'S', NULL, N_("Strip debugging symbols"), TWO_DASHES },
+  { {"strip-discarded", no_argument, NULL, OPTION_STRIP_DISCARDED},
+      '\0', NULL, N_("Strip symbols in discarded sections"), TWO_DASHES },
+  { {"no-strip-discarded", no_argument, NULL, OPTION_NO_STRIP_DISCARDED},
+      '\0', NULL, N_("Do not strip symbols in discarded sections"), TWO_DASHES },
   { {"trace", no_argument, NULL, 't'},
       't', NULL, N_("Trace file opens"), TWO_DASHES },
   { {"script", required_argument, NULL, 'T'},
@@ -924,6 +930,12 @@ parse_args (argc, argv)
        case 's':
          link_info.strip = strip_all;
          break;
+       case OPTION_STRIP_DISCARDED:
+         link_info.strip_discarded = TRUE;
+         break;
+       case OPTION_NO_STRIP_DISCARDED:
+         link_info.strip_discarded = FALSE;
+         break;
        case OPTION_SHARED:
          if (config.has_shared)
            link_info.shared = TRUE;