когда был добавлен новый .cpp файл в папку с проектом?
Конкретно проблема с MSVC.
Пример:
1. generate cmake -G "Visual Studio..." project files
2. билдим в msvc
3. разраб добавляет вручную файл в папку с проектом или же делает git pull и появляется новый файл
4. пробует сбилдить, но новый файл не подхватывается...
Я попробовал сделать. но получилось ооочень костыльно:
добавил в cmake скрипт:
set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/cmake_rerun.marker")
там храню число всех файлов в проекте, в том числе и в подпапках.
при запуске билда с помощью add_custom_command() запускаю батник который собственно подсчитывает файлы
и проверяет предыдущее их число из того файла, если меняется то перезаписывает с новым значением.
ну и тогда трегирится cmake.
НО! при большом кол-ве файлов и на не оч мощных ноутах притормаживает это дело при запуске билда.
Есть ли какой еще способ?
А вы glob используете что ли?
А зачем генерить проекты студии, если можно открыть студией симейк?
https://cmake.org/cmake/help/latest/command/file.html#glob вот тут есть флаг CONFIGURE_DEPENDS если он используется, то по факту изменения состава раскрытия глоба система сборки перезапустит cmake сама. Всё как обычно git pull; сборка в иде и никаких доп шагов. Но я не знаю как это будет замедлять пустую переборку с ростом проекта.
Обсуждают сегодня