diff options
Diffstat (limited to 'gold')
-rw-r--r-- | gold/ChangeLog | 3 | ||||
-rw-r--r-- | gold/dynobj.cc | 6 |
2 files changed, 7 insertions, 2 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog index 3d5d94a..8f4d3f9 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,5 +1,8 @@ 2008-07-24 Ian Lance Taylor <iant@google.com> + * dynobj.cc (Versions::Versions): If there is an soname, use it as + the base version name. + * stringpool.cc (Stringpool_template::add_with_length): Set key to array size plus one. (Stringpool_template::set_string_offsets): Subtract one from key diff --git a/gold/dynobj.cc b/gold/dynobj.cc index 9247a79..349d472 100644 --- a/gold/dynobj.cc +++ b/gold/dynobj.cc @@ -1313,8 +1313,10 @@ Versions::Versions(const Version_script_info& version_script, // to me. if (parameters->options().shared()) { - const char* name = dynpool->add(parameters->options().output_file_name(), - false, NULL); + const char* name = parameters->options().soname(); + if (name == NULL) + name = parameters->options().output_file_name(); + name = dynpool->add(name, false, NULL); Verdef* vdbase = new Verdef(name, std::vector<std::string>(), true, false, true); this->defs_.push_back(vdbase); |