From ab88a36a76639d0e0efd0af17f8dca805a4e4aa6 Mon Sep 17 00:00:00 2001
From: Guilhem Saurel <guilhem.saurel@laas.fr>
Date: Thu, 8 Aug 2019 10:14:44 +0200
Subject: [PATCH] [wip/py-casadi] ipopt is now an option

---
 py-casadi/Makefile    | 14 ++++++++++++--
 py-casadi/PLIST       |  2 --
 py-casadi/PLIST.ipopt |  2 ++
 3 files changed, 14 insertions(+), 4 deletions(-)
 create mode 100644 py-casadi/PLIST.ipopt

diff --git a/py-casadi/Makefile b/py-casadi/Makefile
index 077c693e..e5106c3a 100644
--- a/py-casadi/Makefile
+++ b/py-casadi/Makefile
@@ -20,7 +20,6 @@ LICENSE=		gnu-lgpl-v3
 MAINTAINER=		gsaurel@laas.fr
 
 CMAKE_ARGS+=		-DPYTHON_PREFIX=${PREFIX}/${PYTHON_SITELIB}
-CMAKE_ARGS+=		-DWITH_IPOPT=ON
 CMAKE_ARGS+=		-DWITH_LAPACK=ON
 CMAKE_ARGS+=		-DWITH_OPENMP=ON
 CMAKE_ARGS+=		-DWITH_PYTHON=ON
@@ -28,10 +27,21 @@ CMAKE_ARGS+=		-DWITH_PYTHON3=$(if $(filter 3,${PYTHON_MAJOR}),ON,OFF)
 CMAKE_ARGS+=		-DWITH_QPOASES=ON
 CMAKE_ARGS+=		-DWITH_THREAD=ON
 
+# ipopt option
+PKG_SUPPORTED_OPTIONS+=	ipopt
+PKG_OPTION_DESCR.ipopt?=Enable coin-or ipopt support
+
+PKG_OPTION_UNSET.ipopt+=CMAKE_ARGS+=	-DWITH_IPOPT=OFF
+
+define PKG_OPTION_SET.ipopt
+  CMAKE_ARGS+=		-DWITH_IPOPT=ON
+  PLIST_SRC=		${PKGDIR}/PLIST ${PKGDIR}/PLIST.ipopt
+  include ../../optimization/ipopt/depend.mk
+endef
+
 #include ../../wip/mk/sysdep/sundials.mk
 include ../../devel/swig/depend.mk
 include ../../math/lapack/depend.mk
-include ../../optimization/ipopt/depend.mk
 include ../../optimization/qpoases/depend.mk
 include ../../mk/sysdep/cmake.mk
 include ../../mk/sysdep/python.mk
diff --git a/py-casadi/PLIST b/py-casadi/PLIST
index 7369e40f..a863e55e 100644
--- a/py-casadi/PLIST
+++ b/py-casadi/PLIST
@@ -141,8 +141,6 @@ lib/libcasadi_linsol_qr.so
 lib/libcasadi_linsol_qr.so.3.5
 lib/libcasadi_linsol_symbolicqr.so
 lib/libcasadi_linsol_symbolicqr.so.3.5
-lib/libcasadi_nlpsol_ipopt.so
-lib/libcasadi_nlpsol_ipopt.so.3.5
 lib/libcasadi_nlpsol_scpgen.so
 lib/libcasadi_nlpsol_scpgen.so.3.5
 lib/libcasadi_nlpsol_sqpmethod.so
diff --git a/py-casadi/PLIST.ipopt b/py-casadi/PLIST.ipopt
new file mode 100644
index 00000000..59fefcfb
--- /dev/null
+++ b/py-casadi/PLIST.ipopt
@@ -0,0 +1,2 @@
+lib/libcasadi_nlpsol_ipopt.so
+lib/libcasadi_nlpsol_ipopt.so.3.5
-- 
GitLab