summaryrefslogtreecommitdiffstats
path: root/Source/cmGeneratorTarget.h
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2012-10-10 22:57:11 (GMT)
committerStephen Kelly <steveire@gmail.com>2013-10-30 20:29:45 (GMT)
commit07f5788385de1cc1ba7ada9d3d9adc43382fd5ff (patch)
treedec9e6ee098811d073baf4b29cf3eb0bcb9a667a /Source/cmGeneratorTarget.h
parentfa037776264a9ae554ed4e0a25f4e9f11f570524 (diff)
downloadCMake-07f5788385de1cc1ba7ada9d3d9adc43382fd5ff.zip
CMake-07f5788385de1cc1ba7ada9d3d9adc43382fd5ff.tar.gz
CMake-07f5788385de1cc1ba7ada9d3d9adc43382fd5ff.tar.bz2
Move TraceDependencies to cmGeneratorTarget.
Diffstat (limited to 'Source/cmGeneratorTarget.h')
-rw-r--r--Source/cmGeneratorTarget.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/Source/cmGeneratorTarget.h b/Source/cmGeneratorTarget.h
index 9723f72..a99f54b 100644
--- a/Source/cmGeneratorTarget.h
+++ b/Source/cmGeneratorTarget.h
@@ -77,9 +77,22 @@ public:
/** Add the target output files to the global generator manifest. */
void GenerateTargetManifest(const char* config);
+ /**
+ * Trace through the source files in this target and add al source files
+ * that they depend on, used by all generators
+ */
+ void TraceDependencies();
+
void ClassifySources();
void LookupObjectLibraries();
+ /** Get sources that must be built before the given source. */
+ std::vector<cmSourceFile*> const* GetSourceDepends(cmSourceFile* sf);
+
+ struct SourceEntry { std::vector<cmSourceFile*> Depends; };
+ typedef std::map<cmSourceFile*, SourceEntry> SourceEntriesType;
+ SourceEntriesType SourceEntries;
+
private:
std::map<std::string, std::vector<std::string> > SystemIncludesCache;