{ {"demangle", optional_argument, NULL, OPTION_DEMANGLE},
'\0', N_("[=STYLE]"), N_("Demangle symbol names [using STYLE]"),
TWO_DASHES },
{ {"demangle", optional_argument, NULL, OPTION_DEMANGLE},
'\0', N_("[=STYLE]"), N_("Demangle symbol names [using STYLE]"),
TWO_DASHES },
+ { {"disable-multiple-abs-defs", no_argument, NULL,
+ OPTION_DISABLE_MULTIPLE_DEFS_ABS},
+ '\0', NULL, N_("Do not allow multiple definitions with symbols included\n"
+ " in filename invoked by -R or --just-symbols"),
+ TWO_DASHES},
{ {"embedded-relocs", no_argument, NULL, OPTION_EMBEDDED_RELOCS},
'\0', NULL, N_("Generate embedded relocs"), TWO_DASHES},
{ {"fatal-warnings", no_argument, NULL, OPTION_WARN_FATAL},
{ {"embedded-relocs", no_argument, NULL, OPTION_EMBEDDED_RELOCS},
'\0', NULL, N_("Generate embedded relocs"), TWO_DASHES},
{ {"fatal-warnings", no_argument, NULL, OPTION_WARN_FATAL},
|| strcmp (optarg, "default") == 0)
input_flags.dynamic = TRUE;
else
|| strcmp (optarg, "default") == 0)
input_flags.dynamic = TRUE;
else
- xrealloc (command_line.auxiliary_filters,
- (c + 2) * sizeof (char *));
+ xrealloc (command_line.auxiliary_filters,
+ (c + 2) * sizeof (char *));
{
link_info.unresolved_syms_in_objects
= how_to_report_unresolved_symbols;
link_info.unresolved_syms_in_shared_libs = RM_IGNORE;
}
else
{
link_info.unresolved_syms_in_objects
= how_to_report_unresolved_symbols;
link_info.unresolved_syms_in_shared_libs = RM_IGNORE;
}
else
an error message here. We cannot just make this a warning,
increment optind, and continue because getopt is too confused
and will seg-fault the next time around. */
an error message here. We cannot just make this a warning,
increment optind, and continue because getopt is too confused
and will seg-fault the next time around. */
sprintf (buf, "%s%c%s", command_line.rpath_link,
config.rpath_separator, optarg);
free (command_line.rpath_link);
sprintf (buf, "%s%c%s", command_line.rpath_link,
config.rpath_separator, optarg);
free (command_line.rpath_link);
link_info.type = type_dll;
/* When creating a shared library, the default
link_info.type = type_dll;
/* When creating a shared library, the default
- config.sort_common = sort_descending;
- else if (strcmp (optarg, N_("ascending")) == 0)
+ config.sort_common = sort_descending;
+ else if (strcmp (optarg, N_("ascending")) == 0)
else if (strcmp (optarg, N_("alignment")) == 0)
sort_section = by_alignment;
else
else if (strcmp (optarg, N_("alignment")) == 0)
sort_section = by_alignment;
else
/* Check for <something>=<somthing>... */
optarg2 = strchr (optarg, '=');
if (optarg2 == NULL)
/* Check for <something>=<somthing>... */
optarg2 = strchr (optarg, '=');
if (optarg2 == NULL)
" \"--section-start\"\n"));
optarg2++;
/* So far so good. Are all the args present? */
if ((*optarg == '\0') || (*optarg2 == '\0'))
" \"--section-start\"\n"));
optarg2++;
/* So far so good. Are all the args present? */
if ((*optarg == '\0') || (*optarg2 == '\0'))
- new_size = strtoul (optarg, NULL, 0);
- if (new_size)
- config.hash_table_size = new_size;
- else
- einfo (_("%P%X: --hash-size needs a numeric argument\n"));
- }
- break;
+ new_size = strtoul (optarg, NULL, 0);
+ if (new_size)
+ config.hash_table_size = new_size;
+ else
+ einfo (_("%X%P: --hash-size needs a numeric argument\n"));
+ }
+ break;
else if (strcasecmp (optarg, "discard") == 0)
config.orphan_handling = orphan_handling_discard;
else
else if (strcasecmp (optarg, "discard") == 0)
config.orphan_handling = orphan_handling_discard;
else
--hash-style=STYLE Set hash style to sysv, gnu or both\n"));
fprintf (file, _("\
-P AUDITLIB, --depaudit=AUDITLIB\n" "\
--hash-style=STYLE Set hash style to sysv, gnu or both\n"));
fprintf (file, _("\
-P AUDITLIB, --depaudit=AUDITLIB\n" "\
fprintf (file, _("\
-z combreloc Merge dynamic relocs into one section and sort\n"));
fprintf (file, _("\
-z nocombreloc Don't merge dynamic relocs into one section\n"));
fprintf (file, _("\
-z global Make symbols in DSO available for subsequently\n\
fprintf (file, _("\
-z combreloc Merge dynamic relocs into one section and sort\n"));
fprintf (file, _("\
-z nocombreloc Don't merge dynamic relocs into one section\n"));
fprintf (file, _("\
-z global Make symbols in DSO available for subsequently\n\
-z now Mark object non-lazy runtime binding\n"));
fprintf (file, _("\
-z origin Mark object requiring immediate $ORIGIN\n\
-z now Mark object non-lazy runtime binding\n"));
fprintf (file, _("\
-z origin Mark object requiring immediate $ORIGIN\n\
-z relro Create RELRO program header\n"));
fprintf (file, _("\
-z norelro Don't create RELRO program header (default)\n"));
-z relro Create RELRO program header\n"));
fprintf (file, _("\
-z norelro Don't create RELRO program header (default)\n"));
+#endif
+#if DEFAULT_LD_Z_SEPARATE_CODE
+ fprintf (file, _("\
+ -z separate-code Create separate code program header (default)\n"));
+ fprintf (file, _("\
+ -z noseparate-code Don't create separate code program header\n"));
+#else
+ fprintf (file, _("\
+ -z separate-code Create separate code program header\n"));
+ fprintf (file, _("\
+ -z noseparate-code Don't create separate code program header (default)\n"));
fprintf (file, _("\
-z muldefs Allow multiple definitions\n"));
fprintf (file, _("\
-z execstack Mark executable as requiring executable stack\n"));
fprintf (file, _("\
-z noexecstack Mark executable as not requiring executable stack\n"));
fprintf (file, _("\
-z muldefs Allow multiple definitions\n"));
fprintf (file, _("\
-z execstack Mark executable as requiring executable stack\n"));
fprintf (file, _("\
-z noexecstack Mark executable as not requiring executable stack\n"));