summaryrefslogtreecommitdiff
path: root/gold/dynobj.cc
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>2008-07-24 07:26:27 +0000
committerIan Lance Taylor <ian@airs.com>2008-07-24 07:26:27 +0000
commitaa86f06bb6dbe70fb2b8b65ff54e9304c7b5eed7 (patch)
tree949e9dbbf4007b7c529258b0935d85018492de87 /gold/dynobj.cc
parent81fd73edd15ab295e7340aae0c58ace517159d35 (diff)
downloadbinutils-gdb-aa86f06bb6dbe70fb2b8b65ff54e9304c7b5eed7.tar.gz
* dynobj.cc (Versions::Versions): If there is an soname, use it as
the base version name.
Diffstat (limited to 'gold/dynobj.cc')
-rw-r--r--gold/dynobj.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/gold/dynobj.cc b/gold/dynobj.cc
index 9247a79d7d5..349d472417f 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);