2 # install all files matching certain wildcards below ${LMMS_DATA_DIR}/<subdir>
6 # INSTALL_DATA_SUBDIRS("samples" "*.ogg;*.wav;*.flac")
8 # Copyright (c) 2008 Tobias Doerffel
13 MACRO(LIST_CONTAINS var value)
15 FOREACH (value2 ${ARGN})
16 IF (${value} STREQUAL ${value2})
18 ENDIF (${value} STREQUAL ${value2})
20 ENDMACRO(LIST_CONTAINS)
23 MACRO(INSTALL_DATA_SUBDIRS _subdir _wildcards)
24 FOREACH(_wildcard ${_wildcards})
25 FILE(GLOB_RECURSE files ${_wildcard})
28 FOREACH(_item ${files})
29 GET_FILENAME_COMPONENT(_file "${_item}" PATH)
30 STRING(REPLACE "${CMAKE_CURRENT_SOURCE_DIR}/" "" _file "${_file}")
31 LIST_CONTAINS(contains _file ${SUBDIRS})
33 LIST(APPEND SUBDIRS "${_file}")
35 ENDFOREACH(_item ${files})
37 FOREACH(_item ${SUBDIRS})
38 FILE(GLOB files "${_item}/${_wildcard}")
39 FOREACH(_file ${files})
40 INSTALL(FILES "${_file}" DESTINATION "${LMMS_DATA_DIR}/${_subdir}/${_item}/")
41 ENDFOREACH(_file ${files})
42 ENDFOREACH(_item ${SUBDIRS})
43 ENDFOREACH(_wildcard ${_wildcards})
44 ENDMACRO(INSTALL_DATA_SUBDIRS)