Do not normalize to representatives for variable equalities in conflict-based instant...
[cvc5.git] / cmake / FindCxxTest.cmake
1 # Find CxxTest
2 # CxxTest_FOUND - system has CxxTest lib
3 # CxxTest_INCLUDE_DIR - the CxxTest include directory
4 # CxxTest_TESTGEN_EXECUTABLE - CxxTest excecutable
5 # CxxTest_TESTGEN_INTERPRETER - Python/Perl interpreter for running executable
6
7 find_package(PythonInterp QUIET)
8 find_package(Perl QUIET)
9
10 find_path(CxxTest_INCLUDE_DIR cxxtest/TestSuite.h
11 PATHS ${CxxTest_HOME}
12 NO_DEFAULT_PATH)
13 find_program(CxxTest_PYTHON_TESTGEN_EXECUTABLE
14 NAMES cxxtestgen cxxtestgen.py
15 PATHS ${CxxTest_HOME}/bin
16 NO_DEFAULT_PATH)
17 find_program(CxxTest_PERL_TESTGEN_EXECUTABLE cxxtestgen.pl
18 PATHS ${CxxTest_HOME}/bin
19 NO_DEFAULT_PATH)
20
21 if(NOT CxxTest_HOME)
22 find_path(CxxTest_INCLUDE_DIR cxxtest/TestSuite.h)
23 find_program(CxxTest_PYTHON_TESTGEN_EXECUTABLE NAMES cxxtestgen.py)
24 find_program(CxxTest_SHEBANG_TESTGEN_EXECUTABLE NAMES cxxtestgen)
25 find_program(CxxTest_PERL_TESTGEN_EXECUTABLE cxxtestgen.pl)
26 endif()
27
28
29 if(CxxTest_SHEBANG_TESTGEN_EXECUTABLE)
30 set(CxxTest_USE_SHEBANG ON)
31 set(CxxTest_TESTGEN_EXECUTABLE ${CxxTest_SHEBANG_TESTGEN_EXECUTABLE})
32 elseif(PYTHONINTERP_FOUND AND CxxTest_PYTHON_TESTGEN_EXECUTABLE)
33 set(CxxTest_TESTGEN_EXECUTABLE ${CxxTest_PYTHON_TESTGEN_EXECUTABLE})
34 set(CxxTest_TESTGEN_INTERPRETER ${PYTHON_EXECUTABLE})
35 elseif(PERL_FOUND AND CxxTest_PERL_TESTGEN_EXECUTABLE)
36 set(CxxTest_TESTGEN_EXECUTABLE ${CxxTest_PERL_TESTGEN_EXECUTABLE})
37 set(CxxTest_TESTGEN_INTERPRETER ${PERL_EXECUTABLE})
38 elseif(NOT PYTHONINTERP_FOUND AND NOT PERL_FOUND AND CxxTest_FIND_REQUIRED)
39 message(FATAL_ERROR "Neither Python nor Perl found, cannot use CxxTest.")
40 endif()
41
42 if(NOT DEFINED CxxTest_TESTGEN_ARGS)
43 set(CxxTest_TESTGEN_ARGS --error-printer)
44 endif()
45
46 include(FindPackageHandleStandardArgs)
47 find_package_handle_standard_args(
48 CxxTest DEFAULT_MSG CxxTest_INCLUDE_DIR CxxTest_TESTGEN_EXECUTABLE)
49
50 mark_as_advanced(CxxTest_INCLUDE_DIR CxxTest_TESTGEN_EXECUTABLE)