summaryrefslogtreecommitdiffstats
path: root/Source/CTest/cmCTestBuildHandler.cxx
diff options
context:
space:
mode:
authorAndy Cedilnik <andy.cedilnik@kitware.com>2005-06-17 17:04:56 (GMT)
committerAndy Cedilnik <andy.cedilnik@kitware.com>2005-06-17 17:04:56 (GMT)
commitd9dc9b54a62c20be2cf42ce050780e1b924e412c (patch)
treefbc9478d4a3559ec8c6ee5c61a008e031c982f99 /Source/CTest/cmCTestBuildHandler.cxx
parentd3239ac68f4cc74e5f5c7cecf876f07262bbf57e (diff)
downloadCMake-d9dc9b54a62c20be2cf42ce050780e1b924e412c.zip
CMake-d9dc9b54a62c20be2cf42ce050780e1b924e412c.tar.gz
CMake-d9dc9b54a62c20be2cf42ce050780e1b924e412c.tar.bz2
ENH: Add superclass for all commands and handlers. Improve handlers to have initialization code, and start initializing ctest when start is invoked
Diffstat (limited to 'Source/CTest/cmCTestBuildHandler.cxx')
-rw-r--r--Source/CTest/cmCTestBuildHandler.cxx58
1 files changed, 58 insertions, 0 deletions
diff --git a/Source/CTest/cmCTestBuildHandler.cxx b/Source/CTest/cmCTestBuildHandler.cxx
index ca9d54b..afae26b 100644
--- a/Source/CTest/cmCTestBuildHandler.cxx
+++ b/Source/CTest/cmCTestBuildHandler.cxx
@@ -186,6 +186,64 @@ cmCTestBuildHandler::cmCTestBuildHandler()
}
}
+//----------------------------------------------------------------------
+void cmCTestBuildHandler::Initialize()
+{
+ m_StartBuild = "";
+ m_EndBuild = "";
+ m_CustomErrorMatches.clear();
+ m_CustomErrorExceptions.clear();
+ m_CustomWarningMatches.clear();
+ m_CustomWarningExceptions.clear();
+ m_ErrorWarningFileLineRegex.clear();
+
+ m_ErrorMatchRegex.clear();
+ m_ErrorExceptionRegex.clear();
+ m_WarningMatchRegex.clear();
+ m_WarningExceptionRegex.clear();
+ m_BuildProcessingQueue.clear();
+ m_BuildProcessingQueueLocation = m_BuildProcessingQueue.end();
+ m_BuildOutputLogSize = 0;
+ m_CurrentProcessingLine.clear();
+
+ m_SimplifySourceDir = "";
+ m_SimplifyBuildDir = "";
+ m_OutputLineCounter = 0;
+ m_ErrorsAndWarnings.clear();
+ m_LastErrorOrWarning = m_ErrorsAndWarnings.end();
+ m_PostContextCount = 0;
+ m_MaxPreContext = 6;
+ m_MaxPostContext = 6;
+ m_PreContext.clear();
+
+ m_TotalErrors = 0;
+ m_TotalWarnings = 0;
+ m_LastTickChar = 0;
+
+ m_ErrorQuotaReached = false;
+ m_WarningQuotaReached = false;
+
+ m_MaxErrors = 50;
+ m_MaxWarnings = 50;
+
+ int cc;
+ for ( cc = 0; cmCTestWarningErrorFileLine[cc].m_RegularExpressionString; ++ cc )
+ {
+ cmCTestBuildHandler::cmCTestCompileErrorWarningRex r;
+ if ( r.m_RegularExpression.compile(
+ cmCTestWarningErrorFileLine[cc].m_RegularExpressionString) )
+ {
+ r.m_FileIndex = cmCTestWarningErrorFileLine[cc].m_FileIndex;
+ r.m_LineIndex = cmCTestWarningErrorFileLine[cc].m_LineIndex;
+ m_ErrorWarningFileLineRegex.push_back(r);
+ }
+ else
+ {
+ cmCTestLog(m_CTest, ERROR_MESSAGE, "Problem Compiling regular expression: "
+ << cmCTestWarningErrorFileLine[cc].m_RegularExpressionString << std::endl);
+ }
+ }
+}
//----------------------------------------------------------------------
void cmCTestBuildHandler::PopulateCustomVectors(cmMakefile *mf)