Я использую CMake для своей системы сборки, и в проекте у нас будет куча файлов конфигурации. Некоторые из них нужно будет просто скопировать, а некоторые нужно будет модифицировать для каждого компьютера. В настоящее время я использую команду CMake "configure_file" для копирования / замены частей файла. Это прекрасно работает, и мне нравится, как я могу использовать любую переменную из CMake в процедуре настройки.
Но если вы измените исходный файл, CMake не подберет его, и вам придется повторно запустить cmake, чтобы настроить каталог. Когда я запускаю «make», я хочу, чтобы он понял, что я изменил файл, и снова запустил configure.
Он также всегда перенастраивает файлы, даже если перезаписываемый файл более новый. Я хочу, чтобы он действовал как пользовательская цель.
Я думаю, что могу сделать это с помощью add_custom_command, но не думаю, что смогу запустить команду CMake из add_custom_command. Так есть ли в любом случае дублировать поведение, которое configure_file делает в CMake?