From 15b3cfae2bd81ba81b63d7c16276228cf6b9887c Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Thu, 6 Sep 2007 23:37:53 +0000 Subject: [PATCH] Add -rpath-link option, currently unused. --- gold/options.cc | 7 ++++++- gold/options.h | 10 ++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/gold/options.cc b/gold/options.cc index af168ad6c3..2c0579e07f 100644 --- a/gold/options.cc +++ b/gold/options.cc @@ -249,11 +249,15 @@ options::Command_line_options::options[] = &General_options::set_output_file_name), GENERAL_NOARG('r', NULL, N_("Generate relocatable output"), NULL, ONE_DASH, &General_options::set_relocatable), - GENERAL_ARG('R', "rpath", N_("Add directory to runtime search path"), + GENERAL_ARG('R', "rpath", N_("Add DIR to runtime search path"), N_("-R DIR, -rpath DIR"), ONE_DASH, &General_options::add_to_rpath), GENERAL_NOARG('\0', "eh-frame-hdr", N_("Create exception frame header"), NULL, TWO_DASHES, &General_options::create_eh_frame_hdr), + GENERAL_ARG('\0', "rpath-link", + N_("Add DIR to link time shared library search path"), + N_("--rpath-link DIR"), TWO_DASHES, + &General_options::add_to_rpath_link), GENERAL_NOARG('\0', "shared", N_("Generate shared library"), NULL, ONE_DASH, &General_options::set_shared), GENERAL_NOARG('\0', "static", N_("Do not link against shared libraries"), @@ -289,6 +293,7 @@ General_options::General_options() is_relocatable_(false), create_eh_frame_hdr_(false), rpath_(), + rpath_link_(), is_shared_(false), is_static_(false) { diff --git a/gold/options.h b/gold/options.h index 7b1fe67e6c..3521f084f4 100644 --- a/gold/options.h +++ b/gold/options.h @@ -74,6 +74,11 @@ class General_options rpath() const { return this->rpath_; } + // --rpath-link: The link time search patch for shared libraries. + const Dir_list& + rpath_link() const + { return this->rpath_link_; } + // --shared: Whether generating a shared object. bool is_shared() const @@ -120,6 +125,10 @@ class General_options add_to_rpath(const char* arg) { this->rpath_.push_back(arg); } + void + add_to_rpath_link(const char* arg) + { this->rpath_link_.push_back(arg); } + void set_shared() { this->is_shared_ = true; } @@ -139,6 +148,7 @@ class General_options bool is_relocatable_; bool create_eh_frame_hdr_; Dir_list rpath_; + Dir_list rpath_link_; bool is_shared_; bool is_static_; };