mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2025-01-22 07:53:36 +08:00
Add support for AIX -blibpath and -bnolibpath.
This commit is contained in:
parent
47f21bcc3d
commit
aa67bccfe2
@ -1,3 +1,8 @@
|
||||
2002-04-30 Tom Rix <trix@redhat.com>
|
||||
|
||||
* emultempl/aix.em (gld*_parse_arge, gld*_before_allocation): Add
|
||||
-blibpath, -bnolibpath support.
|
||||
|
||||
2002-04-30 Mark Mitchell <mark@codesourcery.com>
|
||||
|
||||
* Makefile.am (ALL_EMULATIONS): Add elf32ppcwindiss.o.
|
||||
|
@ -134,6 +134,9 @@ static lang_input_statement_type *initfini_file;
|
||||
/* Whether to do run time linking */
|
||||
static boolean rtld;
|
||||
|
||||
/* Explicit command line library path, -blibpath */
|
||||
static char *command_line_blibpath = NULL;
|
||||
|
||||
/* This routine is called before anything else is done. */
|
||||
|
||||
static void
|
||||
@ -196,6 +199,8 @@ gld${EMULATION_NAME}_parse_args (argc, argv)
|
||||
OPTION_UNIX,
|
||||
OPTION_32,
|
||||
OPTION_64,
|
||||
OPTION_LIBPATH,
|
||||
OPTION_NOLIBPATH,
|
||||
};
|
||||
|
||||
/* -binitfini has special handling in the linker backend. The native linker
|
||||
@ -252,6 +257,8 @@ gld${EMULATION_NAME}_parse_args (argc, argv)
|
||||
{"b64", no_argument, NULL, OPTION_64},
|
||||
{"static", no_argument, NULL, OPTION_NOAUTOIMP},
|
||||
{"unix", no_argument, NULL, OPTION_UNIX},
|
||||
{"blibpath", required_argument, NULL, OPTION_LIBPATH},
|
||||
{"bnolibpath", required_argument, NULL, OPTION_NOLIBPATH},
|
||||
{NULL, no_argument, NULL, 0}
|
||||
};
|
||||
|
||||
@ -518,6 +525,14 @@ gld${EMULATION_NAME}_parse_args (argc, argv)
|
||||
symbol_mode_mask = 0x0e;
|
||||
break;
|
||||
|
||||
case OPTION_LIBPATH:
|
||||
command_line_blibpath=optarg;
|
||||
break;
|
||||
|
||||
case OPTION_NOLIBPATH:
|
||||
command_line_blibpath=NULL;
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
return 1;
|
||||
@ -638,10 +653,13 @@ gld${EMULATION_NAME}_before_allocation ()
|
||||
.loader relocs for them. */
|
||||
lang_for_each_statement (gld${EMULATION_NAME}_find_relocs);
|
||||
|
||||
/* We need to build LIBPATH from the -L arguments. If any -rpath
|
||||
arguments were used, though, we use -rpath instead, as a GNU
|
||||
extension. */
|
||||
if (command_line.rpath != NULL)
|
||||
/* Precedence of LIBPATH
|
||||
-blibpath: native support always first
|
||||
-rpath: gnu extension
|
||||
-L build from command line -L's */
|
||||
if (command_line_blibpath != NULL)
|
||||
libpath = command_line_blibpath;
|
||||
else if (command_line.rpath != NULL)
|
||||
libpath = command_line.rpath;
|
||||
else if (search_head == NULL)
|
||||
libpath = (char *) "";
|
||||
|
Loading…
Reference in New Issue
Block a user