mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-14 10:19:56 -06:00
cmGeneratorTarget: factor out common part of AddSources commands
This commit is contained in:
@@ -468,9 +468,8 @@ std::string cmGeneratorTarget::GetOutputName(const std::string& config,
|
||||
return i->second;
|
||||
}
|
||||
|
||||
void cmGeneratorTarget::AddSource(const std::string& src)
|
||||
void cmGeneratorTarget::AddSourceCommon(const std::string& src)
|
||||
{
|
||||
this->Target->AddSource(src);
|
||||
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
||||
cmGeneratorExpression ge(lfbt);
|
||||
CM_AUTO_PTR<cmCompiledGeneratorExpression> cge = ge.Parse(src);
|
||||
@@ -480,19 +479,17 @@ void cmGeneratorTarget::AddSource(const std::string& src)
|
||||
this->LinkImplementationLanguageIsContextDependent = true;
|
||||
}
|
||||
|
||||
void cmGeneratorTarget::AddSource(const std::string& src)
|
||||
{
|
||||
this->Target->AddSource(src);
|
||||
this->AddSourceCommon(src);
|
||||
}
|
||||
|
||||
void cmGeneratorTarget::AddTracedSources(std::vector<std::string> const& srcs)
|
||||
{
|
||||
this->Target->AddTracedSources(srcs);
|
||||
if (!srcs.empty()) {
|
||||
std::string srcFiles = cmJoin(srcs, ";");
|
||||
this->SourceFilesMap.clear();
|
||||
this->LinkImplementationLanguageIsContextDependent = true;
|
||||
cmListFileBacktrace lfbt = this->Makefile->GetBacktrace();
|
||||
cmGeneratorExpression ge(lfbt);
|
||||
CM_AUTO_PTR<cmCompiledGeneratorExpression> cge = ge.Parse(srcFiles);
|
||||
cge->SetEvaluateForBuildsystem(true);
|
||||
this->SourceEntries.push_back(
|
||||
new cmGeneratorTarget::TargetPropertyEntry(cge));
|
||||
this->AddSourceCommon(cmJoin(srcs, ";"));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -540,6 +540,8 @@ public:
|
||||
std::string GetFortranModuleDirectory() const;
|
||||
|
||||
private:
|
||||
void AddSourceCommon(const std::string& src);
|
||||
|
||||
std::string CreateFortranModuleDirectory() const;
|
||||
mutable bool FortranModuleDirectoryCreated;
|
||||
mutable std::string FortranModuleDirectory;
|
||||
|
||||
Reference in New Issue
Block a user