ld: Add -Bno-symbolic

PR 27834
	* ldlex.h (enum option_values): Add OPTION_NO_SYMBOLIC.
	* lexsup.c (ld_options): Add -Bno-symbolic.
	(parse_args): Handle -Bno-symbolic.
	* ld.texi: Document -Bno-symbolic.
	* NEWS: Mention -Bno-symbolic.
	* testsuite/ld-elf/shared.exp: Add a test.
This commit is contained in:
Fangrui Song
2021-05-11 23:10:45 -07:00
committed by Alan Modra
parent 4863cddb50
commit cf893b0ef7
6 changed files with 30 additions and 0 deletions

View File

@@ -302,6 +302,8 @@ static const struct ld_option ld_options[] =
'\0', NULL, NULL, ONE_DASH },
{ {"static", no_argument, NULL, OPTION_NON_SHARED},
'\0', NULL, NULL, ONE_DASH },
{ {"Bno-symbolic", no_argument, NULL, OPTION_NO_SYMBOLIC},
'\0', NULL, N_("Don't bind global references locally"), ONE_DASH },
{ {"Bsymbolic", no_argument, NULL, OPTION_SYMBOLIC},
'\0', NULL, N_("Bind global references locally"), ONE_DASH },
{ {"Bsymbolic-functions", no_argument, NULL, OPTION_SYMBOLIC_FUNCTIONS},
@@ -1301,6 +1303,9 @@ parse_args (unsigned argc, char **argv)
case OPTION_STATS:
config.stats = true;
break;
case OPTION_NO_SYMBOLIC:
opt_symbolic = symbolic_unset;
break;
case OPTION_SYMBOLIC:
opt_symbolic = symbolic;
break;