From 3b2935444fe89c883ffe7964b69556f3580ee1ef Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Fri, 23 Jan 2009 17:05:16 +0000 Subject: [PATCH] * options.h (General_options::gc_sections): Define as a no-op for now. (General_options::no_keep_memory): Ditto. (General_options::Bshareable): Define. * options.cc (General_options::finalize): Honor -Bshareable. --- gold/ChangeLog | 7 +++++++ gold/options.cc | 3 +++ gold/options.h | 10 ++++++++++ 3 files changed, 20 insertions(+) diff --git a/gold/ChangeLog b/gold/ChangeLog index ddfe7b3f938..90af8cb4c91 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,3 +1,10 @@ +2009-01-20 Chris Faylor + + * options.h (General_options::gc_sections): Define as a no-op for now. + (General_options::no_keep_memory): Ditto. + (General_options::Bshareable): Define. + * options.cc (General_options::finalize): Honor -Bshareable. + 2009-01-20 Andreas Schwab * powerpc.cc (Powerpc_relocate_functions::rel16_ha): Don't try to diff --git a/gold/options.cc b/gold/options.cc index 6b2b5cf8f7c..ff9bd41c195 100644 --- a/gold/options.cc +++ b/gold/options.cc @@ -696,6 +696,9 @@ General_options::finalize() if (this->strip_debug_non_line()) this->set_strip_debug_gdb(true); + if (this->Bshareable()) + this->set_shared(true); + // If the user specifies both -s and -r, convert the -s to -S. // -r requires us to keep externally visible symbols! if (this->strip_all() && this->relocatable()) diff --git a/gold/options.h b/gold/options.h index 4148b0aed6a..ba61d17289a 100644 --- a/gold/options.h +++ b/gold/options.h @@ -581,6 +581,10 @@ class General_options N_("Check segment addresses for overlaps (default)"), N_("Do not check segment addresses for overlaps")); + DEFINE_bool(gc_sections, options::TWO_DASHES, '\0', true, + N_("(noop) Garbage collect sections"), + N_("(noop) Do not garbage collect sections")); + #ifdef HAVE_ZLIB_H DEFINE_enum(compress_debug_sections, options::TWO_DASHES, '\0', "none", N_("Compress .debug_* sections in the output file"), @@ -754,9 +758,15 @@ class General_options DEFINE_bool(strip_lto_sections, options::TWO_DASHES, '\0', true, N_("Strip LTO intermediate code sections"), NULL); + DEFINE_bool(no_keep_memory, options::TWO_DASHES, 's', false, + N_("Use less memory and more disk I/O (included only for compatibility with GNU ld)"), NULL); + DEFINE_bool(shared, options::ONE_DASH, '\0', false, N_("Generate shared library"), NULL); + DEFINE_bool(Bshareable, options::ONE_DASH, '\0', false, + N_("Generate shared library"), NULL); + // This is not actually special in any way, but I need to give it // a non-standard accessor-function name because 'static' is a keyword. DEFINE_special(static, options::ONE_DASH, '\0', -- 2.30.2