В cmake есть собственные команды, которые могут запускать PRE_BUILD, PRE_LINK или POST_BUILD. Однако на большинстве платформ, за исключением Visual Studio, очевидно, PRE_BUILD и PRE_LINK являются идеальными.
Здесь есть много сообщений об этой проблеме, все констатируют этот факт, но никто не дает возможное решение «фактически PRE BUILD делает что-то ".
Мне, например, нужно запустить сценарий bash, который автоматически создаст некоторые заголовки (c и заголовки c ++), а источник зависит от того, являются ли они A.) доступны и B.) определяют определенные вещи.
Есть ли альтернатива кастомной команде в cmake? Как можно выполнить что-то до того, как процесс cmake возьмет верх и начнет компилировать?
add_custom_command(TARGET ${PROJECT_NAME}
PRE_BUILD <---------------------------------------- THIS IS PRE_LINK unfortunatelly!
COMMAND ../my_bash_script.sh
DEPENDS ${PROJECT_NAME}
VERBATIM
)