cmake/FindCPLEX.cmake
author Peter Kovacs <kpeter@inf.elte.hu>
Fri, 19 Feb 2010 14:08:32 +0100
changeset 844 a6eb9698c321
parent 635 89705c452130
child 972 1818cc848005
permissions -rw-r--r--
Support tolerance technique for BellmanFord (#51)

A new operation traits class BellmanFordToleranceOperationTraits
is introduced, which uses the tolerance technique in its less()
function. This class can be used with the SetOperationTraits
named template parameter.
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)