diff options
-rw-r--r-- | cmake/FindCxxTest.cmake | 9 | ||||
-rw-r--r-- | test/unit/CMakeLists.txt | 24 |
2 files changed, 24 insertions, 9 deletions
diff --git a/cmake/FindCxxTest.cmake b/cmake/FindCxxTest.cmake index cd7aed70d..2348edb98 100644 --- a/cmake/FindCxxTest.cmake +++ b/cmake/FindCxxTest.cmake @@ -20,11 +20,16 @@ find_program(CxxTest_PERL_TESTGEN_EXECUTABLE cxxtestgen.pl if(NOT CxxTest_HOME) find_path(CxxTest_INCLUDE_DIR cxxtest/TestSuite.h) - find_program(CxxTest_PYTHON_TESTGEN_EXECUTABLE NAMES cxxtestgen cxxtestgen.py) + find_program(CxxTest_PYTHON_TESTGEN_EXECUTABLE NAMES cxxtestgen.py) + find_program(CxxTest_SHEBANG_TESTGEN_EXECUTABLE NAMES cxxtestgen) find_program(CxxTest_PERL_TESTGEN_EXECUTABLE cxxtestgen.pl) endif() -if(PYTHONINTERP_FOUND AND CxxTest_PYTHON_TESTGEN_EXECUTABLE) + +if(CxxTest_SHEBANG_TESTGEN_EXECUTABLE) + set(CxxTest_USE_SHEBANG ON) + set(CxxTest_TESTGEN_EXECUTABLE ${CxxTest_SHEBANG_TESTGEN_EXECUTABLE}) +elseif(PYTHONINTERP_FOUND AND CxxTest_PYTHON_TESTGEN_EXECUTABLE) set(CxxTest_TESTGEN_EXECUTABLE ${CxxTest_PYTHON_TESTGEN_EXECUTABLE}) set(CxxTest_TESTGEN_INTERPRETER ${PYTHON_EXECUTABLE}) elseif(PERL_FOUND AND CxxTest_PERL_TESTGEN_EXECUTABLE) diff --git a/test/unit/CMakeLists.txt b/test/unit/CMakeLists.txt index 83b0ec0db..0c82bcc1a 100644 --- a/test/unit/CMakeLists.txt +++ b/test/unit/CMakeLists.txt @@ -32,14 +32,24 @@ macro(cvc4_add_unit_test is_white name output_dir) # generate the test sources set(test_src ${CMAKE_CURRENT_BINARY_DIR}/${name}.cpp) set(test_header ${CMAKE_CURRENT_LIST_DIR}/${name}.h) - add_custom_command( - OUTPUT ${test_src} - DEPENDS ${test_header} - COMMAND - ${CxxTest_TESTGEN_INTERPRETER} + if (CxxTest_USE_SHEBANG) + add_custom_command( + OUTPUT ${test_src} + DEPENDS ${test_header} + COMMAND ${CxxTest_TESTGEN_EXECUTABLE} - ${CxxTest_TESTGEN_ARGS} -o ${test_src} ${test_header} - ) + ${CxxTest_TESTGEN_ARGS} -o ${test_src} ${test_header} + ) + else() + add_custom_command( + OUTPUT ${test_src} + DEPENDS ${test_header} + COMMAND + ${CxxTest_TESTGEN_INTERPRETER} + ${CxxTest_TESTGEN_EXECUTABLE} + ${CxxTest_TESTGEN_ARGS} -o ${test_src} ${test_header} + ) + endif() set_source_files_properties(${test_src} PROPERTIES GENERATED true) # The build target is created without the path prefix (not supported), # e.g., for '<output_dir>/myunittest.h' |