Browse Source

cmIDEOptions: Add an AppendFlag method to update multi-valued options

Brad King 11 years ago
parent
commit
29410df23d
2 changed files with 8 additions and 0 deletions
  1. 7 0
      Source/cmIDEOptions.cxx
  2. 1 0
      Source/cmIDEOptions.h

+ 7 - 0
Source/cmIDEOptions.cxx

@@ -195,6 +195,13 @@ void cmIDEOptions::AddFlag(const char* flag,
   this->FlagMap[flag] = value;
 }
 
+//----------------------------------------------------------------------------
+void cmIDEOptions::AppendFlag(std::string const& flag,
+                              std::string const& value)
+{
+  this->FlagMap[flag].push_back(value);
+}
+
 //----------------------------------------------------------------------------
 void cmIDEOptions::RemoveFlag(const char* flag)
 {

+ 1 - 0
Source/cmIDEOptions.h

@@ -30,6 +30,7 @@ public:
   void AddDefines(const std::vector<std::string> &defines);
   void AddFlag(const char* flag, const char* value);
   void AddFlag(const char* flag, std::vector<std::string> const& value);
+  void AppendFlag(std::string const& flag, std::string const& value);
   void RemoveFlag(const char* flag);
   const char* GetFlag(const char* flag);