diff --git a/m4/ipopt.m4 b/m4/ipopt.m4 index f6bf43dfd72541329bdf6498055203fba0bee202..a01f5377d4c5525b90f8e1c118fb44ea59bfdca1 100644 --- a/m4/ipopt.m4 +++ b/m4/ipopt.m4 @@ -13,56 +13,53 @@ ac_save_LIBS="$LIBS" ## do nothing if --without-amiramesh is used if test x$with_ipopt != xno ; then - -# is --with-ipopt=bla used? -if test "x$with_ipopt" != x ; then - if ! test -d $with_ipopt; then - AC_MSG_WARN([IPOpt directory $with_ipopt does not exist]) - else - # expand tilde / other stuff - IPOPTROOT=`cd $with_ipopt && pwd` + # is --with-ipopt=bla used? + if test "x$with_ipopt" != x ; then + if ! test -d $with_ipopt; then + AC_MSG_WARN([IPOpt directory $with_ipopt does not exist]) + else + # expand tilde / other stuff + IPOPTROOT=`cd $with_ipopt && pwd` + fi + fi + if test "x$IPOPTROOT" = x; then + # use some default value... + IPOPTROOT="/usr/local/ipopt" fi -fi -if test "x$IPOPTROOT" = x; then - # use some default value... - IPOPTROOT="/usr/local/ipopt" -fi -IPOPT_LIB_PATH="$IPOPTROOT/lib" -IPOPT_INCLUDE_PATH="$IPOPTROOT/include" + IPOPT_LIB_PATH="$IPOPTROOT/lib" + IPOPT_INCLUDE_PATH="$IPOPTROOT/include" -LDFLAGS="$LDFLAGS -L$IPOPT_LIB_PATH" -CPPFLAGS="$CPPFLAGS -I$IPOPT_INCLUDE_PATH" + LDFLAGS="$LDFLAGS -L$IPOPT_LIB_PATH" + CPPFLAGS="$CPPFLAGS -I$IPOPT_INCLUDE_PATH" -# Check whether ipopt is installed at all -if PKG_CONFIG_PATH=$IPOPT_LIB_PATH/pkgconfig $PKG_CONFIG --exists ipopt; then - IPOPT_CPPFLAGS="-I$IPOPT_INCLUDE_PATH" - HAVE_IPOPT="1" -else - AC_MSG_WARN([IPOpt not found in $IPOPT_ROOT]) -fi + # Check whether ipopt is installed at all + if PKG_CONFIG_PATH=$IPOPT_LIB_PATH/pkgconfig $PKG_CONFIG --exists ipopt; then + IPOPT_CPPFLAGS="-I$IPOPT_INCLUDE_PATH" + HAVE_IPOPT="1" + else + AC_MSG_WARN([IPOpt not found in $IPOPT_ROOT]) + fi -AC_LANG_PUSH([C++]) + AC_LANG_PUSH([C++]) -CPPFLAGS="$IPOPT_CPPFLAGS" + CPPFLAGS="$IPOPT_CPPFLAGS" -# if header is found... -if test x$HAVE_IPOPT = x1 ; then - LIBS="$LIBS `PKG_CONFIG_PATH=$IPOPT_LIB_PATH/pkgconfig $PKG_CONFIG --libs ipopt`" - - AC_LINK_IFELSE(AC_LANG_PROGRAM( - [#include "coin/IpIpoptApplication.hpp"], - [Ipopt::SmartPtr<Ipopt::IpoptApplication> app = new Ipopt::IpoptApplication();]), - [IPOPT_LIBS="`PKG_CONFIG_PATH=$IPOPT_LIB_PATH/pkgconfig $PKG_CONFIG --libs-only-l ipopt`" - IPOPT_LDFLAGS="`PKG_CONFIG_PATH=$IPOPT_LIB_PATH/pkgconfig $PKG_CONFIG --libs-only-L ipopt`"], - [HAVE_IPOPT="0" - AC_MSG_WARN(IPOpt not found!)]) -fi + # if header is found... + if test x$HAVE_IPOPT = x1 ; then + LIBS="$LIBS `PKG_CONFIG_PATH=$IPOPT_LIB_PATH/pkgconfig $PKG_CONFIG --libs ipopt`" -AC_LANG_POP([C++]) + AC_LINK_IFELSE(AC_LANG_PROGRAM( + [#include "coin/IpIpoptApplication.hpp"], + [Ipopt::SmartPtr<Ipopt::IpoptApplication> app = new Ipopt::IpoptApplication();]), + [IPOPT_LIBS="`PKG_CONFIG_PATH=$IPOPT_LIB_PATH/pkgconfig $PKG_CONFIG --libs-only-l ipopt`" + IPOPT_LDFLAGS="`PKG_CONFIG_PATH=$IPOPT_LIB_PATH/pkgconfig $PKG_CONFIG --libs-only-L ipopt`"], + [HAVE_IPOPT="0" + AC_MSG_WARN(IPOpt not found!)]) + fi -## end of ipopt check (--without wasn't set) + AC_LANG_POP([C++]) fi with_ipopt="no"