diff options
Diffstat (limited to 'Source/cmSourceFile.cxx')
-rw-r--r-- | Source/cmSourceFile.cxx | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/Source/cmSourceFile.cxx b/Source/cmSourceFile.cxx index 6fac024..8da72c3 100644 --- a/Source/cmSourceFile.cxx +++ b/Source/cmSourceFile.cxx @@ -29,6 +29,7 @@ void cmSourceFile::SetName(const char* name, const char* dir, { this->SetProperty("HEADER_FILE_ONLY","1"); + m_SourceNameWithoutLastExtension = ""; m_SourceName = name; @@ -142,6 +143,7 @@ void cmSourceFile::SetName(const char* name, const char* dir, const char *ext, bool hfo) { this->SetProperty("HEADER_FILE_ONLY",(hfo ? "1" : "0")); + m_SourceNameWithoutLastExtension = ""; m_SourceName = name; std::string pathname = dir; if(pathname != "") @@ -210,3 +212,12 @@ void cmSourceFile::SetCustomCommand(cmCustomCommand* cc) } m_CustomCommand = cc; } + +const std::string& cmSourceFile::GetSourceNameWithoutLastExtension() +{ + if ( m_SourceNameWithoutLastExtension.empty() ) + { + m_SourceNameWithoutLastExtension = cmSystemTools::GetFilenameWithoutLastExtension(m_FullPath); + } + return m_SourceNameWithoutLastExtension; +} |