cmake: Replace recursive globbing with explicit globbing in folders
This commit is contained in:
1 file changed
+61
-17
+61
-17
@@ -32,21 +32,65 @@ endfunction()
|
|||||||
|
|
||||||
create_test_config()
|
create_test_config()
|
||||||
|
|
||||||
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/functional)
|
|
||||||
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/functional/data)
|
|
||||||
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/functional/mocks)
|
|
||||||
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/functional/test_framework)
|
|
||||||
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/functional/test_framework/crypto)
|
|
||||||
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/fuzz)
|
|
||||||
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/util)
|
|
||||||
|
|
||||||
file(GLOB_RECURSE functional_tests RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} functional/*)
|
function(create_test_directory_links)
|
||||||
foreach(script ${functional_tests} fuzz/test_runner.py)
|
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/functional)
|
||||||
if(CMAKE_HOST_WIN32)
|
file(GLOB functional
|
||||||
set(symlink)
|
LIST_DIRECTORIES FALSE
|
||||||
else()
|
RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
set(symlink SYMBOLIC)
|
functional/*.html
|
||||||
endif()
|
functional/*.py
|
||||||
file(CREATE_LINK ${CMAKE_CURRENT_SOURCE_DIR}/${script} ${CMAKE_CURRENT_BINARY_DIR}/${script} COPY_ON_ERROR ${symlink})
|
)
|
||||||
endforeach()
|
|
||||||
unset(functional_tests)
|
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/functional/data)
|
||||||
|
file(GLOB functional_data
|
||||||
|
LIST_DIRECTORIES FALSE
|
||||||
|
RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
|
functional/data/*.json
|
||||||
|
functional/data/*.py
|
||||||
|
)
|
||||||
|
|
||||||
|
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/functional/mocks)
|
||||||
|
file(GLOB functional_mocks
|
||||||
|
LIST_DIRECTORIES FALSE
|
||||||
|
RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
|
functional/mocks/*.py
|
||||||
|
)
|
||||||
|
|
||||||
|
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/functional/test_framework)
|
||||||
|
file(GLOB functional_test_framework
|
||||||
|
LIST_DIRECTORIES FALSE
|
||||||
|
RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
|
functional/test_framework/*.csv
|
||||||
|
functional/test_framework/*.py
|
||||||
|
)
|
||||||
|
|
||||||
|
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/functional/test_framework/crypto)
|
||||||
|
file(GLOB functional_test_framework_crypto
|
||||||
|
LIST_DIRECTORIES FALSE
|
||||||
|
RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
|
functional/test_framework/crypto/*.csv
|
||||||
|
functional/test_framework/crypto/*.py
|
||||||
|
)
|
||||||
|
|
||||||
|
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/fuzz)
|
||||||
|
set(files_to_link
|
||||||
|
${functional}
|
||||||
|
${functional_data}
|
||||||
|
${functional_mocks}
|
||||||
|
${functional_test_framework}
|
||||||
|
${functional_test_framework_crypto}
|
||||||
|
fuzz/test_runner.py
|
||||||
|
)
|
||||||
|
|
||||||
|
foreach(f IN LISTS files_to_link)
|
||||||
|
if(CMAKE_HOST_WIN32)
|
||||||
|
set(symlink)
|
||||||
|
else()
|
||||||
|
set(symlink SYMBOLIC)
|
||||||
|
endif()
|
||||||
|
file(CREATE_LINK ${CMAKE_CURRENT_SOURCE_DIR}/${f} ${CMAKE_CURRENT_BINARY_DIR}/${f} COPY_ON_ERROR ${symlink})
|
||||||
|
endforeach()
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
create_test_directory_links()
|
||||||
Reference in new issue
Block a user