aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>2011-07-11 16:19:51 +0000
committerIan Lance Taylor <ian@airs.com>2011-07-11 16:19:51 +0000
commite2153196343ab5120efa49044081baaeeae8a293 (patch)
tree915dbb04574e6870b77470be41652cab8fffdb27 /gold/options.cc
parentinclude/ChangeLog (diff)
downloadbinutils-gdb-e2153196343ab5120efa49044081baaeeae8a293.tar.gz
binutils-gdb-e2153196343ab5120efa49044081baaeeae8a293.tar.bz2
binutils-gdb-e2153196343ab5120efa49044081baaeeae8a293.zip
PR gold/12979
* options.h (class General_options): Add -Bgroup. * options.cc (General_options::finalize): If -Bgroup is set, default to --unresolved-symbols=report-all. * layout.cc (Layout::finish_dynamic_section): Implement -Bgroup. * target-reloc.h (issue_undefined_symbol_error): Handle --unresolved-symbols=report-all.
Diffstat (limited to 'gold/options.cc')
-rw-r--r--gold/options.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/gold/options.cc b/gold/options.cc
index 16699aa7415..be3264554a4 100644
--- a/gold/options.cc
+++ b/gold/options.cc
@@ -1168,6 +1168,14 @@ General_options::finalize()
}
}
+ // -Bgroup implies --unresolved-symbols=report-all.
+ if (this->Bgroup() && !this->user_set_unresolved_symbols())
+ this->set_unresolved_symbols("report-all");
+
+ // -shared implies --allow-shlib-undefined. Currently
+ // ---allow-shlib-undefined controls warnings issued based on the
+ // -symbol table. --unresolved-symbols controls warnings issued
+ // -based on relocations.
if (this->shared() && !this->user_set_allow_shlib_undefined())
this->set_allow_shlib_undefined(true);