ld: Add -no-pie
gold has had this option for many years. Not having this option caused some confusion to users. The help message clarifies the default state. ld/ * ldlex.h (enum option_values): Add OPTION_NO_PIE. * lexsup.c (struct ld_options): Add -no-pie. (parse_args): Handle -no-pie. * ld.texi: Document -no-pie.
This commit is contained in:
parent
2af6d46fd3
commit
e8f6c2a5ba
@ -2150,6 +2150,11 @@ address the OS chooses for them (which can vary between invocations). Like
|
||||
normal dynamically linked executables they can be executed and symbols
|
||||
defined in the executable cannot be overridden by shared libraries.
|
||||
|
||||
@kindex -no-pie
|
||||
@item -no-pie
|
||||
@cindex position dependent executables
|
||||
Create a position dependent executable. This is the default.
|
||||
|
||||
@kindex -qmagic
|
||||
@item -qmagic
|
||||
This option is ignored for Linux compatibility.
|
||||
|
@ -133,6 +133,7 @@ enum option_values
|
||||
OPTION_ACCEPT_UNKNOWN_INPUT_ARCH,
|
||||
OPTION_NO_ACCEPT_UNKNOWN_INPUT_ARCH,
|
||||
OPTION_PIE,
|
||||
OPTION_NO_PIE,
|
||||
OPTION_UNRESOLVED_SYMBOLS,
|
||||
OPTION_WARN_UNRESOLVED_SYMBOLS,
|
||||
OPTION_ERROR_UNRESOLVED_SYMBOLS,
|
||||
|
@ -453,6 +453,8 @@ static const struct ld_option ld_options[] =
|
||||
'\0', NULL, N_("Create a position independent executable"), ONE_DASH },
|
||||
{ {"pic-executable", no_argument, NULL, OPTION_PIE},
|
||||
'\0', NULL, NULL, TWO_DASHES },
|
||||
{ {"no-pie", no_argument, NULL, OPTION_NO_PIE},
|
||||
'\0', NULL, N_("Create a position dependent executable (default)"), ONE_DASH },
|
||||
{ {"sort-common", optional_argument, NULL, OPTION_SORT_COMMON},
|
||||
'\0', N_("[=ascending|descending]"),
|
||||
N_("Sort common symbols by alignment [in specified order]"),
|
||||
@ -1262,6 +1264,9 @@ parse_args (unsigned argc, char **argv)
|
||||
else
|
||||
einfo (_("%F%P: -shared not supported\n"));
|
||||
break;
|
||||
case OPTION_NO_PIE:
|
||||
link_info.type = type_pde;
|
||||
break;
|
||||
case OPTION_PIE:
|
||||
if (config.has_shared)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user