Backport relevant parts of bugfixes [ad22262328b3], [61fdd06833a6] and [4add05447ca0] to branch 1.2 (#623)
1 AC_DEFUN([LX_CHECK_COIN],
4 AS_HELP_STRING([--with-coin@<:@=PREFIX@:>@], [search for CLP under PREFIX or under the default search paths if PREFIX is not given @<:@default@:>@])
5 AS_HELP_STRING([--without-coin], [disable checking for CLP]),
8 AC_ARG_WITH([coin-includedir],
9 AS_HELP_STRING([--with-coin-includedir=DIR], [search for CLP headers in DIR]),
10 [], [with_coin_includedir=no])
12 AC_ARG_WITH([coin-libdir],
13 AS_HELP_STRING([--with-coin-libdir=DIR], [search for CLP libraries in DIR]),
14 [], [with_coin_libdir=no])
17 if test x"$with_coin" != x"no"; then
18 AC_MSG_CHECKING([for CLP])
20 if test x"$with_coin_includedir" != x"no"; then
21 CLP_CXXFLAGS="-I$with_coin_includedir"
22 elif test x"$with_coin" != x"yes"; then
23 CLP_CXXFLAGS="-I$with_coin/include"
26 if test x"$with_coin_libdir" != x"no"; then
27 CLP_LDFLAGS="-L$with_coin_libdir"
28 elif test x"$with_coin" != x"yes"; then
29 CLP_LDFLAGS="-L$with_coin/lib"
31 CLP_LIBS="-lClp -lCoinUtils -lm"
33 lx_save_cxxflags="$CXXFLAGS"
34 lx_save_ldflags="$LDFLAGS"
36 CXXFLAGS="$CLP_CXXFLAGS"
37 LDFLAGS="$CLP_LDFLAGS"
41 #include <coin/ClpModel.hpp>
43 int main(int argc, char** argv)
50 AC_LINK_IFELSE([$lx_clp_test_prog], [lx_clp_found=yes], [lx_clp_found=no])
53 CXXFLAGS="$lx_save_cxxflags"
54 LDFLAGS="$lx_save_ldflags"
57 if test x"$lx_clp_found" = x"yes"; then
58 AC_DEFINE([LEMON_HAVE_CLP], [1], [Define to 1 if you have CLP.])
60 AC_DEFINE([LEMON_HAVE_LP], [1], [Define to 1 if you have any LP solver.])
69 CLP_LIBS="$CLP_LDFLAGS $CLP_LIBS"
70 AC_SUBST(CLP_CXXFLAGS)
72 AM_CONDITIONAL([HAVE_CLP], [test x"$lx_clp_found" = x"yes"])
76 if test x"$lx_clp_found" = x"yes"; then
77 if test x"$with_coin" != x"no"; then
78 AC_MSG_CHECKING([for CBC])
80 if test x"$with_coin_includedir" != x"no"; then
81 CBC_CXXFLAGS="-I$with_coin_includedir"
82 elif test x"$with_coin" != x"yes"; then
83 CBC_CXXFLAGS="-I$with_coin/include"
86 if test x"$with_coin_libdir" != x"no"; then
87 CBC_LDFLAGS="-L$with_coin_libdir"
88 elif test x"$with_coin" != x"yes"; then
89 CBC_LDFLAGS="-L$with_coin/lib"
91 CBC_LIBS="-lOsi -lCbc -lCbcSolver -lClp -lOsiClp -lCoinUtils -lVol -lOsiVol -lCgl -lm -llapack -lblas"
93 lx_save_cxxflags="$CXXFLAGS"
94 lx_save_ldflags="$LDFLAGS"
96 CXXFLAGS="$CBC_CXXFLAGS"
97 LDFLAGS="$CBC_LDFLAGS"
101 #include <coin/CbcModel.hpp>
103 int main(int argc, char** argv)
110 AC_LINK_IFELSE([$lx_cbc_test_prog], [lx_cbc_found=yes], [lx_cbc_found=no])
113 CXXFLAGS="$lx_save_cxxflags"
114 LDFLAGS="$lx_save_ldflags"
117 if test x"$lx_cbc_found" = x"yes"; then
118 AC_DEFINE([LEMON_HAVE_CBC], [1], [Define to 1 if you have CBC.])
120 AC_DEFINE([LEMON_HAVE_LP], [1], [Define to 1 if you have any LP solver.])
122 AC_DEFINE([LEMON_HAVE_MIP], [1], [Define to 1 if you have any MIP solver.])
132 CBC_LIBS="$CBC_LDFLAGS $CBC_LIBS"
133 AC_SUBST(CBC_CXXFLAGS)
135 AM_CONDITIONAL([HAVE_CBC], [test x"$lx_cbc_found" = x"yes"])