mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-06 13:51:33 -06:00
@@ -1934,8 +1934,10 @@ function(_ep_get_build_command
|
||||
set(args)
|
||||
_ep_get_configure_command_id(${name} cfg_cmd_id)
|
||||
if(cfg_cmd_id STREQUAL "cmake")
|
||||
# CMake project. Select build command based on generator.
|
||||
get_target_property(cmake_generator ${name} _EP_CMAKE_GENERATOR)
|
||||
# Adding a CMake project as an External Project. Select command based on generator
|
||||
get_property(cmake_generator TARGET ${name} PROPERTY _EP_CMAKE_GENERATOR)
|
||||
# cmake_generator is the CMake generator of the ExternalProject target being added
|
||||
# CMAKE_GENERATOR is the CMake generator of the Current Project
|
||||
if("${CMAKE_GENERATOR}" MATCHES "Make" AND
|
||||
("${cmake_generator}" MATCHES "Make" OR NOT cmake_generator))
|
||||
# The project uses the same Makefile generator. Use recursive make.
|
||||
@@ -1948,6 +1950,11 @@ function(_ep_get_build_command
|
||||
endif()
|
||||
else()
|
||||
# Drive the project with "cmake --build".
|
||||
if(NOT cmake_generator)
|
||||
# If there is no CMake Generator defined on the ExternalProject,
|
||||
# use the same Generator as the current project
|
||||
set(cmake_generator "${CMAKE_GENERATOR}")
|
||||
endif()
|
||||
get_target_property(cmake_command ${name} _EP_CMAKE_COMMAND)
|
||||
if(cmake_command)
|
||||
set(cmd "${cmake_command}")
|
||||
@@ -1977,7 +1984,11 @@ function(_ep_get_build_command
|
||||
list(APPEND args --config ${config})
|
||||
endif()
|
||||
if(step STREQUAL "INSTALL")
|
||||
list(APPEND args --target install)
|
||||
if("${cmake_generator}" MATCHES "Green Hills MULTI")
|
||||
list(APPEND args --target INSTALL)
|
||||
else()
|
||||
list(APPEND args --target install)
|
||||
endif()
|
||||
endif()
|
||||
# But for "TEST" drive the project with corresponding "ctest".
|
||||
if("x${step}x" STREQUAL "xTESTx")
|
||||
|
||||
Reference in New Issue
Block a user