summaryrefslogtreecommitdiffstats
path: root/Source/cmLocalUnixMakefileGenerator2.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2004-10-29 20:50:46 (GMT)
committerBrad King <brad.king@kitware.com>2004-10-29 20:50:46 (GMT)
commit81bbae1fb26058e7f1656b4bc14c41a65bf242eb (patch)
treecf8efad9684a9308186719218ee254e86f4f0177 /Source/cmLocalUnixMakefileGenerator2.h
parent674349caed7665ac4acebe5bdb4dddf58c8a3d6d (diff)
downloadCMake-81bbae1fb26058e7f1656b4bc14c41a65bf242eb.zip
CMake-81bbae1fb26058e7f1656b4bc14c41a65bf242eb.tar.gz
CMake-81bbae1fb26058e7f1656b4bc14c41a65bf242eb.tar.bz2
ENH: Added build system integrity check to cmLocalUnixMakefileGenerator2. This now uses a special --check-build-system flag to cmake which replaces --check-rerun. Integrity of dependencies is also checked during generation.
Diffstat (limited to 'Source/cmLocalUnixMakefileGenerator2.h')
-rw-r--r--Source/cmLocalUnixMakefileGenerator2.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/Source/cmLocalUnixMakefileGenerator2.h b/Source/cmLocalUnixMakefileGenerator2.h
index af698dd..a4bb180 100644
--- a/Source/cmLocalUnixMakefileGenerator2.h
+++ b/Source/cmLocalUnixMakefileGenerator2.h
@@ -50,6 +50,9 @@ public:
/** Called from command-line hook to scan dependencies. */
static bool ScanDependencies(std::vector<std::string> const& args);
+ /** Called from command-line hook to check dependencies. */
+ static void CheckDependencies(const char* depCheck);
+
protected:
void GenerateMakefile();
@@ -57,6 +60,7 @@ protected:
void GenerateTargetRuleFile(const cmTarget& target);
void GenerateObjectRuleFile(const cmTarget& target,
const cmSourceFile& source);
+ std::string GenerateDependsMakeFile(const char* file);
void WriteMakeRule(std::ostream& os,
const char* comment,
const char* preEcho,
@@ -112,6 +116,10 @@ protected:
static bool ScanDependenciesC(const char* objFile, const char* srcFile,
std::vector<std::string> const& includes);
+ static void CheckDependencies(const char* dir, const char* file);
+ static void WriteEmptyDependMakeFile(const char* file,
+ const char* depMarkFileFull,
+ const char* depMakeFileFull);
private:
// Map from target name to build directory containing it for
// jump-and-build targets.
@@ -121,6 +129,9 @@ private:
std::string m_FilePath;
};
std::map<cmStdString, RemoteTarget> m_JumpAndBuild;
+
+ // List the files for which to check dependency integrity.
+ std::set<cmStdString> m_CheckDependFiles;
};
#endif