diff --git a/cmake/Utils.cmake b/cmake/Utils.cmake new file mode 100644 index 0000000..c10f377 --- /dev/null +++ b/cmake/Utils.cmake @@ -0,0 +1,10 @@ +function(FindCmakeConfigDirs BASE_DIR OUTPUT_NAME) + file(GLOB_RECURSE ALL_CONFIGS "${BASE_DIR}/*[Cc]onfig.cmake") + set(PACKAGE_SUB_DIRS "") + foreach(CONF ${ALL_CONFIGS}) + get_filename_component(DIR_NAME "${CONF}" DIRECTORY) + list(APPEND PACKAGE_SUB_DIRS "${DIR_NAME}") + endforeach() + list(REMOVE_DUPLICATES PACKAGE_SUB_DIRS) + set(${OUTPUT_NAME} ${PACKAGE_SUB_DIRS} PARENT_SCOPE) +endfunction() \ No newline at end of file