COIN-OR::LEMON - Graph Library

source: lemon-main/test/CMakeLists.txt @ 1005:c5990f454032

Last change on this file since 1005:c5990f454032 was 993:157427808b40, checked in by Alpar Juttner <alpar@…>, 12 years ago

Bugfix in AllArcLookUp?<> (#447)

File size: 3.9 KB
Line 
1INCLUDE_DIRECTORIES(
2  ${PROJECT_SOURCE_DIR}
3  ${PROJECT_BINARY_DIR}
4)
5
6LINK_DIRECTORIES(
7  ${PROJECT_BINARY_DIR}/lemon
8)
9
10SET(TEST_WITH_VALGRIND "NO" CACHE STRING
11  "Run the test with valgrind (YES/NO).")
12SET(VALGRIND_FLAGS "" CACHE STRING "Valgrind flags used by the tests.")
13
14SET(TESTS
15  adaptors_test
16  arc_look_up_test
17  bfs_test
18  circulation_test
19  connectivity_test
20  counter_test
21  dfs_test
22  digraph_test
23  dijkstra_test
24  dim_test
25  edge_set_test
26  error_test
27  euler_test
28  gomory_hu_test
29  graph_copy_test
30  graph_test
31  graph_utils_test
32  hao_orlin_test
33  heap_test
34  kruskal_test
35  lgf_test
36  maps_test
37  matching_test
38  min_cost_arborescence_test
39  min_cost_flow_test
40  path_test
41  preflow_test
42  radix_sort_test
43  random_test
44  suurballe_test
45  time_measure_test
46  unionfind_test
47)
48
49IF(LEMON_HAVE_LP)
50  IF(${CMAKE_BUILD_TYPE} STREQUAL "Maintainer")
51    ADD_EXECUTABLE(lp_test lp_test.cc)
52  ELSE()
53    ADD_EXECUTABLE(lp_test EXCLUDE_FROM_ALL lp_test.cc)
54  ENDIF()
55
56  SET(LP_TEST_LIBS lemon)
57
58  IF(LEMON_HAVE_GLPK)
59    SET(LP_TEST_LIBS ${LP_TEST_LIBS} ${GLPK_LIBRARIES})
60  ENDIF()
61  IF(LEMON_HAVE_CPLEX)
62    SET(LP_TEST_LIBS ${LP_TEST_LIBS} ${CPLEX_LIBRARIES})
63  ENDIF()
64  IF(LEMON_HAVE_CLP)
65    SET(LP_TEST_LIBS ${LP_TEST_LIBS} ${COIN_CLP_LIBRARIES})
66  ENDIF()
67
68  TARGET_LINK_LIBRARIES(lp_test ${LP_TEST_LIBS})
69  ADD_TEST(lp_test lp_test)
70  ADD_DEPENDENCIES(check lp_test)
71
72  IF(WIN32 AND LEMON_HAVE_GLPK)
73    GET_TARGET_PROPERTY(TARGET_LOC lp_test LOCATION)
74    GET_FILENAME_COMPONENT(TARGET_PATH ${TARGET_LOC} PATH)
75    ADD_CUSTOM_COMMAND(TARGET lp_test POST_BUILD
76      COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/glpk.dll ${TARGET_PATH}
77      COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/libltdl3.dll ${TARGET_PATH}
78      COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/zlib1.dll ${TARGET_PATH}
79    )
80  ENDIF()
81
82  IF(WIN32 AND LEMON_HAVE_CPLEX)
83    GET_TARGET_PROPERTY(TARGET_LOC lp_test LOCATION)
84    GET_FILENAME_COMPONENT(TARGET_PATH ${TARGET_LOC} PATH)
85    ADD_CUSTOM_COMMAND(TARGET lp_test POST_BUILD
86      COMMAND ${CMAKE_COMMAND} -E copy ${CPLEX_BIN_DIR}/cplex.dll ${TARGET_PATH}
87    )
88  ENDIF()
89ENDIF()
90
91IF(LEMON_HAVE_MIP)
92  IF(${CMAKE_BUILD_TYPE} STREQUAL "Maintainer")
93    ADD_EXECUTABLE(mip_test mip_test.cc)
94  ELSE()
95    ADD_EXECUTABLE(mip_test EXCLUDE_FROM_ALL mip_test.cc)
96  ENDIF()
97
98  SET(MIP_TEST_LIBS lemon)
99
100  IF(LEMON_HAVE_GLPK)
101    SET(MIP_TEST_LIBS ${MIP_TEST_LIBS} ${GLPK_LIBRARIES})
102  ENDIF()
103  IF(LEMON_HAVE_CPLEX)
104    SET(MIP_TEST_LIBS ${MIP_TEST_LIBS} ${CPLEX_LIBRARIES})
105  ENDIF()
106  IF(LEMON_HAVE_CBC)
107    SET(MIP_TEST_LIBS ${MIP_TEST_LIBS} ${COIN_CBC_LIBRARIES})
108  ENDIF()
109
110  TARGET_LINK_LIBRARIES(mip_test ${MIP_TEST_LIBS})
111  ADD_TEST(mip_test mip_test)
112  ADD_DEPENDENCIES(check mip_test)
113
114  IF(WIN32 AND LEMON_HAVE_GLPK)
115    GET_TARGET_PROPERTY(TARGET_LOC mip_test LOCATION)
116    GET_FILENAME_COMPONENT(TARGET_PATH ${TARGET_LOC} PATH)
117    ADD_CUSTOM_COMMAND(TARGET mip_test POST_BUILD
118      COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/glpk.dll ${TARGET_PATH}
119      COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/libltdl3.dll ${TARGET_PATH}
120      COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/zlib1.dll ${TARGET_PATH}
121    )
122  ENDIF()
123
124  IF(WIN32 AND LEMON_HAVE_CPLEX)
125    GET_TARGET_PROPERTY(TARGET_LOC mip_test LOCATION)
126    GET_FILENAME_COMPONENT(TARGET_PATH ${TARGET_LOC} PATH)
127    ADD_CUSTOM_COMMAND(TARGET mip_test POST_BUILD
128      COMMAND ${CMAKE_COMMAND} -E copy ${CPLEX_BIN_DIR}/cplex.dll ${TARGET_PATH}
129    )
130  ENDIF()
131ENDIF()
132
133FOREACH(TEST_NAME ${TESTS})
134  IF(${CMAKE_BUILD_TYPE} STREQUAL "Maintainer")
135    ADD_EXECUTABLE(${TEST_NAME} ${TEST_NAME}.cc)
136  ELSE()
137    ADD_EXECUTABLE(${TEST_NAME} EXCLUDE_FROM_ALL ${TEST_NAME}.cc)
138  ENDIF()
139  TARGET_LINK_LIBRARIES(${TEST_NAME} lemon)
140    IF(TEST_WITH_VALGRIND)
141      ADD_TEST(${TEST_NAME}
142        valgrind --error-exitcode=1 ${VALGRIND_FLAGS}
143        ${CMAKE_CURRENT_BINARY_DIR}/${TEST_NAME} )
144    ELSE()
145      ADD_TEST(${TEST_NAME} ${TEST_NAME})
146    ENDIF()
147  ADD_DEPENDENCIES(check ${TEST_NAME})
148ENDFOREACH()
Note: See TracBrowser for help on using the repository browser.