aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2009-10-14 01:48:53 +0000
committerAlan Modra <amodra@gmail.com>2009-10-14 01:48:53 +0000
commitfc1ed737279ecd7ab047b583a411e626a678207d (patch)
tree580ce4dcf3987e1718294caa05a6d8851653c2fc /ld
parent8bd2aa6599b59cf89a48df336e6942ecf6d56d6f (diff)
downloadgdb-fc1ed737279ecd7ab047b583a411e626a678207d.zip
gdb-fc1ed737279ecd7ab047b583a411e626a678207d.tar.gz
gdb-fc1ed737279ecd7ab047b583a411e626a678207d.tar.bz2
* ldlang.c (load_symbols): Set whole_archive from entry when
parsing a linker script.
Diffstat (limited to 'ld')
-rw-r--r--ld/ChangeLog5
-rw-r--r--ld/ldlang.c5
2 files changed, 9 insertions, 1 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 9fe8f88..fac9613 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,8 @@
+2009-10-14 Ryan Mansfield <rmansfield@qnx.com>
+
+ * ldlang.c (load_symbols): Set whole_archive from entry when
+ parsing a linker script.
+
2009-10-10 Alan Modra <amodra@bigpond.net.au>
* scripttempl/elf32cr16.sc: Revert 2009-09-28 changes.
diff --git a/ld/ldlang.c b/ld/ldlang.c
index 898ec05..fc20ecb 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
@@ -2592,7 +2592,7 @@ load_symbols (lang_input_statement_type *entry,
{
bfd_error_type err;
bfd_boolean save_ldlang_sysrooted_script;
- bfd_boolean save_as_needed, save_add_needed;
+ bfd_boolean save_as_needed, save_add_needed, save_whole_archive;
err = bfd_get_error ();
@@ -2627,6 +2627,8 @@ load_symbols (lang_input_statement_type *entry,
as_needed = entry->as_needed;
save_add_needed = add_needed;
add_needed = entry->add_needed;
+ save_whole_archive = whole_archive;
+ whole_archive = entry->whole_archive;
ldfile_assumed_script = TRUE;
parser_input = input_script;
@@ -2639,6 +2641,7 @@ load_symbols (lang_input_statement_type *entry,
ldlang_sysrooted_script = save_ldlang_sysrooted_script;
as_needed = save_as_needed;
add_needed = save_add_needed;
+ whole_archive = save_whole_archive;
pop_stat_ptr ();
return TRUE;