COIN-OR::LEMON - Graph Library

source: lemon-main/test/CMakeLists.txt @ 1065:490d89913a17

Last change on this file since 1065:490d89913a17 was 1065:490d89913a17, checked in by Alpar Juttner <alpar@…>, 11 years ago

Merge #446, #457, #465

File size: 4.1 KB
RevLine 
[510]1INCLUDE_DIRECTORIES(
[549]2  ${PROJECT_SOURCE_DIR}
[510]3  ${PROJECT_BINARY_DIR}
4)
[141]5
[679]6LINK_DIRECTORIES(
7  ${PROJECT_BINARY_DIR}/lemon
8)
[510]9
[933]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.")
[141]13
[225]14SET(TESTS
[488]15  adaptors_test
[993]16  arc_look_up_test
[698]17  bellman_ford_test
[141]18  bfs_test
[1018]19  bpgraph_test
[424]20  circulation_test
[649]21  connectivity_test
[141]22  counter_test
23  dfs_test
24  digraph_test
[170]25  dijkstra_test
[141]26  dim_test
[488]27  edge_set_test
[141]28  error_test
[522]29  euler_test
[869]30  fractional_matching_test
[543]31  gomory_hu_test
[200]32  graph_copy_test
[141]33  graph_test
[171]34  graph_utils_test
[410]35  hao_orlin_test
[203]36  heap_test
[141]37  kruskal_test
[1030]38  lgf_reader_writer_test
[949]39  lgf_test
[141]40  maps_test
[594]41  matching_test
[916]42  max_cardinality_search_test
[904]43  max_clique_test
[1060]44  max_flow_test
[501]45  min_cost_arborescence_test
[601]46  min_cost_flow_test
[763]47  min_mean_cycle_test
[913]48  nagamochi_ibaraki_test
[424]49  path_test
[797]50  planarity_test
[473]51  radix_sort_test
[225]52  random_test
[424]53  suurballe_test
[141]54  time_measure_test
[1035]55  tsp_test
[679]56  unionfind_test
57)
[510]58
[627]59IF(LEMON_HAVE_LP)
[927]60  IF(${CMAKE_BUILD_TYPE} STREQUAL "Maintainer")
61    ADD_EXECUTABLE(lp_test lp_test.cc)
62  ELSE()
63    ADD_EXECUTABLE(lp_test EXCLUDE_FROM_ALL lp_test.cc)
64  ENDIF()
65
[620]66  SET(LP_TEST_LIBS lemon)
[679]67
[627]68  IF(LEMON_HAVE_GLPK)
[620]69    SET(LP_TEST_LIBS ${LP_TEST_LIBS} ${GLPK_LIBRARIES})
[679]70  ENDIF()
[627]71  IF(LEMON_HAVE_CPLEX)
[1062]72    SET(LP_TEST_LIBS ${LP_TEST_LIBS} ${ILOG_LIBRARIES})
[679]73  ENDIF()
[627]74  IF(LEMON_HAVE_CLP)
[621]75    SET(LP_TEST_LIBS ${LP_TEST_LIBS} ${COIN_CLP_LIBRARIES})
[679]76  ENDIF()
77
[620]78  TARGET_LINK_LIBRARIES(lp_test ${LP_TEST_LIBS})
[473]79  ADD_TEST(lp_test lp_test)
[945]80  ADD_DEPENDENCIES(check lp_test)
[473]81
[627]82  IF(WIN32 AND LEMON_HAVE_GLPK)
[473]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
[679]86      COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/glpk.dll ${TARGET_PATH}
87      COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/libltdl3.dll ${TARGET_PATH}
88      COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/zlib1.dll ${TARGET_PATH}
[473]89    )
[679]90  ENDIF()
91
[627]92  IF(WIN32 AND LEMON_HAVE_CPLEX)
[620]93    GET_TARGET_PROPERTY(TARGET_LOC lp_test LOCATION)
94    GET_FILENAME_COMPONENT(TARGET_PATH ${TARGET_LOC} PATH)
95    ADD_CUSTOM_COMMAND(TARGET lp_test POST_BUILD
[1062]96      COMMAND ${CMAKE_COMMAND} -E copy ${ILOG_CPLEX_DLL} ${TARGET_PATH}
[620]97    )
[679]98  ENDIF()
99ENDIF()
[473]100
[627]101IF(LEMON_HAVE_MIP)
[927]102  IF(${CMAKE_BUILD_TYPE} STREQUAL "Maintainer")
103    ADD_EXECUTABLE(mip_test mip_test.cc)
104  ELSE()
105    ADD_EXECUTABLE(mip_test EXCLUDE_FROM_ALL mip_test.cc)
106  ENDIF()
107
[620]108  SET(MIP_TEST_LIBS lemon)
[679]109
[627]110  IF(LEMON_HAVE_GLPK)
[620]111    SET(MIP_TEST_LIBS ${MIP_TEST_LIBS} ${GLPK_LIBRARIES})
[679]112  ENDIF()
[627]113  IF(LEMON_HAVE_CPLEX)
[1062]114    SET(MIP_TEST_LIBS ${MIP_TEST_LIBS} ${ILOG_LIBRARIES})
[679]115  ENDIF()
[627]116  IF(LEMON_HAVE_CBC)
[621]117    SET(MIP_TEST_LIBS ${MIP_TEST_LIBS} ${COIN_CBC_LIBRARIES})
[679]118  ENDIF()
119
[620]120  TARGET_LINK_LIBRARIES(mip_test ${MIP_TEST_LIBS})
[473]121  ADD_TEST(mip_test mip_test)
[945]122  ADD_DEPENDENCIES(check mip_test)
[473]123
[627]124  IF(WIN32 AND LEMON_HAVE_GLPK)
[473]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
[679]128      COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/glpk.dll ${TARGET_PATH}
129      COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/libltdl3.dll ${TARGET_PATH}
130      COMMAND ${CMAKE_COMMAND} -E copy ${GLPK_BIN_DIR}/zlib1.dll ${TARGET_PATH}
[473]131    )
[679]132  ENDIF()
133
[627]134  IF(WIN32 AND LEMON_HAVE_CPLEX)
[620]135    GET_TARGET_PROPERTY(TARGET_LOC mip_test LOCATION)
136    GET_FILENAME_COMPONENT(TARGET_PATH ${TARGET_LOC} PATH)
137    ADD_CUSTOM_COMMAND(TARGET mip_test POST_BUILD
[1062]138      COMMAND ${CMAKE_COMMAND} -E copy ${ILOG_CPLEX_DLL} ${TARGET_PATH}
[620]139    )
[679]140  ENDIF()
141ENDIF()
[141]142
[225]143FOREACH(TEST_NAME ${TESTS})
[927]144  IF(${CMAKE_BUILD_TYPE} STREQUAL "Maintainer")
145    ADD_EXECUTABLE(${TEST_NAME} ${TEST_NAME}.cc)
146  ELSE()
147    ADD_EXECUTABLE(${TEST_NAME} EXCLUDE_FROM_ALL ${TEST_NAME}.cc)
148  ENDIF()
[225]149  TARGET_LINK_LIBRARIES(${TEST_NAME} lemon)
[933]150    IF(TEST_WITH_VALGRIND)
151      ADD_TEST(${TEST_NAME}
152        valgrind --error-exitcode=1 ${VALGRIND_FLAGS}
153        ${CMAKE_CURRENT_BINARY_DIR}/${TEST_NAME} )
154    ELSE()
155      ADD_TEST(${TEST_NAME} ${TEST_NAME})
156    ENDIF()
[927]157  ADD_DEPENDENCIES(check ${TEST_NAME})
[679]158ENDFOREACH()
Note: See TracBrowser for help on using the repository browser.