Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
CMake
CMake
Commits
eb3857ce
Commit
eb3857ce
authored
May 02, 2005
by
Andy Cedilnik
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ENH: Make ctest build command work
parent
e4af567b
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
41 additions
and
0 deletions
+41
-0
CTestConfig.cmake
CTestConfig.cmake
+1
-0
Source/CTest/cmCTestBuildCommand.cxx
Source/CTest/cmCTestBuildCommand.cxx
+39
-0
Source/CTest/cmCTestScriptHandler.cxx
Source/CTest/cmCTestScriptHandler.cxx
+1
-0
No files found.
CTestConfig.cmake
View file @
eb3857ce
SET
(
CTEST_PROJECT_NAME
"CMake"
)
SET
(
CTEST_NIGHTLY_START_TIME
"21:00:00 EDT"
)
SET
(
CTEST_DROP_SITE
"public.kitware.com"
)
SET
(
CTEST_DROP_LOCATION
"/cgi-bin/HTTPUploadDartFile.cgi"
)
...
...
Source/CTest/cmCTestBuildCommand.cxx
View file @
eb3857ce
...
...
@@ -18,6 +18,8 @@
#include "cmCTest.h"
#include "cmCTestGenericHandler.h"
#include "cmake.h"
#include "cmGlobalGenerator.h"
bool
cmCTestBuildCommand
::
InitialPass
(
std
::
vector
<
std
::
string
>
const
&
args
)
...
...
@@ -38,6 +40,43 @@ bool cmCTestBuildCommand::InitialPass(
this
->
SetError
(
"internal CTest error. Cannot instantiate build handler"
);
return
false
;
}
const
char
*
ctestBuildCommand
=
m_Makefile
->
GetDefinition
(
"CTEST_BUILD_COMMAND"
);
if
(
ctestBuildCommand
&&
*
ctestBuildCommand
)
{
m_CTest
->
SetDartConfiguration
(
"MakeCommand"
,
ctestBuildCommand
);
}
else
{
const
char
*
cmakeGeneratorName
=
m_Makefile
->
GetDefinition
(
"CTEST_CMAKE_GENERATOR"
);
const
char
*
cmakeProjectName
=
m_Makefile
->
GetDefinition
(
"CTEST_PROJECT_NAME"
);
const
char
*
cmakeBuildConfiguration
=
m_Makefile
->
GetDefinition
(
"CTEST_BUILD_CONFIGURATION"
);
if
(
cmakeGeneratorName
&&
*
cmakeGeneratorName
&&
cmakeProjectName
&&
*
cmakeProjectName
)
{
if
(
!
cmakeBuildConfiguration
)
{
cmakeBuildConfiguration
=
"Release"
;
}
cmGlobalGenerator
*
gen
=
m_Makefile
->
GetCMakeInstance
()
->
CreateGlobalGenerator
(
cmakeGeneratorName
);
gen
->
FindMakeProgram
(
m_Makefile
);
const
char
*
cmakeMakeProgram
=
m_Makefile
->
GetDefinition
(
"CMAKE_MAKE_PROGRAM"
);
std
::
cout
<<
"CMake Make program is: "
<<
cmakeMakeProgram
<<
std
::
endl
;
std
::
string
buildCommand
=
gen
->
GenerateBuildCommand
(
cmakeMakeProgram
,
cmakeProjectName
,
0
,
cmakeBuildConfiguration
,
true
);
m_CTest
->
SetDartConfiguration
(
"MakeCommand"
,
buildCommand
.
c_str
());
}
else
{
cmOStringStream
ostr
;
ostr
<<
"CTEST_BUILD_COMMAND or CTEST_CMAKE_GENERATOR not specified. Please specify the CTEST_CMAKE_GENERATOR if this is a CMake project, or specify the CTEST_BUILD_COMMAND for cmake or any other project."
;
this
->
SetError
(
ostr
.
str
().
c_str
());
return
false
;
}
}
int
res
=
handler
->
ProcessHandler
();
cmOStringStream
str
;
str
<<
res
;
...
...
Source/CTest/cmCTestScriptHandler.cxx
View file @
eb3857ce
...
...
@@ -202,6 +202,7 @@ int cmCTestScriptHandler::ReadInScript(const std::string& total_script_arg)
delete
m_LocalGenerator
;
}
m_CMake
=
new
cmake
;
m_CMake
->
AddCMakePaths
(
m_CTest
->
GetCTestExecutable
());
m_GlobalGenerator
=
new
cmGlobalGenerator
;
m_GlobalGenerator
->
SetCMakeInstance
(
m_CMake
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment