summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorBill Hoffman <bill.hoffman@kitware.com>2005-02-02 18:19:57 (GMT)
committerBill Hoffman <bill.hoffman@kitware.com>2005-02-02 18:19:57 (GMT)
commit35ec09480a32a98e4dda725a0fd1b7ba1e8b0b17 (patch)
tree9be6de049204514d9544f90715a3fffc6c75a316 /Source
parent0aa05c1f7b8b1d224138e3f03c7883cec47335aa (diff)
downloadCMake-35ec09480a32a98e4dda725a0fd1b7ba1e8b0b17.zip
CMake-35ec09480a32a98e4dda725a0fd1b7ba1e8b0b17.tar.gz
CMake-35ec09480a32a98e4dda725a0fd1b7ba1e8b0b17.tar.bz2
ENH: move AddFlags stuff up to LocalGenerator from LocalUnix generator
Diffstat (limited to 'Source')
-rw-r--r--Source/cmLocalGenerator.cxx71
-rw-r--r--Source/cmLocalGenerator.h5
-rw-r--r--Source/cmLocalUnixMakefileGenerator2.cxx69
-rw-r--r--Source/cmLocalUnixMakefileGenerator2.h4
4 files changed, 76 insertions, 73 deletions
diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx
index 92cb202..8530f78 100644
--- a/Source/cmLocalGenerator.cxx
+++ b/Source/cmLocalGenerator.cxx
@@ -1267,3 +1267,74 @@ void cmLocalGenerator::OutputLinkLibraries(std::ostream& fout,
fout << m_Makefile->GetDefinition("CMAKE_STANDARD_LIBRARIES") << " ";
}
}
+
+
+//----------------------------------------------------------------------------
+void cmLocalGenerator::AddLanguageFlags(std::string& flags,
+ const char* lang)
+{
+ // Add language-specific flags.
+ std::string flagsVar = "CMAKE_";
+ flagsVar += lang;
+ flagsVar += "_FLAGS";
+ this->AddConfigVariableFlags(flags, flagsVar.c_str());
+}
+
+//----------------------------------------------------------------------------
+void cmLocalGenerator::AddSharedFlags(std::string& flags,
+ const char* lang,
+ bool shared)
+{
+ std::string flagsVar;
+
+ // Add flags for dealing with shared libraries for this language.
+ if(shared)
+ {
+ flagsVar = "CMAKE_SHARED_LIBRARY_";
+ flagsVar += lang;
+ flagsVar += "_FLAGS";
+ this->AppendFlags(flags, m_Makefile->GetDefinition(flagsVar.c_str()));
+ }
+
+ // Add flags specific to shared builds.
+ if(cmSystemTools::IsOn(m_Makefile->GetDefinition("BUILD_SHARED_LIBS")))
+ {
+ flagsVar = "CMAKE_SHARED_BUILD_";
+ flagsVar += lang;
+ flagsVar += "_FLAGS";
+ this->AppendFlags(flags, m_Makefile->GetDefinition(flagsVar.c_str()));
+ }
+}
+
+//----------------------------------------------------------------------------
+void cmLocalGenerator::AddConfigVariableFlags(std::string& flags,
+ const char* var)
+{
+ // Add the flags from the variable itself.
+ std::string flagsVar = var;
+ this->AppendFlags(flags, m_Makefile->GetDefinition(flagsVar.c_str()));
+
+ // Add the flags from the build-type specific variable.
+ const char* buildType = m_Makefile->GetDefinition("CMAKE_BUILD_TYPE");
+ if(buildType && *buildType)
+ {
+ flagsVar += "_";
+ flagsVar += cmSystemTools::UpperCase(buildType);
+ this->AppendFlags(flags, m_Makefile->GetDefinition(flagsVar.c_str()));
+ }
+}
+
+//----------------------------------------------------------------------------
+void cmLocalGenerator::AppendFlags(std::string& flags,
+ const char* newFlags)
+{
+ if(newFlags && *newFlags)
+ {
+ if(flags.size())
+ {
+ flags += " ";
+ }
+ flags += newFlags;
+ }
+}
+
diff --git a/Source/cmLocalGenerator.h b/Source/cmLocalGenerator.h
index 670e093..6f96149 100644
--- a/Source/cmLocalGenerator.h
+++ b/Source/cmLocalGenerator.h
@@ -94,6 +94,11 @@ public:
void SetParent(cmLocalGenerator* g) { m_Parent = g;}
protected:
+ void AddLanguageFlags(std::string& flags, const char* lang);
+ void AddSharedFlags(std::string& flags, const char* lang, bool shared);
+ void AddConfigVariableFlags(std::string& flags, const char* var);
+ void AppendFlags(std::string& flags, const char* newFlags);
+
///! Fill out these strings for the given target. Libraries to link, flags, and linkflags.
void GetTargetFlags(std::string& linkLibs,
std::string& flags,
diff --git a/Source/cmLocalUnixMakefileGenerator2.cxx b/Source/cmLocalUnixMakefileGenerator2.cxx
index 321760f..d8cf0de 100644
--- a/Source/cmLocalUnixMakefileGenerator2.cxx
+++ b/Source/cmLocalUnixMakefileGenerator2.cxx
@@ -2308,75 +2308,6 @@ bool cmLocalUnixMakefileGenerator2::ComparePath(const char* c1, const char* c2)
}
//----------------------------------------------------------------------------
-void cmLocalUnixMakefileGenerator2::AddLanguageFlags(std::string& flags,
- const char* lang)
-{
- // Add language-specific flags.
- std::string flagsVar = "CMAKE_";
- flagsVar += lang;
- flagsVar += "_FLAGS";
- this->AddConfigVariableFlags(flags, flagsVar.c_str());
-}
-
-//----------------------------------------------------------------------------
-void cmLocalUnixMakefileGenerator2::AddSharedFlags(std::string& flags,
- const char* lang,
- bool shared)
-{
- std::string flagsVar;
-
- // Add flags for dealing with shared libraries for this language.
- if(shared)
- {
- flagsVar = "CMAKE_SHARED_LIBRARY_";
- flagsVar += lang;
- flagsVar += "_FLAGS";
- this->AppendFlags(flags, m_Makefile->GetDefinition(flagsVar.c_str()));
- }
-
- // Add flags specific to shared builds.
- if(cmSystemTools::IsOn(m_Makefile->GetDefinition("BUILD_SHARED_LIBS")))
- {
- flagsVar = "CMAKE_SHARED_BUILD_";
- flagsVar += lang;
- flagsVar += "_FLAGS";
- this->AppendFlags(flags, m_Makefile->GetDefinition(flagsVar.c_str()));
- }
-}
-
-//----------------------------------------------------------------------------
-void cmLocalUnixMakefileGenerator2::AddConfigVariableFlags(std::string& flags,
- const char* var)
-{
- // Add the flags from the variable itself.
- std::string flagsVar = var;
- this->AppendFlags(flags, m_Makefile->GetDefinition(flagsVar.c_str()));
-
- // Add the flags from the build-type specific variable.
- const char* buildType = m_Makefile->GetDefinition("CMAKE_BUILD_TYPE");
- if(buildType && *buildType)
- {
- flagsVar += "_";
- flagsVar += cmSystemTools::UpperCase(buildType);
- this->AppendFlags(flags, m_Makefile->GetDefinition(flagsVar.c_str()));
- }
-}
-
-//----------------------------------------------------------------------------
-void cmLocalUnixMakefileGenerator2::AppendFlags(std::string& flags,
- const char* newFlags)
-{
- if(newFlags && *newFlags)
- {
- if(flags.size())
- {
- flags += " ";
- }
- flags += newFlags;
- }
-}
-
-//----------------------------------------------------------------------------
void
cmLocalUnixMakefileGenerator2
::AppendTargetDepends(std::vector<std::string>& depends,
diff --git a/Source/cmLocalUnixMakefileGenerator2.h b/Source/cmLocalUnixMakefileGenerator2.h
index 41d5658..6c318d4 100644
--- a/Source/cmLocalUnixMakefileGenerator2.h
+++ b/Source/cmLocalUnixMakefileGenerator2.h
@@ -159,10 +159,6 @@ protected:
void SplitFullPath(const char* p, std::vector<std::string>& components);
bool ComparePath(const char* c1, const char* c2);
- void AddLanguageFlags(std::string& flags, const char* lang);
- void AddSharedFlags(std::string& flags, const char* lang, bool shared);
- void AddConfigVariableFlags(std::string& flags, const char* var);
- void AppendFlags(std::string& flags, const char* newFlags);
void AppendTargetDepends(std::vector<std::string>& depends,
const cmTarget& target);
void AppendAnyDepend(std::vector<std::string>& depends, const char* name);