Browse Source

Merge topic 'memcheck_pre_post_args'

c0756b6 Revert "CTest: fix pre and post test commands with spaces" (#13887)
Brad King 12 years ago
parent
commit
63728df6e5
2 changed files with 7 additions and 4 deletions
  1. 2 3
      Source/CTest/cmCTestTestHandler.cxx
  2. 5 1
      Tests/CTestTestMemcheck/CMakeLists.txt

+ 2 - 3
Source/CTest/cmCTestTestHandler.cxx

@@ -1302,10 +1302,9 @@ int cmCTestTestHandler::ExecuteCommands(std::vector<cmStdString>& vec)
   for ( it = vec.begin(); it != vec.end(); ++it )
     {
     int retVal = 0;
-    std::string cmd = cmSystemTools::ConvertToOutputPath(it->c_str());
-    cmCTestLog(this->CTest, HANDLER_VERBOSE_OUTPUT, "Run command: " << cmd
+    cmCTestLog(this->CTest, HANDLER_VERBOSE_OUTPUT, "Run command: " << *it
       << std::endl);
-    if ( !cmSystemTools::RunSingleCommand(cmd.c_str(), 0, &retVal, 0,
+    if ( !cmSystemTools::RunSingleCommand(it->c_str(), 0, &retVal, 0,
                                           cmSystemTools::OUTPUT_MERGE
         /*this->Verbose*/) || retVal != 0 )
       {

+ 5 - 1
Tests/CTestTestMemcheck/CMakeLists.txt

@@ -91,7 +91,11 @@ gen_mcnl_test(DummyPurifyNoLogfile "\${PSEUDO_PURIFY}")
 gen_mcnl_test(DummyValgrindNoLogfile "\${PSEUDO_VALGRIND}")
 gen_mcnl_test(DummyBCNoLogfile "\${PSEUDO_BC}")
 
-set(CTEST_EXTRA_CODE "set(CTEST_CUSTOM_PRE_MEMCHECK \"\${CTEST_MEMORYCHECK_COMMAND}\")\nset(CTEST_CUSTOM_POST_MEMCHECK \"\${CTEST_MEMORYCHECK_COMMAND}\")")
+set(CTEST_EXTRA_CODE "string(REPLACE \" \" \"\\\\ \" PRE_POST_COMMAND \"\${CTEST_MEMORYCHECK_COMMAND}\")
+
+set(CTEST_CUSTOM_PRE_MEMCHECK \"\${PRE_POST_COMMAND} pre command\")
+set(CTEST_CUSTOM_POST_MEMCHECK \"\${PRE_POST_COMMAND} post command \")
+")
 gen_mc_test(DummyValgrindPrePost "\${PSEUDO_VALGRIND}")
 
 set(CTEST_EXTRA_CODE "set(CTEST_CUSTOM_POST_MEMCHECK \"\${ERROR_COMMAND}\")")