1 | FIND_PATH(ILOG_ROOT_DIR |
---|
2 | NAMES cplex |
---|
3 | DOC "CPLEX STUDIO root directory" |
---|
4 | PATHS /opt/ibm/ILOG /usr/local/ibm/ILOG /usr/local/ILOG /usr/local/ilog |
---|
5 | PATHS "$ENV{HOME}/ILOG" "$ENV{HOME}/.local/ILOG" |
---|
6 | PATHS "$ENV{HOME}/ibm/ILOG" "$ENV{HOME}/.local/ibm/ILOG" |
---|
7 | PATHS "C:/Program Files/IBM/ILOG" |
---|
8 | PATH_SUFFIXES "CPLEX_Studio126" "CPLEX_Studio125" |
---|
9 | "CPLEX_Studio124" "CPLEX_Studio123" "CPLEX_Studio122" |
---|
10 | NO_DEFAULT_PATH |
---|
11 | ) |
---|
12 | |
---|
13 | IF(WIN32) |
---|
14 | IF(MSVC_VERSION STREQUAL "1400") |
---|
15 | SET(ILOG_WIN_COMPILER "windows_vs2005") |
---|
16 | ELSEIF(MSVC_VERSION STREQUAL "1500") |
---|
17 | SET(ILOG_WIN_COMPILER "windows_vs2008") |
---|
18 | ELSEIF(MSVC_VERSION STREQUAL "1600") |
---|
19 | SET(ILOG_WIN_COMPILER "windows_vs2010") |
---|
20 | ELSE() |
---|
21 | SET(ILOG_WIN_COMPILER "windows_vs2008") |
---|
22 | ENDIF() |
---|
23 | IF(CMAKE_CL_64) |
---|
24 | SET(ILOG_WIN_COMPILER "x64_${ILOG_WIN_COMPILER}") |
---|
25 | SET(ILOG_WIN_PLATFORM "x64_win32") |
---|
26 | ELSE() |
---|
27 | SET(ILOG_WIN_COMPILER "x86_${ILOG_WIN_COMPILER}") |
---|
28 | SET(ILOG_WIN_PLATFORM "x86_win32") |
---|
29 | ENDIF() |
---|
30 | ENDIF() |
---|
31 | |
---|
32 | FIND_PATH(ILOG_CPLEX_ROOT_DIR |
---|
33 | NAMES include/ilcplex |
---|
34 | HINTS ${ILOG_ROOT_DIR}/cplex ${ILOG_ROOT_DIR}/cplex121 |
---|
35 | ${ILOG_ROOT_DIR}/cplex122 ${ILOG_ROOT_DIR}/cplex123 |
---|
36 | DOC "CPLEX root directory" |
---|
37 | NO_DEFAULT_PATH |
---|
38 | ) |
---|
39 | |
---|
40 | FIND_PATH(ILOG_CONCERT_ROOT_DIR |
---|
41 | NAMES include/ilconcert |
---|
42 | HINTS ${ILOG_ROOT_DIR}/concert ${ILOG_ROOT_DIR}/concert29 |
---|
43 | DOC "CONCERT root directory" |
---|
44 | NO_DEFAULT_PATH |
---|
45 | ) |
---|
46 | |
---|
47 | FIND_PATH(ILOG_CPLEX_INCLUDE_DIR |
---|
48 | ilcplex/cplex.h |
---|
49 | HINTS ${ILOG_CPLEX_ROOT_DIR}/include |
---|
50 | NO_DEFAULT_PATH |
---|
51 | ) |
---|
52 | |
---|
53 | FIND_PATH(ILOG_CONCERT_INCLUDE_DIR |
---|
54 | ilconcert/ilobasic.h |
---|
55 | HINTS ${ILOG_CONCERT_ROOT_DIR}/include |
---|
56 | NO_DEFAULT_PATH |
---|
57 | ) |
---|
58 | |
---|
59 | FIND_LIBRARY(ILOG_CPLEX_LIBRARY |
---|
60 | cplex cplex121 cplex122 cplex123 cplex124 |
---|
61 | HINTS ${ILOG_CPLEX_ROOT_DIR}/lib/x86_sles10_4.1/static_pic |
---|
62 | ${ILOG_CPLEX_ROOT_DIR}/lib/x86-64_sles10_4.1/static_pic |
---|
63 | ${ILOG_CPLEX_ROOT_DIR}/lib/x86_debian4.0_4.1/static_pic |
---|
64 | ${ILOG_CPLEX_ROOT_DIR}/lib/x86-64_debian4.0_4.1/static_pic |
---|
65 | ${ILOG_CPLEX_ROOT_DIR}/lib/${ILOG_WIN_COMPILER}/stat_mda |
---|
66 | NO_DEFAULT_PATH |
---|
67 | ) |
---|
68 | |
---|
69 | FIND_LIBRARY(ILOG_CONCERT_LIBRARY |
---|
70 | concert |
---|
71 | HINTS ${ILOG_CONCERT_ROOT_DIR}/lib/x86_sles10_4.1/static_pic |
---|
72 | ${ILOG_CONCERT_ROOT_DIR}/lib/x86-64_sles10_4.1/static_pic |
---|
73 | ${ILOG_CONCERT_ROOT_DIR}/lib/x86_debian4.0_4.1/static_pic |
---|
74 | ${ILOG_CONCERT_ROOT_DIR}/lib/x86-64_debian4.0_4.1/static_pic |
---|
75 | ${ILOG_CONCERT_ROOT_DIR}/lib/${ILOG_WIN_COMPILER}/stat_mda |
---|
76 | NO_DEFAULT_PATH |
---|
77 | ) |
---|
78 | |
---|
79 | FIND_FILE(ILOG_CPLEX_DLL |
---|
80 | cplex121.dll cplex122.dll cplex123.dll cplex124.dll |
---|
81 | HINTS ${ILOG_CPLEX_ROOT_DIR}/bin/${ILOG_WIN_PLATFORM} |
---|
82 | NO_DEFAULT_PATH |
---|
83 | ) |
---|
84 | |
---|
85 | INCLUDE(FindPackageHandleStandardArgs) |
---|
86 | FIND_PACKAGE_HANDLE_STANDARD_ARGS(ILOG |
---|
87 | DEFAULT_MSG ILOG_CPLEX_LIBRARY ILOG_CPLEX_INCLUDE_DIR |
---|
88 | ) |
---|
89 | |
---|
90 | IF(ILOG_FOUND) |
---|
91 | SET(ILOG_INCLUDE_DIRS ${ILOG_CPLEX_INCLUDE_DIR} ${ILOG_CONCERT_INCLUDE_DIR}) |
---|
92 | SET(ILOG_LIBRARIES ${ILOG_CPLEX_LIBRARY} ${ILOG_CONCERT_LIBRARY}) |
---|
93 | IF(CMAKE_SYSTEM_NAME STREQUAL "Linux") |
---|
94 | # SET(CPLEX_LIBRARIES "${CPLEX_LIBRARIES};m;pthread") |
---|
95 | SET(ILOG_LIBRARIES ${ILOG_LIBRARIES} "m" "pthread") |
---|
96 | ENDIF(CMAKE_SYSTEM_NAME STREQUAL "Linux") |
---|
97 | ENDIF(ILOG_FOUND) |
---|
98 | |
---|
99 | MARK_AS_ADVANCED( |
---|
100 | ILOG_CPLEX_LIBRARY ILOG_CPLEX_INCLUDE_DIR ILOG_CPLEX_DLL |
---|
101 | ILOG_CONCERT_LIBRARY ILOG_CONCERT_INCLUDE_DIR ILOG_CONCERT_DLL |
---|
102 | ) |
---|
103 | |
---|
104 | IF(ILOG_FOUND) |
---|
105 | SET(LEMON_HAVE_LP TRUE) |
---|
106 | SET(LEMON_HAVE_MIP TRUE) |
---|
107 | SET(LEMON_HAVE_CPLEX TRUE) |
---|
108 | ENDIF(ILOG_FOUND) |
---|