Ответ 1
Вы можете создать пользовательскую цель, которая будет запускать установку и некоторые другие script после.
CMake script
Например, если у вас есть CMake script MyScript.cmake
:
add_custom_target(
MyInstall
COMMAND
"${CMAKE_COMMAND}" --build . --target install
COMMAND
"${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_LIST_DIR}/MyScript.cmake"
WORKING_DIRECTORY
"${CMAKE_BINARY_DIR}"
)
Вы можете запустить его, построив target MyInstall
:
cmake --build /path/to/build/directory --target MyInstall
Python script
Конечно, вы можете использовать любой язык сценариев. Просто помните, чтобы быть вежливым на другие платформы (так что, вероятно, это плохая идея написать bash script, он не будет работать на windows).
Например, python script MyScript.py
:
find_package(PythonInterp 3.2 REQUIRED)
add_custom_target(
MyInstall
COMMAND
"${CMAKE_COMMAND}" --build . --target install
COMMAND
"${PYTHON_EXECUTABLE}" "${CMAKE_CURRENT_LIST_DIR}/MyScript.py"
WORKING_DIRECTORY
"${CMAKE_BINARY_DIR}"
)