For relative paths in INPUT() and GROUP(), search the directory of the current linker script before searching other paths.

PR ld/25806
	* ldlang.h (struct lang_input_statement_struct): Add extra_search_path.
	* ldlang.c (current_input_file): New.
	(ldirname): New.
	(new_afile): Add from_filename parameter. Set extra_search_path.
	(lang_add_input_file): Pass current_input_file to new_afile.
	(load_symbols): Set current_input_file.
This commit is contained in:
Fangrui Song
2020-04-22 16:20:02 +01:00
committed by Nick Clifton
parent 31c89d6038
commit 161719466a
6 changed files with 77 additions and 12 deletions

View File

@@ -293,6 +293,9 @@ typedef struct lang_input_statement_struct
Usually the same as filename, but for a file spec'd with
-l this is the -l switch itself rather than the filename. */
const char *local_sym_name;
/* Extra search path. Used to find a file relative to the
directory of the current linker script. */
const char *extra_search_path;
bfd *the_bfd;