summaryrefslogtreecommitdiffstats
path: root/Source/CTest
diff options
context:
space:
mode:
Diffstat (limited to 'Source/CTest')
-rw-r--r--Source/CTest/cmCTestScriptHandler.cxx12
-rw-r--r--Source/CTest/cmCTestScriptHandler.h7
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;