aboutsummaryrefslogtreecommitdiff
path: root/ld/ldlang.c
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1996-02-27 17:59:46 +0000
committerIan Lance Taylor <ian@airs.com>1996-02-27 17:59:46 +0000
commit3c8deccc4f0e767b9fe362665ae904c53cac0f71 (patch)
tree9d87ae7363e1fbe134669ac8072866186249a2da /ld/ldlang.c
parentd214421eeea98e7d7fe05c6e34cf22e6889e6355 (diff)
downloadbinutils-3c8deccc4f0e767b9fe362665ae904c53cac0f71.zip
binutils-3c8deccc4f0e767b9fe362665ae904c53cac0f71.tar.gz
binutils-3c8deccc4f0e767b9fe362665ae904c53cac0f71.tar.bz2
* lexsup.c (parse_args): Recognize --no-whole-archive.
* ldlang.h (lang_input_statement_type): Add whole_archive field. * ldlang.c (new_afile): Set whole_archive field. (load_symbols): Check input file specific whole_archive field rather than global variable. * ld.texinfo, ld.1: Document --no-whole-archive. PR 9094.
Diffstat (limited to 'ld/ldlang.c')
-rw-r--r--ld/ldlang.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/ld/ldlang.c b/ld/ldlang.c
index 4dedd98..2c67d27 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
@@ -373,6 +373,7 @@ new_afile (name, file_type, target, add_to_list)
p->symbol_count = 0;
p->common_output_section = (asection *) NULL;
p->dynamic = config.dynamic_link;
+ p->whole_archive = whole_archive;
p->loaded = false;
lang_statement_append (&input_file_chain,
(lang_statement_union_type *) p,
@@ -827,7 +828,7 @@ load_symbols (entry, place)
break;
case bfd_archive:
- if (whole_archive)
+ if (entry->whole_archive)
{
bfd *member = bfd_openr_next_archived_file (entry->the_bfd,
(bfd *) NULL);