aboutsummaryrefslogtreecommitdiff
path: root/math/ipopt
diff options
context:
space:
mode:
authorKurt Jaeger <pi@FreeBSD.org>2014-09-01 18:09:41 +0000
committerKurt Jaeger <pi@FreeBSD.org>2014-09-01 18:09:41 +0000
commit6b1e401278c15f76dc3b10924a243df0e34ebafe (patch)
treeed72ff243bc453bcde76699b349d20b034dbf9af /math/ipopt
parent9b0cbd2ab6ad94417036aa1088a91ed77f27c0ef (diff)
downloadports-6b1e401278c15f76dc3b10924a243df0e34ebafe.tar.gz
ports-6b1e401278c15f76dc3b10924a243df0e34ebafe.zip
Notes
Diffstat (limited to 'math/ipopt')
-rw-r--r--math/ipopt/Makefile60
-rw-r--r--math/ipopt/distinfo6
-rw-r--r--math/ipopt/pkg-descr22
-rw-r--r--math/ipopt/pkg-plist67
4 files changed, 155 insertions, 0 deletions
diff --git a/math/ipopt/Makefile b/math/ipopt/Makefile
new file mode 100644
index 000000000000..5d89fa53c69b
--- /dev/null
+++ b/math/ipopt/Makefile
@@ -0,0 +1,60 @@
+# Created by: Pedro Giffuni
+# $FreeBSD$
+
+PORTNAME= Ipopt
+PORTVERSION= 3.11.9
+CATEGORIES= math
+MASTER_SITES= http://www.coin-or.org/download/source/Ipopt/:srcs \
+ http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/OLD/:metis \
+ http://mumps.enseeiht.fr/:mumps
+DISTFILES= ${PORTNAME}-${PORTVERSION}.tgz:srcs \
+ metis-4.0.3.tar.gz:metis MUMPS_4.10.0.tar.gz:mumps
+EXTRACT_ONLY= ${PORTNAME}-${PORTVERSION}${EXTRACT_SUFX}
+
+MAINTAINER= pfg@FreeBSD.org
+COMMENT= Software package for large-scale nonlinear optimization
+
+LICENSE= EPL
+
+LIB_DEPENDS= liblapack.so:${PORTSDIR}/math/lapack
+
+USES= fortran libtool pkgconfig tar:tgz
+GNU_CONFIGURE= yes
+USE_LDCONFIG= yes
+INSTALL_TARGET= install-strip
+
+CONFIGURE_ENV+= PKG_CONFIG_PATH=${STAGEDIR}${PREFIX}/libdata/pkgconfig
+CONFIGURE_ARGS= --with-lapack-lib="-llapack -L/${LOCALBASE}/lib" \
+ --with-lapack-incdir=${LOCALBASE}/include/lapack
+
+CXXFLAGS+= -ffast-math
+
+OPTIONS_DEFINE= DEBUG DOCS
+PORTDOCS= *
+
+.include <bsd.port.options.mk>
+
+.if ${PORT_OPTIONS:MDEBUG}
+CXXFLAGS+= -fomit-frame-pointer
+.endif
+
+post-patch::
+ @${FIND} ${WRKSRC} -name Makefile.in | ${XARGS} ${REINPLACE_CMD} -e \
+ 's|$$(libdir)/pkgconfig|${PREFIX}/libdata/pkgconfig|' \
+ -e 's|$$(DESTDIR)$$(addlibsdir)|$$(addlibsdir)|g'
+post-extract:
+ @(${ECHO} "Extracting Metis and Mumps ThirdParty libraries ..." )
+ @(cd ${WRKSRC}/ThirdParty/Metis && ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} ${DISTDIR}/metis-4.0.3.tar.gz ${EXTRACT_AFTER_ARGS});
+ @(${MV} ${WRKSRC}/ThirdParty/Metis/metis-4.0.? ${WRKSRC}/ThirdParty/Metis/metis-4.0);
+ @(cd ${WRKSRC}/ThirdParty/Mumps && ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} ${DISTDIR}/MUMPS_4.10.0.tar.gz ${EXTRACT_AFTER_ARGS});
+ @(${MV} ${WRKSRC}/ThirdParty/Mumps/MUMPS_4.10.0 ${WRKSRC}/ThirdParty/Mumps/MUMPS);
+
+post-install:
+ ${MV} ${STAGEDIR}${PREFIX}/share/coin/doc ${STAGEDIR}${DOCSDIR}
+ ${RM} -rf ${STAGEDIR}${PREFIX}/share/coin
+
+check regression-test test: build
+ @(cd ${WRKSRC}; ${SETENV} ${MAKE_ENV} ${MAKE} ${_MAKE_JOBS} \
+ ${MAKE_ARGS} test)
+
+.include <bsd.port.mk>
diff --git a/math/ipopt/distinfo b/math/ipopt/distinfo
new file mode 100644
index 000000000000..42f7ace1ca5a
--- /dev/null
+++ b/math/ipopt/distinfo
@@ -0,0 +1,6 @@
+SHA256 (Ipopt-3.11.9.tgz) = 84991b13ce22e4a4aa0756a5db290c2b811bf82ff4e9124d1a71867118e6ab2d
+SIZE (Ipopt-3.11.9.tgz) = 4750090
+SHA256 (metis-4.0.3.tar.gz) = 5efa35de80703c1b2c4d0de080fafbcf4e0d363a21149a1ad2f96e0144841a55
+SIZE (metis-4.0.3.tar.gz) = 522624
+SHA256 (MUMPS_4.10.0.tar.gz) = d0f86f91a74c51a17a2ff1be9c9cee2338976f13a6d00896ba5b43a5ca05d933
+SIZE (MUMPS_4.10.0.tar.gz) = 2481516
diff --git a/math/ipopt/pkg-descr b/math/ipopt/pkg-descr
new file mode 100644
index 000000000000..08168389511f
--- /dev/null
+++ b/math/ipopt/pkg-descr
@@ -0,0 +1,22 @@
+Ipopt (Interior Point OPTimizer, pronounced eye-pea-Opt) is a software
+package for large-scale nonlinear optimization.
+
+Ipopt is written in C++ and is released as open source code under the
+Eclipse Public License (EPL). It is available from the COIN-OR
+initiative. The code has been written by Carl Laird and Andreas Wchter,
+who is the COIN project leader for Ipopt.
+
+The Ipopt distribution can be used to generate a library that can be
+linked to one's own C++, C, or Fortran code, as well as a solver
+executable for the AMPL modeling environment. The package includes
+interfaces to CUTEr optimization testing environment, as well as the
+MATLAB and R programming environments. IPOPT can be used on Linux/UNIX,
+Mac OS X and Windows platforms.
+
+An excellent reference for this library can be found in:
+
+Wachter and L. T. Biegler, On the Implementation of a Primal-Dual Interior
+Point Filter Line Search Algorithm for Large-Scale Nonlinear Programming,
+Mathematical Programming 106(1), pp. 25-57, 2006
+
+WWW: https://projects.coin-or.org/Ipopt
diff --git a/math/ipopt/pkg-plist b/math/ipopt/pkg-plist
new file mode 100644
index 000000000000..78906bfdef67
--- /dev/null
+++ b/math/ipopt/pkg-plist
@@ -0,0 +1,67 @@
+include/coin/HSLLoader.h
+include/coin/IpAlgTypes.hpp
+include/coin/IpBlas.hpp
+include/coin/IpCachedResults.hpp
+include/coin/IpCompoundVector.hpp
+include/coin/IpDebug.hpp
+include/coin/IpDenseVector.hpp
+include/coin/IpException.hpp
+include/coin/IpExpansionMatrix.hpp
+include/coin/IpIpoptApplication.hpp
+include/coin/IpIpoptCalculatedQuantities.hpp
+include/coin/IpIpoptData.hpp
+include/coin/IpIpoptNLP.hpp
+include/coin/IpIteratesVector.hpp
+include/coin/IpJournalist.hpp
+include/coin/IpLapack.hpp
+include/coin/IpMatrix.hpp
+include/coin/IpNLP.hpp
+include/coin/IpNLPScaling.hpp
+include/coin/IpObserver.hpp
+include/coin/IpOptionsList.hpp
+include/coin/IpOrigIpoptNLP.hpp
+include/coin/IpReferenced.hpp
+include/coin/IpRegOptions.hpp
+include/coin/IpReturnCodes.h
+include/coin/IpReturnCodes.hpp
+include/coin/IpReturnCodes.inc
+include/coin/IpReturnCodes_inc.h
+include/coin/IpSmartPtr.hpp
+include/coin/IpSolveStatistics.hpp
+include/coin/IpStdCInterface.h
+include/coin/IpSymMatrix.hpp
+include/coin/IpTNLP.hpp
+include/coin/IpTNLPAdapter.hpp
+include/coin/IpTNLPReducer.hpp
+include/coin/IpTaggedObject.hpp
+include/coin/IpTimedTask.hpp
+include/coin/IpTimingStatistics.hpp
+include/coin/IpTypes.hpp
+include/coin/IpUtils.hpp
+include/coin/IpVector.hpp
+include/coin/IpoptConfig.h
+include/coin/PardisoLoader.h
+include/coin/ThirdParty/defs.h
+include/coin/ThirdParty/dmumps_c.h
+include/coin/ThirdParty/macros.h
+include/coin/ThirdParty/metis.h
+include/coin/ThirdParty/mpi.h
+include/coin/ThirdParty/mumps_c_types.h
+include/coin/ThirdParty/mumps_compat.h
+include/coin/ThirdParty/proto.h
+include/coin/ThirdParty/rename.h
+include/coin/ThirdParty/struct.h
+@dirrm include/coin/ThirdParty
+@dirrmtry include/coin
+lib/libcoinmetis.so
+lib/libcoinmetis.so.1
+lib/libcoinmetis.so.1.2.10
+lib/libcoinmumps.so
+lib/libcoinmumps.so.1
+lib/libcoinmumps.so.1.4.13
+lib/libipopt.so
+lib/libipopt.so.1
+lib/libipopt.so.1.9.9
+libdata/pkgconfig/coinmetis.pc
+libdata/pkgconfig/coinmumps.pc
+libdata/pkgconfig/ipopt.pc