mirror of
https://github.com/Kitware/CMake.git
synced 2025-10-19 02:17:27 +08:00
CMAKE_ROLE: Fix value for ctest --build-and-test
--build-and-test builds a CMake project, so CMAKE_ROLE should be PROJECT. Fix this and add a test case.
This commit is contained in:
@@ -164,7 +164,7 @@ int cmCTestBuildAndTestHandler::RunCMakeAndTest(std::string* outstring)
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
cmake cm(cmake::RoleProject, cmState::CTest);
|
cmake cm(cmake::RoleProject, cmState::Project);
|
||||||
cm.SetHomeDirectory("");
|
cm.SetHomeDirectory("");
|
||||||
cm.SetHomeOutputDirectory("");
|
cm.SetHomeOutputDirectory("");
|
||||||
std::string cmakeOutString;
|
std::string cmakeOutString;
|
||||||
|
@@ -0,0 +1,10 @@
|
|||||||
|
cmake_minimum_required(VERSION 3.12)
|
||||||
|
project(CMakeRoleGlobalPropertyBuildAndTest NONE)
|
||||||
|
include(CTest)
|
||||||
|
|
||||||
|
get_property(role GLOBAL PROPERTY CMAKE_ROLE)
|
||||||
|
if(NOT role STREQUAL "PROJECT")
|
||||||
|
message(SEND_ERROR "CMAKE_ROLE property is \"${role}\", should be \"PROJECT\"")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
add_test(NAME RunCMakeVersion COMMAND "${CMAKE_COMMAND}" --version)
|
@@ -1,4 +1,4 @@
|
|||||||
cmake_minimum_required(VERSION 3.1)
|
cmake_minimum_required(VERSION 3.12)
|
||||||
project(CTestStart@CASE_NAME@ NONE)
|
project(CMakeRoleGlobalProperty@CASE_NAME@ NONE)
|
||||||
include(CTest)
|
include(CTest)
|
||||||
add_test(NAME RunCMakeVersion COMMAND "${CMAKE_COMMAND}" --version)
|
add_test(NAME RunCMakeVersion COMMAND "${CMAKE_COMMAND}" --version)
|
||||||
|
@@ -5,3 +5,10 @@ run_cmake(Project)
|
|||||||
run_cmake_command(Script "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_LIST_DIR}/Script.cmake")
|
run_cmake_command(Script "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_LIST_DIR}/Script.cmake")
|
||||||
run_cmake_command(FindPackage "${CMAKE_COMMAND}" --find-package -DNAME=DummyPackage -DCOMPILER_ID=GNU -DLANGUAGE=CXX -DMODE=EXIST "-DCMAKE_MODULE_PATH=${CMAKE_CURRENT_LIST_DIR}")
|
run_cmake_command(FindPackage "${CMAKE_COMMAND}" --find-package -DNAME=DummyPackage -DCOMPILER_ID=GNU -DLANGUAGE=CXX -DMODE=EXIST "-DCMAKE_MODULE_PATH=${CMAKE_CURRENT_LIST_DIR}")
|
||||||
run_ctest(CTest)
|
run_ctest(CTest)
|
||||||
|
run_cmake_command(BuildAndTest "${CMAKE_CTEST_COMMAND}"
|
||||||
|
--build-and-test
|
||||||
|
"${RunCMake_SOURCE_DIR}/BuildAndTest"
|
||||||
|
"${RunCMake_BINARY_DIR}/BuildAndTest-build"
|
||||||
|
--build-project CMakeRoleGlobalPropertyBuildAndTest
|
||||||
|
--build-generator "${RunCMake_GENERATOR}"
|
||||||
|
)
|
||||||
|
Reference in New Issue
Block a user