Подтвердить что ты не робот

Cmake копировать все файлы с заданным расширением в каталог вывода

Я видел, что могу использовать эту команду, чтобы скопировать каталог с помощью cmake:

file(COPY "myDir" DESTINATION "myDestination")

(from этот пост)

Моя проблема в том, что я не хочу копировать все myDir, но только файлы .h, которые там есть. Я пробовал с помощью

file(COPY "myDir/*.h" DESTINATION "myDestination")

но я получаю следующую ошибку:

CMake Error at CMakeLists.txt:23 (file):
  file COPY cannot find
  "/full/path/to/myDIR/*.h".

Как фильтровать файлы, которые я хочу скопировать в папку назначения?

4b9b3361

Ответ 1

Я нашел решение самостоятельно:

file(GLOB MY_PUBLIC_HEADERS
  "myDir/*.h"
)
file(COPY ${MY_PUBLIC_HEADERS} DESTINATION myDestination)

Ответ 2

это также работает для меня:

install(DIRECTORY "myDir/" 
        DESTINATION "myDestination" 
        FILES_MATCHING PATTERN "*.h" )