* ldlang.c (load_symbols): Set as_needed and add_needed according
authorKaz Kojima <kkojima@rr.iij4u.or.jp>
Fri, 7 Apr 2006 07:03:51 +0000 (07:03 +0000)
committerKaz Kojima <kkojima@rr.iij4u.or.jp>
Fri, 7 Apr 2006 07:03:51 +0000 (07:03 +0000)
to the corresponding script's fields while processing it.

ld/ChangeLog
ld/ldlang.c

index e8098d8..0adf6a8 100644 (file)
@@ -1,3 +1,8 @@
+2006-04-07  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
+
+       * ldlang.c (load_symbols): Set as_needed and add_needed according
+       to the corresponding script's fields while processing it.
+
 2006-04-06  Carlos O'Donell  <carlos@codesourcery.com>
 
        * Makefile.am: Add install-html, install-html-am, and
index 8d4d9e9..c07a592 100644 (file)
@@ -2323,6 +2323,7 @@ load_symbols (lang_input_statement_type *entry,
       lang_statement_list_type *hold;
       bfd_boolean bad_load = TRUE;
       bfd_boolean save_ldlang_sysrooted_script;
+      bfd_boolean save_as_needed, save_add_needed;
 
       err = bfd_get_error ();
 
@@ -2356,6 +2357,10 @@ load_symbols (lang_input_statement_type *entry,
       stat_ptr = place;
       save_ldlang_sysrooted_script = ldlang_sysrooted_script;
       ldlang_sysrooted_script = entry->sysrooted;
+      save_as_needed = as_needed;
+      as_needed = entry->as_needed;
+      save_add_needed = add_needed;
+      add_needed = entry->add_needed;
 
       ldfile_assumed_script = TRUE;
       parser_input = input_script;
@@ -2366,6 +2371,8 @@ load_symbols (lang_input_statement_type *entry,
       ldfile_assumed_script = FALSE;
 
       ldlang_sysrooted_script = save_ldlang_sysrooted_script;
+      as_needed = save_as_needed;
+      add_needed = save_add_needed;
       stat_ptr = hold;
 
       return ! bad_load;