mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-12-18 04:12:19 +00:00
GLOB with CONFIGURE_DEPENDS
Globbing generally misses to pick up files which were added/deleted after CMake's configure. This is a nuissance but can be alleviated using CONFIGURE_DEPENDS (available since CMake 3.12) which adds a check for new/deleted files before each compile and - if necessary - restarts the configuration. On my system, the check takes < 0.1 sec. (Side note: CONFIGURE_DEPENDS is not guaranteed to work accross all generators, but at least it works for Ninja which everyone @CH seems to use.)
This commit is contained in:
parent
30a01506ed
commit
6ce8947417
@ -1,5 +1,5 @@
|
|||||||
macro(add_glob cur_list)
|
macro(add_glob cur_list)
|
||||||
file(GLOB __tmp RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${ARGN})
|
file(GLOB __tmp CONFIGURE_DEPENDS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${ARGN})
|
||||||
list(APPEND ${cur_list} ${__tmp})
|
list(APPEND ${cur_list} ${__tmp})
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
|
@ -560,7 +560,7 @@ include ("${ClickHouse_SOURCE_DIR}/cmake/add_check.cmake")
|
|||||||
if (ENABLE_TESTS)
|
if (ENABLE_TESTS)
|
||||||
macro (grep_gtest_sources BASE_DIR DST_VAR)
|
macro (grep_gtest_sources BASE_DIR DST_VAR)
|
||||||
# Cold match files that are not in tests/ directories
|
# Cold match files that are not in tests/ directories
|
||||||
file(GLOB_RECURSE "${DST_VAR}" RELATIVE "${BASE_DIR}" "gtest*.cpp")
|
file(GLOB_RECURSE "${DST_VAR}" CONFIGURE_DEPENDS RELATIVE "${BASE_DIR}" "gtest*.cpp")
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
# attach all dbms gtest sources
|
# attach all dbms gtest sources
|
||||||
|
Loading…
Reference in New Issue
Block a user