Respostas:
Quando você deseja criar o diretório?
Para criar um diretório quando o CMake gerar o sistema de construção,
file(MAKE_DIRECTORY ${directory})
No add_custom_command()
comando (que inclui uma regra de construção customizada no sistema de construção gerado) e no add_custom_target()
comando (que adiciona um destino sem saída para que ele sempre seja construído), você especifica os comandos a serem executados no momento da construção. Crie um diretório executando o comando ${CMAKE_COMMAND} -E make_directory
. Por exemplo:
add_custom_target(build-time-make-directory ALL
COMMAND ${CMAKE_COMMAND} -E make_directory ${directory})
Para criar um diretório no momento da instalação,
install(DIRECTORY DESTINATION ${directory})
Para criar um diretório no momento da instalação,
install(DIRECTORY DESTINATION ${directory})
Estes serão ambos executados em tempo de configure:
file(MAKE_DIRECTORY ${directory})
execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${directory})
Para criar durante a construção, use um destino personalizado:
add_custom_target(mytargetname ALL COMMAND ${CMAKE_COMMAND} -E make_directory ${directory})
Além da resposta de Chin Huang, você também pode fazer isso em tempo de compilação com add_custom_command
:
add_custom_command(TARGET ${target_name} PRE_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory ${directory})
Você também pode alterar o momento em que seu diretório é criado com PRE_BUILD
| PRE_LINK
| POST_BUILD
parâmetros.