我有以下CMakeLists.txt
:
cmake_minimum_required(VERSION 3.0.0)
project(FlaAlgoTests)
...
include_directories("../lib")
...
add_executable(
flamenco_algorithms_anomaly_stiction_tests
...
)
flamenco_algorithms_anomaly_stiction_tests
可执行文件在完成后会生成一个.xml
文件。
该可执行文件运行后,我想运行一个进程(我猜想用ADD_CUSTOM_COMMAND
?),该进程将xml文件转换为html文件。
我该怎么做?
答案 0 :(得分:0)
简短的回答是“是”。您可以使用ADD_CUSTOM_COMMAND
首先执行构建的可执行文件(flamenco_stiction_tests.exe
),然后使用其运行其他进程(my_additional_process.exe
)。尝试这样的事情:
add_custom_command(TARGET flamenco_algorithms_anomaly_stiction_tests POST_BUILD
COMMAND flamenco_stiction_tests.exe
COMMAND my_additional_process.exe my_generated_file.xml
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/Debug
COMMENT "Running built executable and additional process..."
)
对于CMake documentation,这些命令将按顺序执行。您也可以使用configure_file()
和add_custom_command
的组合将脚本配置为在生成可执行文件之后运行。这样可以更轻松,更安全地保证生成的文件可用于第二个过程。