У меня есть проект C++ с исходными файлами (файлы .cpp и .h) в каталоге с именем src и его подкаталогами. Я хочу после компиляции моего проекта скопировать все файлы заголовков из этой исходной папки в другой каталог, сохранив структуру папок src.
Я попытался скопировать эти файлы с помощью команд после сборки:
postbuildcommands
{
"{COPY} src/*.h include"
}
а также
postbuildcommands
{
"{COPY} src/**.h include"
}
Но они копируют только файлы .h непосредственно в src, а не в подкаталоги. Например, это
src
+-- a.h
+-- a.cpp
+-- sub
| +-- b.h
| +-- b.cpp
становится
include
+-- a.h
вместо
include
+-- a.h
+-- sub
| +-- b.h
cp -rf
(Unix) илиxcopy /E ...
(Windows), которые поддерживают копирование папок, но не соответствуют **. Если бы все ваши заголовки находились в отдельной папке, это было бы тривиально, но при объединении с cpp вам потребуется более сложная команда для их извлечения. У меня нет кросс-платформенного решения, поэтому это комментарий, а не ответ, но вы можете начать с этого в Linux: stackoverflow.com/ вопросов/10176849/ Если вы найдете эквивалент для Windows, добавьте обе команды в фильтры ОС, и все должно работать. - person hsandt   schedule 27.07.2020