cmake/FindCPLEX.cmake
author Balazs Dezso <deba@inf.elte.hu>
Thu, 24 Jun 2010 09:27:53 +0200
changeset 891 bb70ad62c95f
parent 635 89705c452130
child 972 1818cc848005
permissions -rw-r--r--
Fix critical bug in preflow (#372)

The wrong transition between the bound decrease and highest active
heuristics caused the bug. The last node chosen in bound decrease mode
is used in the first iteration in highest active mode.
ladanyi@635
     1
SET(CPLEX_ROOT_DIR "" CACHE PATH "CPLEX root directory")
ladanyi@635
     2
ladanyi@620
     3
FIND_PATH(CPLEX_INCLUDE_DIR
ladanyi@620
     4
  ilcplex/cplex.h
ladanyi@635
     5
  PATHS "C:/ILOG/CPLEX91/include"
ladanyi@635
     6
  PATHS "/opt/ilog/cplex91/include"
ladanyi@635
     7
  HINTS ${CPLEX_ROOT_DIR}/include
ladanyi@635
     8
)
ladanyi@620
     9
FIND_LIBRARY(CPLEX_LIBRARY
ladanyi@635
    10
  cplex91
ladanyi@635
    11
  PATHS "C:/ILOG/CPLEX91/lib/msvc7/stat_mda"
ladanyi@635
    12
  PATHS "/opt/ilog/cplex91/bin"
ladanyi@635
    13
  HINTS ${CPLEX_ROOT_DIR}/bin
ladanyi@635
    14
)
ladanyi@620
    15
ladanyi@620
    16
INCLUDE(FindPackageHandleStandardArgs)
ladanyi@620
    17
FIND_PACKAGE_HANDLE_STANDARD_ARGS(CPLEX DEFAULT_MSG CPLEX_LIBRARY CPLEX_INCLUDE_DIR)
ladanyi@620
    18
ladanyi@620
    19
FIND_PATH(CPLEX_BIN_DIR
ladanyi@620
    20
  cplex91.dll
ladanyi@635
    21
  PATHS "C:/ILOG/CPLEX91/bin/x86_win32"
ladanyi@635
    22
)
ladanyi@620
    23
ladanyi@620
    24
IF(CPLEX_FOUND)
ladanyi@620
    25
  SET(CPLEX_INCLUDE_DIRS ${CPLEX_INCLUDE_DIR})
ladanyi@620
    26
  SET(CPLEX_LIBRARIES ${CPLEX_LIBRARY})
ladanyi@636
    27
  IF(CMAKE_SYSTEM_NAME STREQUAL "Linux")
ladanyi@636
    28
    SET(CPLEX_LIBRARIES "${CPLEX_LIBRARIES};m;pthread")
ladanyi@636
    29
  ENDIF(CMAKE_SYSTEM_NAME STREQUAL "Linux")
ladanyi@620
    30
ENDIF(CPLEX_FOUND)
ladanyi@620
    31
ladanyi@620
    32
MARK_AS_ADVANCED(CPLEX_LIBRARY CPLEX_INCLUDE_DIR CPLEX_BIN_DIR)
ladanyi@620
    33
ladanyi@620
    34
IF(CPLEX_FOUND)
ladanyi@627
    35
  SET(LEMON_HAVE_LP TRUE)
ladanyi@627
    36
  SET(LEMON_HAVE_MIP TRUE)
ladanyi@627
    37
  SET(LEMON_HAVE_CPLEX TRUE)
ladanyi@620
    38
ENDIF(CPLEX_FOUND)