break;
case OPTION_DYNAMIC_LIST_DATA:
opt_dynamic_list = dynamic_list_data;
- if (opt_symbolic == symbolic)
- opt_symbolic = symbolic_unset;
break;
case OPTION_DYNAMIC_LIST_CPP_TYPEINFO:
lang_append_dynamic_list_cpp_typeinfo ();
if (opt_dynamic_list != dynamic_list_data)
opt_dynamic_list = dynamic_list;
- if (opt_symbolic == symbolic)
- opt_symbolic = symbolic_unset;
break;
case OPTION_DYNAMIC_LIST_CPP_NEW:
lang_append_dynamic_list_cpp_new ();
if (opt_dynamic_list != dynamic_list_data)
opt_dynamic_list = dynamic_list;
- if (opt_symbolic == symbolic)
- opt_symbolic = symbolic_unset;
break;
case OPTION_DYNAMIC_LIST:
/* This option indicates a small script that only specifies
}
if (opt_dynamic_list != dynamic_list_data)
opt_dynamic_list = dynamic_list;
- if (opt_symbolic == symbolic)
- opt_symbolic = symbolic_unset;
break;
case OPTION_WARN_COMMON:
config.warn_common = TRUE;
case 'Y':
if (CONST_STRNEQ (optarg, "P,"))
optarg += 2;
- if (default_dirlist != NULL)
- free (default_dirlist);
+ free (default_dirlist);
default_dirlist = xstrdup (optarg);
break;
case 'y':
&& command_line.check_section_addresses < 0)
command_line.check_section_addresses = 0;
+ switch (opt_dynamic_list)
+ {
+ case dynamic_list_unset:
+ break;
+ case dynamic_list_data:
+ link_info.dynamic_data = TRUE;
+ /* Fall through. */
+ case dynamic_list:
+ link_info.dynamic = TRUE;
+ opt_symbolic = symbolic_unset;
+ break;
+ }
+
/* -Bsymbolic and -Bsymbols-functions are for shared library output. */
if (bfd_link_dll (&link_info))
switch (opt_symbolic)
free (link_info.dynamic_list);
link_info.dynamic_list = NULL;
}
- opt_dynamic_list = dynamic_list_unset;
break;
case symbolic_functions:
- opt_dynamic_list = dynamic_list_data;
+ link_info.dynamic = TRUE;
+ link_info.dynamic_data = TRUE;
break;
}
- switch (opt_dynamic_list)
- {
- case dynamic_list_unset:
- break;
- case dynamic_list_data:
- link_info.dynamic_data = TRUE;
- /* Fall through. */
- case dynamic_list:
- link_info.dynamic = TRUE;
- break;
- }
-
if (!bfd_link_dll (&link_info))
{
if (command_line.filter_shlib)
fprintf (file, _("\
--exclude-libs=LIBS Make all symbols in LIBS hidden\n"));
fprintf (file, _("\
- --hash-style=STYLE Set hash style to sysv, gnu or both\n"));
+ --hash-style=STYLE Set hash style to sysv/gnu/both. Default: "));
+ if (DEFAULT_EMIT_SYSV_HASH)
+ {
+ /* Note - these strings are not translated as
+ they are keywords not descriptive text. */
+ if (DEFAULT_EMIT_GNU_HASH)
+ fprintf (file, "both\n");
+ else
+ fprintf (file, "sysv\n");
+ }
+ else
+ {
+ if (DEFAULT_EMIT_GNU_HASH)
+ fprintf (file, "gnu\n");
+ else
+ /* FIXME: Can this happen ? */
+ fprintf (file, "none\n");
+ }
fprintf (file, _("\
-P AUDITLIB, --depaudit=AUDITLIB\n" "\
Specify a library to use for auditing dependencies\n"));