summaryrefslogtreecommitdiffstats
path: root/Source/CTest/cmCTestMemCheckHandler.h
diff options
context:
space:
mode:
authorRolf Eike Beer <eike@sf-mail.de>2013-08-07 20:25:48 (GMT)
committerRolf Eike Beer <eike@sf-mail.de>2013-08-07 20:25:48 (GMT)
commit6f9aaad150f769cd73df408514cf5dc42c020074 (patch)
tree3b4f2b157d40db6b8d6ea5af708e01c11cadb060 /Source/CTest/cmCTestMemCheckHandler.h
parent7c9f0c664f5782c09c686b8e51fe50245463914b (diff)
downloadCMake-6f9aaad150f769cd73df408514cf5dc42c020074.zip
CMake-6f9aaad150f769cd73df408514cf5dc42c020074.tar.gz
CMake-6f9aaad150f769cd73df408514cf5dc42c020074.tar.bz2
CTest: create one output file per memcheck (#14303)
The output file used for memory checker runs must be unique for every test run in parallel, so simply make them unique for every test run. Simply use the test index to avoid collisions.
Diffstat (limited to 'Source/CTest/cmCTestMemCheckHandler.h')
-rw-r--r--Source/CTest/cmCTestMemCheckHandler.h15
1 files changed, 10 insertions, 5 deletions
diff --git a/Source/CTest/cmCTestMemCheckHandler.h b/Source/CTest/cmCTestMemCheckHandler.h
index 0a8c1b3..040d2e0 100644
--- a/Source/CTest/cmCTestMemCheckHandler.h
+++ b/Source/CTest/cmCTestMemCheckHandler.h
@@ -37,7 +37,7 @@ public:
protected:
virtual int PreProcessHandler();
virtual int PostProcessHandler();
- virtual void GenerateTestCommand(std::vector<std::string>& args);
+ virtual void GenerateTestCommand(std::vector<std::string>& args, int test);
private:
@@ -89,6 +89,7 @@ private:
std::string BoundsCheckerDPBDFile;
std::string BoundsCheckerXMLFile;
std::string MemoryTester;
+ std::vector<cmStdString> MemoryTesterDynamicOptions;
std::vector<cmStdString> MemoryTesterOptions;
int MemoryTesterStyle;
std::string MemoryTesterOutputFile;
@@ -117,12 +118,16 @@ private:
bool ProcessMemCheckBoundsCheckerOutput(const std::string& str,
std::string& log, int* results);
- void PostProcessPurifyTest(cmCTestTestResult& res);
- void PostProcessBoundsCheckerTest(cmCTestTestResult& res);
- void PostProcessValgrindTest(cmCTestTestResult& res);
+ void PostProcessPurifyTest(cmCTestTestResult& res, int test);
+ void PostProcessBoundsCheckerTest(cmCTestTestResult& res, int test);
+ void PostProcessValgrindTest(cmCTestTestResult& res, int test);
///! append MemoryTesterOutputFile to the test log
- void appendMemTesterOutput(cmCTestTestHandler::cmCTestTestResult& res);
+ void appendMemTesterOutput(cmCTestTestHandler::cmCTestTestResult& res,
+ int test);
+
+ ///! generate the output filename for the given test index
+ cmStdString testOutputFileName(int test);
};
#endif