* opncls.c (_maybe_make_executable): New function. Gives execute
[deliverable/binutils-gdb.git] / gold / options.h
index b811332406f92dc95ab85061c7197f900db4b6dc..d4255f1fb622e66f866674ff1f3caa477e8585b3 100644 (file)
@@ -645,6 +645,9 @@ class General_options
               N_("Try to detect violations of the One Definition Rule"),
               NULL);
 
+  DEFINE_bool(discard_locals, options::TWO_DASHES, 'X', false,
+              N_("Delete all temporary local symbols"), NULL);
+
   DEFINE_bool(dynamic_list_data, options::TWO_DASHES, '\0', false,
               N_("Add data symbols to dynamic symbols"), NULL);
 
@@ -660,6 +663,10 @@ class General_options
   DEFINE_string(entry, options::TWO_DASHES, 'e', NULL,
                 N_("Set program start address"), N_("ADDRESS"));
 
+  DEFINE_special(exclude_libs, options::TWO_DASHES, '\0',
+                N_("Exclude libraries from automatic export"),
+                N_(("lib,lib ...")));
+
   DEFINE_bool(export_dynamic, options::TWO_DASHES, 'E', false,
               N_("Export all dynamic symbols"),
              N_("Do not export all dynamic symbols (default)"));
@@ -1022,6 +1029,11 @@ class General_options
   incremental_disposition() const
   { return this->incremental_disposition_; }
 
+  // Return true if S is the name of a library excluded from automatic
+  // symbol export.
+  bool
+  check_excluded_libs (const std::string &s) const;
+
  private:
   // Don't copy this structure.
   General_options(const General_options&);
@@ -1087,6 +1099,8 @@ class General_options
   // build (--incremental-changed, --incremental-unchanged or
   // --incremental-unknown)
   bool implicit_incremental_;
+  // Libraries excluded from automatic export via --exclude-libs
+  Unordered_set<std::string> excluded_libs_;
 };
 
 // The position-dependent options.  We use this to store the state of
This page took 0.024455 seconds and 4 git commands to generate.