Commit a93038c5 authored by Bill Hoffman's avatar Bill Hoffman

ENH: update to new style MakeDepend

parent 0b8dcadd
......@@ -27,6 +27,37 @@ cmITKWrapTclCommand::~cmITKWrapTclCommand()
delete m_MakeDepend;
}
void
cmITKWrapTclCommand::AddDependencies(cmDependInformation const *info,
std::vector<std::string>& depends,
std::set<cmDependInformation const*>& visited)
{
if(!info)
{
return;
}
// add info to the visited set
visited.insert(info);
// add this dependency and the recurse
// now recurse with info's dependencies
for(cmDependInformation::DependencySet::const_iterator d =
info->m_DependencySet.begin();
d != info->m_DependencySet.end(); ++d)
{
if (visited.find(*d) == visited.end())
{
if((*d)->m_FullPath != "")
{
depends.push_back((*d)->m_FullPath);
}
this->AddDependencies(*d,depends,visited);
}
}
}
// cmITKWrapTclCommand
bool cmITKWrapTclCommand::InitialPass(std::vector<std::string> const& argsIn)
{
......@@ -154,17 +185,8 @@ bool cmITKWrapTclCommand::CreateCableRule(const char* configFile)
m_MakeDepend->FindDependencies(inFile.c_str());
if (info)
{
for(cmDependInformation::DependencySet::const_iterator d =
info->m_DependencySet.begin();
d != info->m_DependencySet.end(); ++d)
{
// Make sure the full path is given. If not, the dependency was
// not found.
if((*d)->m_FullPath != "")
{
depends.push_back((*d)->m_FullPath);
}
}
std::set<cmDependInformation const*> visited;
this->AddDependencies(info, depends, visited);
}
std::vector<std::string> outputs;
......
......@@ -19,7 +19,7 @@
#include "cmStandardIncludes.h"
#include "cmCommand.h"
class cmDependInformation;
class cmMakeDepend;
/** \class cmITKWrapTclCommand
......@@ -58,7 +58,10 @@ public:
}
cmTypeMacro(cmITKWrapTclCommand, cmCommand);
protected:
protected:
void AddDependencies(cmDependInformation const*info,
std::vector<std::string>& depends,
std::set<cmDependInformation const*>& visited);
cmStdString m_TargetName;
cmTarget* m_Target;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment