-
Notifications
You must be signed in to change notification settings - Fork 0
/
CMakeLists.txt
61 lines (50 loc) · 1.85 KB
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
cmake_minimum_required(VERSION 3.25)
project(CommonSAT)
set(CMAKE_CXX_STANDARD 11)
option(USE_CRYPTOMINISAT "Use CryptoMiniSat solver" OFF)
option(USE_MINISAT "Use MiniSat solver" OFF)
option(USE_LINGELING "Use Lingeling solver" OFF)
option(USE_PICOSAT "Use PicoSAT solver" OFF)
include_directories("${PROJECT_SOURCE_DIR}/")
enable_testing()
if(USE_MINISAT)
set(MINISAT_LIBRARY
"${PROJECT_SOURCE_DIR}/solvers/minisat/build/libminisat.a"
CACHE FILEPATH "Library for MiniSat")
set(MINISAT_INCLUDE_DIR
"${PROJECT_SOURCE_DIR}/solvers/minisat"
CACHE PATH "Include directory for MiniSat")
add_test(NAME MiniSat COMMAND test_minisat)
endif(USE_MINISAT)
if(USE_CRYPTOMINISAT)
set(CRYPTOMINISAT_LIBRARY
"${PROJECT_SOURCE_DIR}/solvers/cryptominisat/build/lib/libcryptominisat5.so"
CACHE FILEPATH "Library for CryptoMiniSat")
set(CRYPTOMINISAT_INCLUDE_DIR
"${PROJECT_SOURCE_DIR}/solvers/cryptominisat/build/include"
CACHE PATH "Include directory for CryptoMiniSat")
add_test(NAME CryptoMiniSat COMMAND test_cryptominisat)
endif(USE_CRYPTOMINISAT)
if(USE_LINGELING)
set(LINGELING_LIBRARY
"${PROJECT_SOURCE_DIR}/solvers/lingeling/liblgl.a"
CACHE FILEPATH "Library for lingeling")
set(LINGELING_INCLUDE_DIR
"${PROJECT_SOURCE_DIR}/solvers/lingeling"
CACHE PATH "Include directory for lingeling")
add_test(NAME Lingeling COMMAND test_lingeling)
endif(USE_LINGELING)
if(USE_PICOSAT)
set(PICOSAT_LIBRARY
"${PROJECT_SOURCE_DIR}/solvers/picosat/libpicosat.a"
CACHE FILEPATH "Library for PicoSAT")
set(PICOSAT_INCLUDE_DIR
"${PROJECT_SOURCE_DIR}/solvers/picosat"
CACHE PATH "Include directory for PicoSAT")
add_test(NAME picosat COMMAND test_picosat)
endif(USE_PICOSAT)
add_subdirectory(test)
find_package(Doxygen)
add_custom_target(doc
COMMAND ${DOXYGEN_EXECUTABLE} Doxyfile
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})