Replace package_library_headers with simpler implementation
This commit is contained in:
parent
2f3833f7ef
commit
dd329a0ff6
@ -19,7 +19,7 @@ function(set_artifact_dir path)
|
|||||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${path}/bin" PARENT_SCOPE)
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${path}/bin" PARENT_SCOPE)
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
function(package_library_headers LibraryTarget)
|
function(package_library_headers LibraryTarget HeadersPath)
|
||||||
if (NOT DEFINED ${PROJECT_NAME}_INCLUDE_OUTPUT_DIR)
|
if (NOT DEFINED ${PROJECT_NAME}_INCLUDE_OUTPUT_DIR)
|
||||||
message(FATAL_ERROR "Before calling package_library_headers, set the artifact directory using set_artifact_dir()")
|
message(FATAL_ERROR "Before calling package_library_headers, set the artifact directory using set_artifact_dir()")
|
||||||
endif()
|
endif()
|
||||||
@ -30,38 +30,10 @@ function(package_library_headers LibraryTarget)
|
|||||||
|
|
||||||
# Create a list to hold custom commands
|
# Create a list to hold custom commands
|
||||||
set(custom_commands
|
set(custom_commands
|
||||||
COMMAND ${CMAKE_COMMAND} -E make_directory ${output_dir}/${LibraryTarget} )
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${output_dir} )
|
||||||
|
list(APPEND custom_commands
|
||||||
set(is_glob false)
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${HeadersPath} ${output_dir}/${LibraryTarget}
|
||||||
# Iterate over each argument to copy them
|
)
|
||||||
foreach(item IN LISTS ARGN)
|
|
||||||
if (IS_DIRECTORY ${item})
|
|
||||||
get_filename_component(item_name ${item} NAME)
|
|
||||||
list(APPEND custom_commands
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_directory ${item} ${output_dir}/${LibraryTarget}/${item_name}
|
|
||||||
)
|
|
||||||
else()
|
|
||||||
if (${is_glob})
|
|
||||||
file(GLOB glob_files ${item})
|
|
||||||
list(APPEND expanded_items ${glob_files})
|
|
||||||
#message(STATUS "glob_files" ${glob_files})
|
|
||||||
set(is_glob false)
|
|
||||||
foreach(expanded IN LISTS expanded_items)
|
|
||||||
get_filename_component(item_name ${expanded} NAME)
|
|
||||||
list(APPEND custom_commands
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${expanded} ${output_dir}/${LibraryTarget}/${item_name}
|
|
||||||
)
|
|
||||||
endforeach()
|
|
||||||
elseif (item STREQUAL "GLOB")
|
|
||||||
set(is_glob true)
|
|
||||||
else()
|
|
||||||
get_filename_component(item_name ${item} NAME)
|
|
||||||
list(APPEND custom_commands
|
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy ${item} ${output_dir}/${LibraryTarget}/${item_name}
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
# Create the target to copy directories and files
|
# Create the target to copy directories and files
|
||||||
add_custom_target(${target_name} ALL
|
add_custom_target(${target_name} ALL
|
||||||
|
Loading…
Reference in New Issue
Block a user