summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNils Gladitz <nilsgladitz@gmail.com>2014-02-25 10:25:41 (GMT)
committerBrad King <brad.king@kitware.com>2014-02-25 16:23:57 (GMT)
commit47702b8d49d686d4db2c66b6abd872517480d718 (patch)
tree2c8fb79dd7ec30812c9d60612e854b9f1676d0ae
parentf8ccb6d0387a8d116584d1ea8c43cac56679ec71 (diff)
downloadCMake-47702b8d49d686d4db2c66b6abd872517480d718.zip
CMake-47702b8d49d686d4db2c66b6abd872517480d718.tar.gz
CMake-47702b8d49d686d4db2c66b6abd872517480d718.tar.bz2
CTest: exclude /showIncludes notes when scraping logs
My last related commit e5e3f3d4 (CTest: filter /showIncludes output from ninja compile launcher, 2013-12-01) filtered /showIncludes messages from the generated xml output but they also need to be filtered in ScrapeLog(). Otherwise they are being detected as warnings when using compilers withs english diagnostics.
-rw-r--r--Source/CTest/cmCTestLaunch.cxx19
-rw-r--r--Source/CTest/cmCTestLaunch.h1
2 files changed, 18 insertions, 2 deletions
diff --git a/Source/CTest/cmCTestLaunch.cxx b/Source/CTest/cmCTestLaunch.cxx
index 7d9c034..cd3bd57 100644
--- a/Source/CTest/cmCTestLaunch.cxx
+++ b/Source/CTest/cmCTestLaunch.cxx
@@ -587,8 +587,7 @@ void cmCTestLaunch::DumpFileToXML(std::ostream& fxml,
while(cmSystemTools::GetLineFromStream(fin, line))
{
- if(OptionFilterPrefix.size() && cmSystemTools::StringStartsWith(
- line.c_str(), OptionFilterPrefix.c_str()))
+ if(MatchesFilterPrefix(line))
{
continue;
}
@@ -676,6 +675,11 @@ bool cmCTestLaunch::ScrapeLog(std::string const& fname)
std::string line;
while(cmSystemTools::GetLineFromStream(fin, line))
{
+ if(MatchesFilterPrefix(line))
+ {
+ continue;
+ }
+
if(this->Match(line.c_str(), this->RegexWarning) &&
!this->Match(line.c_str(), this->RegexWarningSuppress))
{
@@ -701,6 +705,17 @@ bool cmCTestLaunch::Match(std::string const& line,
}
//----------------------------------------------------------------------------
+bool cmCTestLaunch::MatchesFilterPrefix(std::string const& line) const
+{
+ if(this->OptionFilterPrefix.size() && cmSystemTools::StringStartsWith(
+ line.c_str(), this->OptionFilterPrefix.c_str()))
+ {
+ return true;
+ }
+ return false;
+}
+
+//----------------------------------------------------------------------------
int cmCTestLaunch::Main(int argc, const char* const argv[])
{
if(argc == 2)
diff --git a/Source/CTest/cmCTestLaunch.h b/Source/CTest/cmCTestLaunch.h
index a86a9df..f680d19 100644
--- a/Source/CTest/cmCTestLaunch.h
+++ b/Source/CTest/cmCTestLaunch.h
@@ -88,6 +88,7 @@ private:
bool ScrapeLog(std::string const& fname);
bool Match(std::string const& line,
std::vector<cmsys::RegularExpression>& regexps);
+ bool MatchesFilterPrefix(std::string const& line) const;
// Methods to generate the xml fragment.
void WriteXML();