COIN-OR::LEMON - Graph Library

source: lemon-main/test/CMakeLists.txt @ 948:f9e3f73e17f1

Last change on this file since 948:f9e3f73e17f1 was 948:f9e3f73e17f1, checked in by Alpar Juttner <alpar@…>, 13 years ago

Merge #419

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