COIN-OR::LEMON - Graph Library

source: lemon-main/cmake/FindCOIN.cmake

Last change on this file was 1180:389416f8a995, checked in by Alpar Juttner <alpar@…>, 6 years ago

Better MIP solver discovery and support linking to CLP/CBC on Windows (#614)

File size: 3.0 KB
RevLine 
[621]1SET(COIN_ROOT_DIR "" CACHE PATH "COIN root directory")
2
3FIND_PATH(COIN_INCLUDE_DIR coin/CoinUtilsConfig.h
[634]4  HINTS ${COIN_ROOT_DIR}/include
5)
6FIND_LIBRARY(COIN_CBC_LIBRARY
7  NAMES Cbc libCbc
[946]8  HINTS ${COIN_ROOT_DIR}/lib/coin
[634]9  HINTS ${COIN_ROOT_DIR}/lib
10)
11FIND_LIBRARY(COIN_CBC_SOLVER_LIBRARY
12  NAMES CbcSolver libCbcSolver
[946]13  HINTS ${COIN_ROOT_DIR}/lib/coin
[634]14  HINTS ${COIN_ROOT_DIR}/lib
15)
16FIND_LIBRARY(COIN_CGL_LIBRARY
17  NAMES Cgl libCgl
[946]18  HINTS ${COIN_ROOT_DIR}/lib/coin
[634]19  HINTS ${COIN_ROOT_DIR}/lib
20)
21FIND_LIBRARY(COIN_CLP_LIBRARY
22  NAMES Clp libClp
[946]23  HINTS ${COIN_ROOT_DIR}/lib/coin
[634]24  HINTS ${COIN_ROOT_DIR}/lib
25)
26FIND_LIBRARY(COIN_COIN_UTILS_LIBRARY
27  NAMES CoinUtils libCoinUtils
[946]28  HINTS ${COIN_ROOT_DIR}/lib/coin
[634]29  HINTS ${COIN_ROOT_DIR}/lib
30)
31FIND_LIBRARY(COIN_OSI_LIBRARY
32  NAMES Osi libOsi
[946]33  HINTS ${COIN_ROOT_DIR}/lib/coin
[634]34  HINTS ${COIN_ROOT_DIR}/lib
35)
36FIND_LIBRARY(COIN_OSI_CBC_LIBRARY
37  NAMES OsiCbc libOsiCbc
[946]38  HINTS ${COIN_ROOT_DIR}/lib/coin
[634]39  HINTS ${COIN_ROOT_DIR}/lib
40)
41FIND_LIBRARY(COIN_OSI_CLP_LIBRARY
42  NAMES OsiClp libOsiClp
[946]43  HINTS ${COIN_ROOT_DIR}/lib/coin
[634]44  HINTS ${COIN_ROOT_DIR}/lib
45)
46FIND_LIBRARY(COIN_OSI_VOL_LIBRARY
47  NAMES OsiVol libOsiVol
[946]48  HINTS ${COIN_ROOT_DIR}/lib/coin
[634]49  HINTS ${COIN_ROOT_DIR}/lib
50)
51FIND_LIBRARY(COIN_VOL_LIBRARY
52  NAMES Vol libVol
[946]53  HINTS ${COIN_ROOT_DIR}/lib/coin
[634]54  HINTS ${COIN_ROOT_DIR}/lib
55)
[621]56
[973]57FIND_LIBRARY(COIN_ZLIB_LIBRARY
58  NAMES z libz
59  HINTS ${COIN_ROOT_DIR}/lib/coin
60  HINTS ${COIN_ROOT_DIR}/lib
61)
62FIND_LIBRARY(COIN_BZ2_LIBRARY
63  NAMES bz2 libbz2
64  HINTS ${COIN_ROOT_DIR}/lib/coin
65  HINTS ${COIN_ROOT_DIR}/lib
66)
67
[1180]68FIND_LIBRARY(COIN_PTHREADS_LIBRARY
69  NAMES pthreads libpthreads
70  HINTS ${COIN_ROOT_DIR}/lib/coin
71  HINTS ${COIN_ROOT_DIR}/lib
72)
73
[621]74INCLUDE(FindPackageHandleStandardArgs)
75FIND_PACKAGE_HANDLE_STANDARD_ARGS(COIN DEFAULT_MSG
76  COIN_INCLUDE_DIR
77  COIN_CBC_LIBRARY
78  COIN_CBC_SOLVER_LIBRARY
79  COIN_CGL_LIBRARY
80  COIN_CLP_LIBRARY
81  COIN_COIN_UTILS_LIBRARY
82  COIN_OSI_LIBRARY
83  COIN_OSI_CBC_LIBRARY
84  COIN_OSI_CLP_LIBRARY
[947]85  # COIN_OSI_VOL_LIBRARY
86  # COIN_VOL_LIBRARY
[621]87)
88
89IF(COIN_FOUND)
90  SET(COIN_INCLUDE_DIRS ${COIN_INCLUDE_DIR})
[1180]91  SET(COIN_CLP_LIBRARIES "${COIN_CLP_LIBRARY};${COIN_COIN_UTILS_LIBRARY}")
[973]92  IF(COIN_ZLIB_LIBRARY)
93    SET(COIN_CLP_LIBRARIES "${COIN_CLP_LIBRARIES};${COIN_ZLIB_LIBRARY}")
94  ENDIF(COIN_ZLIB_LIBRARY)
95   IF(COIN_BZ2_LIBRARY)
96    SET(COIN_CLP_LIBRARIES "${COIN_CLP_LIBRARIES};${COIN_BZ2_LIBRARY}")
97  ENDIF(COIN_BZ2_LIBRARY)
[1180]98   IF(COIN_PTHREADS_LIBRARY)
99    SET(COIN_CLP_LIBRARIES "${COIN_CLP_LIBRARIES};${COIN_PTHREADS_LIBRARY}")
100  ENDIF(COIN_PTHREADS_LIBRARY)
101  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_CLP_LIBRARIES}")
[973]102  SET(COIN_LIBRARIES ${COIN_CBC_LIBRARIES})
[621]103ENDIF(COIN_FOUND)
104
105MARK_AS_ADVANCED(
106  COIN_INCLUDE_DIR
107  COIN_CBC_LIBRARY
108  COIN_CBC_SOLVER_LIBRARY
109  COIN_CGL_LIBRARY
110  COIN_CLP_LIBRARY
111  COIN_COIN_UTILS_LIBRARY
112  COIN_OSI_LIBRARY
113  COIN_OSI_CBC_LIBRARY
114  COIN_OSI_CLP_LIBRARY
115  COIN_OSI_VOL_LIBRARY
116  COIN_VOL_LIBRARY
[973]117  COIN_ZLIB_LIBRARY
118  COIN_BZ2_LIBRARY
[621]119)
Note: See TracBrowser for help on using the repository browser.