我正在使用CMake和Linux使用以下命令从CMakeLists.txt运行我的测试用例:
add_custom_command( TARGET tests
POST_BUILD
COMMAND ${CMAKE_CURRENT_BINARY_DIR}/tests
)
这仅在代码被更改时执行,无论如何都要执行此操作以便它始终运行二进制文件?
对于解决方案,我必须这样做:
add_custom_command( OUTPUT tests.a
POST_BUILD
COMMAND ${CMAKE_CURRENT_BINARY_DIR}/tests
)
add_custom_target( runTests
ALL
DPEENDS tests.a
)
答案 0 :(得分:3)
请改用add_custom_target。它在每次构建时执行。 http://www.cmake.org/cmake/help/v3.0/command/add_custom_target.html
add_custom_target( run_test ALL
COMMAND ${CMAKE_CURRENT_BINARY_DIR}/tests )