Add psemek_glob_resources macro

This commit is contained in:
Nikita Lisitsa 2022-02-06 13:51:41 +03:00
parent 681bc5cc25
commit e7ede3e39b

View file

@ -39,6 +39,23 @@ function(psemek_add_resources_impl MODE TARGET)
endwhile()
endfunction()
function(psemek_glob_resources_impl MODE TARGET PATH PREFIX)
set(RESOURCES_LIST)
get_filename_component(PATH "${PATH}" ABSOLUTE)
file(GLOB_RECURSE INPUT_FILES LIST_DIRECTORIES false RELATIVE "${PATH}" "${PATH}/*")
foreach(INPUT_FILE ${INPUT_FILES})
set(RESOURCE_FILE "${PATH}/${INPUT_FILE}")
set(RESOURCE_NAME "${INPUT_FILE}")
string(REPLACE "." "_" RESOURCE_NAME "${RESOURCE_NAME}")
list(APPEND RESOURCES_LIST "${RESOURCE_FILE}" "${PREFIX}/${RESOURCE_NAME}")
endforeach()
psemek_add_resources_impl(${MODE} ${TARGET} ${RESOURCES_LIST})
endfunction()
function(psemek_add_resources)
psemek_add_resources_impl(PRIVATE ${ARGN})
endfunction()
@ -46,3 +63,11 @@ endfunction()
function(psemek_add_public_resources)
psemek_add_resources_impl(PUBLIC ${ARGN})
endfunction()
function(psemek_glob_resources)
psemek_glob_resources_impl(PRIVATE ${ARGN})
endfunction()
function(psemek_glob_public_resources)
psemek_add_resources_impl(PUBLIC ${ARGN})
endfunction()