summaryrefslogtreecommitdiff
path: root/gold/parameters.h
diff options
context:
space:
mode:
authorIan Lance Taylor <iant@google.com>2007-10-10 19:02:56 +0000
committerIan Lance Taylor <iant@google.com>2007-10-10 19:02:56 +0000
commit9e2dcb779c27737af88468b29aa1d2a15b0b770f (patch)
tree70f6ac5955fb7855d0773850f9763675f0c4a0d4 /gold/parameters.h
parent7500260a55897928017d06874240074c282dbb4a (diff)
downloadbinutils-gdb-9e2dcb779c27737af88468b29aa1d2a15b0b770f.tar.gz
Implement -s and -S options which strip symbols.
Diffstat (limited to 'gold/parameters.h')
-rw-r--r--gold/parameters.h25
1 files changed, 24 insertions, 1 deletions
diff --git a/gold/parameters.h b/gold/parameters.h
index a1509811981..8d8ef36b722 100644
--- a/gold/parameters.h
+++ b/gold/parameters.h
@@ -62,6 +62,16 @@ class Parameters
sysroot() const
{ return this->sysroot_; }
+ // Whether to strip all symbols.
+ bool
+ strip_all() const
+ { return this->strip_ == STRIP_ALL; }
+
+ // Whether to strip debugging information.
+ bool
+ strip_debug() const
+ { return this->strip_ == STRIP_ALL || this->strip_ == STRIP_DEBUG; }
+
// Whether we are doing a static link--a link in which none of the
// input files are shared libraries. This is only known after we
// have seen all the input files.
@@ -114,11 +124,24 @@ class Parameters
OUTPUT_OBJECT
};
+ // Which symbols to strip.
+ enum Strip
+ {
+ // Don't strip any symbols.
+ STRIP_NONE,
+ // Strip all symbols.
+ STRIP_ALL,
+ // Strip debugging information.
+ STRIP_DEBUG
+ };
+
// The type of the output file.
Output_file_type output_file_type_;
// The target system root directory.
std::string sysroot_;
-
+ // Which symbols to strip.
+ Strip strip_;
+
// Whether the doing_static_link_ field is valid.
bool is_doing_static_link_valid_;
// Whether we are doing a static link.