cmake/FindCOIN.cmake
author Alpar Juttner <alpar@cs.elte.hu>
Tue, 06 Aug 2013 09:10:18 +0200
changeset 1246 6039b32a2351
parent 1063 0dba9b96550a
child 1232 fc3854d936f7
permissions -rw-r--r--
Unused local typedefs warning pragma is only applied to gcc>=4.8 (#470)
     1 SET(COIN_ROOT_DIR "" CACHE PATH "COIN root directory")
     2 
     3 FIND_PATH(COIN_INCLUDE_DIR coin/CoinUtilsConfig.h
     4   HINTS ${COIN_ROOT_DIR}/include
     5 )
     6 FIND_LIBRARY(COIN_CBC_LIBRARY
     7   NAMES Cbc libCbc
     8   HINTS ${COIN_ROOT_DIR}/lib/coin
     9   HINTS ${COIN_ROOT_DIR}/lib
    10 )
    11 FIND_LIBRARY(COIN_CBC_SOLVER_LIBRARY
    12   NAMES CbcSolver libCbcSolver
    13   HINTS ${COIN_ROOT_DIR}/lib/coin
    14   HINTS ${COIN_ROOT_DIR}/lib
    15 )
    16 FIND_LIBRARY(COIN_CGL_LIBRARY
    17   NAMES Cgl libCgl
    18   HINTS ${COIN_ROOT_DIR}/lib/coin
    19   HINTS ${COIN_ROOT_DIR}/lib
    20 )
    21 FIND_LIBRARY(COIN_CLP_LIBRARY
    22   NAMES Clp libClp
    23   HINTS ${COIN_ROOT_DIR}/lib/coin
    24   HINTS ${COIN_ROOT_DIR}/lib
    25 )
    26 FIND_LIBRARY(COIN_COIN_UTILS_LIBRARY
    27   NAMES CoinUtils libCoinUtils
    28   HINTS ${COIN_ROOT_DIR}/lib/coin
    29   HINTS ${COIN_ROOT_DIR}/lib
    30 )
    31 FIND_LIBRARY(COIN_OSI_LIBRARY
    32   NAMES Osi libOsi
    33   HINTS ${COIN_ROOT_DIR}/lib/coin
    34   HINTS ${COIN_ROOT_DIR}/lib
    35 )
    36 FIND_LIBRARY(COIN_OSI_CBC_LIBRARY
    37   NAMES OsiCbc libOsiCbc
    38   HINTS ${COIN_ROOT_DIR}/lib/coin
    39   HINTS ${COIN_ROOT_DIR}/lib
    40 )
    41 FIND_LIBRARY(COIN_OSI_CLP_LIBRARY
    42   NAMES OsiClp libOsiClp
    43   HINTS ${COIN_ROOT_DIR}/lib/coin
    44   HINTS ${COIN_ROOT_DIR}/lib
    45 )
    46 FIND_LIBRARY(COIN_OSI_VOL_LIBRARY
    47   NAMES OsiVol libOsiVol
    48   HINTS ${COIN_ROOT_DIR}/lib/coin
    49   HINTS ${COIN_ROOT_DIR}/lib
    50 )
    51 FIND_LIBRARY(COIN_VOL_LIBRARY
    52   NAMES Vol libVol
    53   HINTS ${COIN_ROOT_DIR}/lib/coin
    54   HINTS ${COIN_ROOT_DIR}/lib
    55 )
    56 
    57 FIND_LIBRARY(COIN_ZLIB_LIBRARY
    58   NAMES z libz
    59   HINTS ${COIN_ROOT_DIR}/lib/coin
    60   HINTS ${COIN_ROOT_DIR}/lib
    61 )
    62 FIND_LIBRARY(COIN_BZ2_LIBRARY
    63   NAMES bz2 libbz2
    64   HINTS ${COIN_ROOT_DIR}/lib/coin
    65   HINTS ${COIN_ROOT_DIR}/lib
    66 )
    67 
    68 INCLUDE(FindPackageHandleStandardArgs)
    69 FIND_PACKAGE_HANDLE_STANDARD_ARGS(COIN DEFAULT_MSG
    70   COIN_INCLUDE_DIR
    71   COIN_CBC_LIBRARY
    72   COIN_CBC_SOLVER_LIBRARY
    73   COIN_CGL_LIBRARY
    74   COIN_CLP_LIBRARY
    75   COIN_COIN_UTILS_LIBRARY
    76   COIN_OSI_LIBRARY
    77   COIN_OSI_CBC_LIBRARY
    78   COIN_OSI_CLP_LIBRARY
    79   # COIN_OSI_VOL_LIBRARY
    80   # COIN_VOL_LIBRARY
    81 )
    82 
    83 IF(COIN_FOUND)
    84   SET(COIN_INCLUDE_DIRS ${COIN_INCLUDE_DIR})
    85   SET(COIN_CLP_LIBRARIES "${COIN_CLP_LIBRARY};${COIN_COIN_UTILS_LIBRARY};${COIN_ZLIB_LIBRARY};${COIN_BZ2_LIBRARY}")
    86   IF(COIN_ZLIB_LIBRARY)
    87     SET(COIN_CLP_LIBRARIES "${COIN_CLP_LIBRARIES};${COIN_ZLIB_LIBRARY}")
    88   ENDIF(COIN_ZLIB_LIBRARY)
    89    IF(COIN_BZ2_LIBRARY)
    90     SET(COIN_CLP_LIBRARIES "${COIN_CLP_LIBRARIES};${COIN_BZ2_LIBRARY}")
    91   ENDIF(COIN_BZ2_LIBRARY)
    92   SET(COIN_CBC_LIBRARIES "${COIN_CBC_LIBRARY};${COIN_CBC_SOLVER_LIBRARY};${COIN_CGL_LIBRARY};${COIN_OSI_LIBRARY};${COIN_OSI_CBC_LIBRARY};${COIN_OSI_CLP_LIBRARY};${COIN_ZLIB_LIBRARY};${COIN_BZ2_LIBRARY};${COIN_CLP_LIBRARIES}")
    93   SET(COIN_LIBRARIES ${COIN_CBC_LIBRARIES})
    94 ENDIF(COIN_FOUND)
    95 
    96 MARK_AS_ADVANCED(
    97   COIN_INCLUDE_DIR
    98   COIN_CBC_LIBRARY
    99   COIN_CBC_SOLVER_LIBRARY
   100   COIN_CGL_LIBRARY
   101   COIN_CLP_LIBRARY
   102   COIN_COIN_UTILS_LIBRARY
   103   COIN_OSI_LIBRARY
   104   COIN_OSI_CBC_LIBRARY
   105   COIN_OSI_CLP_LIBRARY
   106   COIN_OSI_VOL_LIBRARY
   107   COIN_VOL_LIBRARY
   108   COIN_ZLIB_LIBRARY
   109   COIN_BZ2_LIBRARY
   110 )
   111 
   112 IF(COIN_FOUND)
   113   SET(LEMON_HAVE_LP TRUE)
   114   SET(LEMON_HAVE_MIP TRUE)
   115   SET(LEMON_HAVE_CLP TRUE)
   116   SET(LEMON_HAVE_CBC TRUE)
   117 ENDIF(COIN_FOUND)