diff options
author | Andy Cedilnik <andy.cedilnik@kitware.com> | 2005-06-17 17:04:56 (GMT) |
---|---|---|
committer | Andy Cedilnik <andy.cedilnik@kitware.com> | 2005-06-17 17:04:56 (GMT) |
commit | d9dc9b54a62c20be2cf42ce050780e1b924e412c (patch) | |
tree | fbc9478d4a3559ec8c6ee5c61a008e031c982f99 /Source/CTest/cmCTestBuildHandler.cxx | |
parent | d3239ac68f4cc74e5f5c7cecf876f07262bbf57e (diff) | |
download | CMake-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.cxx | 58 |
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) |