diff options
Diffstat (limited to 'Source/CTest')
-rw-r--r-- | Source/CTest/cmCTestScriptHandler.cxx | 12 | ||||
-rw-r--r-- | Source/CTest/cmCTestScriptHandler.h | 7 |
2 files changed, 11 insertions, 8 deletions
diff --git a/Source/CTest/cmCTestScriptHandler.cxx b/Source/CTest/cmCTestScriptHandler.cxx index 9c2ac29..7f0c2eb 100644 --- a/Source/CTest/cmCTestScriptHandler.cxx +++ b/Source/CTest/cmCTestScriptHandler.cxx @@ -95,7 +95,7 @@ void cmCTestScriptHandler::AddConfigurationScript(const char *script) //---------------------------------------------------------------------- // the generic entry point for handling scripts, this routine will run all // the scripts provides a -S arguments -int cmCTestScriptHandler::RunConfigurationScript() +int cmCTestScriptHandler::RunConfigurationScript(cmCTest* ctest) { int res = 0; std::vector<cmStdString>::iterator it; @@ -104,7 +104,7 @@ int cmCTestScriptHandler::RunConfigurationScript() it ++ ) { // for each script run it - res += this->RunConfigurationScript( + res += this->RunConfigurationScript(ctest, cmSystemTools::CollapseFullPath(it->c_str())); } return res; @@ -114,7 +114,7 @@ int cmCTestScriptHandler::RunConfigurationScript() //---------------------------------------------------------------------- // this sets up some variables for thew script to use, creates the required // cmake instance and generators, and then reads in the script -int cmCTestScriptHandler::ReadInScript(const std::string& total_script_arg) +int cmCTestScriptHandler::ReadInScript(cmCTest* ctest, const std::string& total_script_arg) { // if the argument has a , in it then it needs to be broken into the fist // argument (which is the script) and the second argument which will be @@ -156,6 +156,8 @@ int cmCTestScriptHandler::ReadInScript(const std::string& total_script_arg) m_LocalGenerator->GetMakefile()->AddDefinition("CTEST_SCRIPT_NAME", cmSystemTools::GetFilenameName( script).c_str()); + m_LocalGenerator->GetMakefile()->AddDefinition("CTEST_EXECUTABLE_NAME", + ctest->GetCTestExecutable()); // add the script arg if defined if (script_arg.size()) { @@ -277,13 +279,13 @@ void cmCTestScriptHandler::LocalSleep(unsigned int secondsToWait) //---------------------------------------------------------------------- // run a specific script -int cmCTestScriptHandler::RunConfigurationScript( +int cmCTestScriptHandler::RunConfigurationScript(cmCTest* ctest, const std::string& total_script_arg) { int result; // read in the script - result = this->ReadInScript(total_script_arg); + result = this->ReadInScript(ctest, total_script_arg); if (result) { return result; diff --git a/Source/CTest/cmCTestScriptHandler.h b/Source/CTest/cmCTestScriptHandler.h index d21302d..dc27e1f 100644 --- a/Source/CTest/cmCTestScriptHandler.h +++ b/Source/CTest/cmCTestScriptHandler.h @@ -26,6 +26,7 @@ class cmMakefile; class cmLocalGenerator; class cmGlobalGenerator; class cmake; +class cmCTest; /** \class cmCTestScriptHandler * \brief A class that handles ctest -S invocations @@ -74,7 +75,7 @@ public: /** * Run a dashboard using a specified confiuration script */ - int RunConfigurationScript(); + int RunConfigurationScript(cmCTest* ctest); /* * If verbose then more informaiton is printed out @@ -86,7 +87,7 @@ public: private: // reads in a script - int ReadInScript(const std::string& total_script_arg); + int ReadInScript(cmCTest* ctest, const std::string& total_script_arg); // extract vars from the script to set ivars int ExtractVariables(); @@ -103,7 +104,7 @@ private: int BackupDirectories(); void RestoreBackupDirectories(); - int RunConfigurationScript(const std::string& script); + int RunConfigurationScript(cmCTest* ctest, const std::string& script); int RunConfigurationDashboard(); std::vector<cmStdString> m_ConfigurationScripts; |