Merge topic 'ExternalProject-revert-install'

771387523a ExternalProject: Restore driving install through build system

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Acked-by: Craig Scott <craig.scott@crascit.com>
Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !8279
This commit is contained in:
Brad King
2023-03-03 14:22:37 +00:00
committed by Kitware Robot
5 changed files with 18 additions and 5 deletions

View File

@@ -1857,11 +1857,7 @@ function(_ep_get_build_command
else()
set(cmd "${CMAKE_COMMAND}")
endif()
if(step STREQUAL "INSTALL")
set(args --install ".")
else()
set(args --build ".")
endif()
set(args --build ".")
get_property(_isMultiConfig GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
if(_isMultiConfig)
if (CMAKE_CFG_INTDIR AND
@@ -1883,6 +1879,9 @@ function(_ep_get_build_command
endif()
list(APPEND args --config ${config})
endif()
if(step STREQUAL "INSTALL")
list(APPEND args --target install)
endif()
# But for "TEST" drive the project with corresponding "ctest".
if("x${step}x" STREQUAL "xTESTx")
string(REGEX REPLACE "^(.*/)cmake([^/]*)$" "\\1ctest\\2" cmd "${cmd}")

View File

@@ -0,0 +1,2 @@
.*build command suppressed
.*always builds

View File

@@ -0,0 +1,7 @@
include(ExternalProject)
ExternalProject_Add(InstallBuilds
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/InstallBuilds
DOWNLOAD_COMMAND ""
BUILD_COMMAND "${CMAKE_COMMAND}" -E echo "build command suppressed"
)

View File

@@ -0,0 +1,4 @@
cmake_minimum_required(VERSION 3.24)
project(InstallBuilds NONE)
add_custom_target(always ALL COMMAND ${CMAKE_COMMAND} -E echo "always builds")
install(CODE "")

View File

@@ -147,6 +147,7 @@ endfunction()
__ep_test_with_build(MultiCommand)
set(RunCMake_TEST_OUTPUT_MERGE 1)
__ep_test_with_build(InstallBuilds)
__ep_test_with_build(PreserveEmptyArgs)
set(RunCMake_TEST_OUTPUT_MERGE 0)