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.
     1 SET(CPLEX_ROOT_DIR "" CACHE PATH "CPLEX root directory")
     2 
     3 FIND_PATH(CPLEX_INCLUDE_DIR
     4   ilcplex/cplex.h
     5   PATHS "C:/ILOG/CPLEX91/include"
     6   PATHS "/opt/ilog/cplex91/include"
     7   HINTS ${CPLEX_ROOT_DIR}/include
     8 )
     9 FIND_LIBRARY(CPLEX_LIBRARY
    10   cplex91
    11   PATHS "C:/ILOG/CPLEX91/lib/msvc7/stat_mda"
    12   PATHS "/opt/ilog/cplex91/bin"
    13   HINTS ${CPLEX_ROOT_DIR}/bin
    14 )
    15 
    16 INCLUDE(FindPackageHandleStandardArgs)
    17 FIND_PACKAGE_HANDLE_STANDARD_ARGS(CPLEX DEFAULT_MSG CPLEX_LIBRARY CPLEX_INCLUDE_DIR)
    18 
    19 FIND_PATH(CPLEX_BIN_DIR
    20   cplex91.dll
    21   PATHS "C:/ILOG/CPLEX91/bin/x86_win32"
    22 )
    23 
    24 IF(CPLEX_FOUND)
    25   SET(CPLEX_INCLUDE_DIRS ${CPLEX_INCLUDE_DIR})
    26   SET(CPLEX_LIBRARIES ${CPLEX_LIBRARY})
    27   IF(CMAKE_SYSTEM_NAME STREQUAL "Linux")
    28     SET(CPLEX_LIBRARIES "${CPLEX_LIBRARIES};m;pthread")
    29   ENDIF(CMAKE_SYSTEM_NAME STREQUAL "Linux")
    30 ENDIF(CPLEX_FOUND)
    31 
    32 MARK_AS_ADVANCED(CPLEX_LIBRARY CPLEX_INCLUDE_DIR CPLEX_BIN_DIR)
    33 
    34 IF(CPLEX_FOUND)
    35   SET(LEMON_HAVE_LP TRUE)
    36   SET(LEMON_HAVE_MIP TRUE)
    37   SET(LEMON_HAVE_CPLEX TRUE)
    38 ENDIF(CPLEX_FOUND)