|
Orion Poplawski |
7af469f |
%global commit f34afb3bf24ceb51c8fdd6a79ea0b6b6b209dc38
|
|
|
423456a |
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
|
|
423456a |
|
|
Orion Poplawski |
7af469f |
# Currenlty uses pip to install sphinx 1.3.1 and breathe
|
|
Orion Poplawski |
7af469f |
# Might be able to make it work if sphinx is updated
|
|
Orion Poplawski |
7af469f |
%global with_doc 0
|
|
|
423456a |
%global with_gecode 1
|
|
|
423456a |
%global with_jacop 1
|
|
|
423456a |
|
|
|
423456a |
Name: mp
|
|
Orion Poplawski |
7af469f |
Version: 2.0.3
|
|
Orion Poplawski |
7af469f |
Release: 0.1.git%{shortcommit}%{?dist}
|
|
|
423456a |
License: MIT and BSD
|
|
|
febb841 |
Summary: An open-source library for mathematical programming
|
|
|
423456a |
URL: https://github.com/ampl/mp
|
|
|
423456a |
Source0: https://github.com/ampl/mp/archive/%{commit}/mp-%{commit}.tar.gz
|
|
|
423456a |
Source1: mp.module.in
|
|
|
423456a |
Requires: environment-modules
|
|
|
a66ce6b |
BuildRequires: atlas-devel
|
|
|
423456a |
BuildRequires: cmake
|
|
|
423456a |
%if %{with_gecode}
|
|
|
423456a |
BuildRequires: gecode-devel
|
|
|
423456a |
%endif
|
|
|
423456a |
%if %{with_jacop}
|
|
|
423456a |
BuildRequires: jacop
|
|
|
423456a |
BuildRequires: java-devel
|
|
|
423456a |
%endif
|
|
|
423456a |
# Need git to satisfy a cmake test if building modules (gsl)
|
|
|
423456a |
BuildRequires: git
|
|
|
423456a |
BuildRequires: gsl-devel
|
|
Orion Poplawski |
7af469f |
%if %{with_doc}
|
|
|
423456a |
BuildRequires: doxygen
|
|
|
423456a |
BuildRequires: python-sphinx
|
|
Paulo Andrade |
2c003e2 |
#BuildRequires: python-sphinx-latex
|
|
Orion Poplawski |
7af469f |
BuildRequires: /usr/bin/virtualenv
|
|
Orion Poplawski |
7af469f |
%endif
|
|
|
423456a |
BuildRequires: unixODBC-devel
|
|
|
423456a |
|
|
|
423456a |
%description
|
|
|
423456a |
An open-source library for mathematical programming.
|
|
|
423456a |
Features
|
|
|
423456a |
* Reusable high-performance .nl reader
|
|
|
423456a |
* Efficient type-safe C++ API for connecting solvers to AMPL and
|
|
|
423456a |
other systems: source
|
|
|
423456a |
* Interfaces to solvers supporting AMPL extensions for logic and
|
|
|
423456a |
constraint programming:
|
|
|
423456a |
* IBM ILOG CPLEX and CPLEX CP Optimizer (ilogcp)
|
|
|
423456a |
* Gecode
|
|
|
423456a |
* JaCoP
|
|
|
423456a |
* Interfaces to the following solvers:
|
|
|
423456a |
* LocalSolver
|
|
|
423456a |
* Sulum
|
|
|
423456a |
* Interfaces to other solvers via AMPL Solver Library
|
|
|
423456a |
* Cross-platform build support with CMake and continuous
|
|
|
423456a |
integration systems. This includes third-party solvers and
|
|
|
423456a |
libraries (COIN-OR solvers with CMake support are available
|
|
|
423456a |
in the ampl/coin repository).
|
|
|
423456a |
* AMPLGSL, an AMPL function library providing access to the GNU
|
|
|
423456a |
Scientific Library (GSL) functions. See the AMPLGSL
|
|
|
423456a |
documentation.
|
|
|
423456a |
* Database support on Linux and MacOS X. See Database and
|
|
|
423456a |
spreadsheet connection guide.
|
|
|
423456a |
* SMPSWriter, a converter from deterministic equivalent of a
|
|
|
423456a |
two-stage stochastic programming (SP) problem written in AMPL
|
|
|
423456a |
to an SP problem in SMPS format.
|
|
|
423456a |
|
|
|
423456a |
%package devel
|
|
|
423456a |
Summary: Development files for %{name}
|
|
|
423456a |
Group: Development/Libraries
|
|
|
423456a |
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
|
423456a |
|
|
|
423456a |
%description devel
|
|
|
423456a |
This package contains the header files and development documentation
|
|
|
423456a |
for %{name}.
|
|
|
423456a |
|
|
|
423456a |
%prep
|
|
|
423456a |
%setup -q -n %{name}-%{commit}
|
|
|
423456a |
%if %{with_jacop}
|
|
|
423456a |
ln -s %{_javadir}/jacop/jacop.jar thirdparty/jacop/jacop-`rpm -q --qf "%%{VERSION}" jacop`.jar
|
|
|
423456a |
%endif
|
|
|
423456a |
|
|
|
423456a |
%build
|
|
|
a66ce6b |
%if 0%{?fedora} > 20 || 0%{?rhel} > 6
|
|
|
a66ce6b |
export LIBS="-lgsl -L%{_libdir}/atlas -lsatlas"
|
|
|
a66ce6b |
%else
|
|
|
a66ce6b |
export LIBS="-lgsl L%{_libdir}/atlas -lcblas -latlas"
|
|
|
a66ce6b |
%endif
|
|
|
a66ce6b |
|
|
|
423456a |
mkdir build
|
|
|
423456a |
pushd build
|
|
Orion Poplawski |
4f3ae79 |
BUILD="cplex,gsl,ilogcp,localsolver,smpswriter,sulum"
|
|
|
423456a |
%if %{with_gecode}
|
|
|
423456a |
BUILD="$BUILD,gecode"
|
|
|
423456a |
%endif
|
|
|
423456a |
%if %{with_jacop}
|
|
|
423456a |
BUILD="$BUILD,jacop"
|
|
|
423456a |
%endif
|
|
|
423456a |
%cmake \
|
|
|
423456a |
-DCMAKE_INSTALL_PREFIX:PATH=%{_libdir}/%{name} \
|
|
|
423456a |
-DCMAKE_SHARED_LINKER_FLAGS="%{__global_ldflags} -Wl,--as-needed" \
|
|
|
423456a |
-DBUILD_SHARED_LIBS=ON \
|
|
|
423456a |
-DBUILD=$BUILD \
|
|
|
423456a |
..
|
|
|
423456a |
make %{?_smp_mflags}
|
|
Orion Poplawski |
7af469f |
%if %{with_doc}
|
|
|
423456a |
make doc
|
|
Orion Poplawski |
7af469f |
%endif
|
|
|
423456a |
popd
|
|
|
423456a |
|
|
|
423456a |
%install
|
|
|
423456a |
make -C build install DESTDIR=%{buildroot}
|
|
|
423456a |
|
|
|
423456a |
mkdir -p %{buildroot}%{_datadir}/Modules/modulefiles
|
|
|
423456a |
sed 's#@BINDIR@#'%{_libdir}/%{name}'#g;' < %{SOURCE1} > \
|
|
|
febb841 |
%{buildroot}%{_datadir}/Modules/modulefiles/%{name}-%{_arch}
|
|
|
423456a |
rm -r %{buildroot}%{_libdir}/%{name}/share
|
|
|
423456a |
mv %{buildroot}%{_libdir}/%{name}/include %{buildroot}%{_prefix}
|
|
|
423456a |
rm %{buildroot}%{_libdir}/%{name}/lib/*.a
|
|
|
423456a |
mv %{buildroot}%{_libdir}/%{name}/lib/*.so* %{buildroot}%{_libdir}
|
|
|
423456a |
mkdir -p %{buildroot}%{_docdir}/%{name}
|
|
|
423456a |
cp -p README.rst %{buildroot}%{_docdir}/%{name}
|
|
Orion Poplawski |
7af469f |
%if %{with_doc}
|
|
Orion Poplawski |
7af469f |
cp -rp build/doc/amplgsl build/doc/*.rst %{buildroot}%{_docdir}/%{name}
|
|
Orion Poplawski |
7af469f |
%endif
|
|
|
423456a |
rmdir %{buildroot}%{_libdir}/%{name}/lib/
|
|
|
423456a |
|
|
|
423456a |
%check
|
|
|
423456a |
make -C build test
|
|
|
423456a |
|
|
|
423456a |
%post -p /sbin/ldconfig
|
|
|
423456a |
|
|
|
423456a |
%postun -p /sbin/ldconfig
|
|
|
423456a |
|
|
|
423456a |
%files
|
|
Orion Poplawski |
7af469f |
%dir %{_docdir}/%{name}
|
|
|
423456a |
%license LICENSE.rst
|
|
Orion Poplawski |
7af469f |
%{_docdir}/%{name}/README.rst
|
|
|
423456a |
%dir %{_libdir}/%{name}
|
|
|
423456a |
%{_libdir}/%{name}/bin
|
|
|
423456a |
%{_libdir}/*.so.*
|
|
|
423456a |
%{_datadir}/Modules/modulefiles/%{name}-%{_arch}
|
|
|
423456a |
|
|
|
423456a |
%files devel
|
|
Orion Poplawski |
7af469f |
%if %{with_doc}
|
|
Orion Poplawski |
7af469f |
%{_docdir}/%{name}/*
|
|
|
423456a |
%exclude %{_docdir}/%{name}/README.rst
|
|
Orion Poplawski |
7af469f |
%endif
|
|
|
423456a |
%{_libdir}/*.so
|
|
|
423456a |
%{_includedir}/asl
|
|
|
423456a |
%{_includedir}/mp
|
|
|
423456a |
|
|
|
423456a |
%changelog
|
|
Orion Poplawski |
7af469f |
* Thu Nov 19 2015 Orion Poplawski <orion@cora.nwra.com> - 2.0.3-0.1.gitf34afb3
|
|
Orion Poplawski |
7af469f |
- Update to current git master for gsl 2 support
|
|
Orion Poplawski |
7af469f |
- Disable doc build for now
|
|
Orion Poplawski |
7af469f |
|
|
|
8236891 |
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3.0-7
|
|
|
8236891 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
|
|
8236891 |
|
|
|
274e945 |
* Sun Jun 14 2015 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 1.3.0-6
|
|
|
274e945 |
- Rebuild for new gecode.
|
|
|
274e945 |
|
|
|
7654787 |
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 1.3.0-5
|
|
|
7654787 |
- Rebuilt for GCC 5 C++11 ABI change
|
|
|
7654787 |
|
|
|
a66ce6b |
* Sun Feb 22 2015 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 1.3.0-4
|
|
|
a66ce6b |
- Add recomended extra libs for gsl.
|
|
|
a66ce6b |
|
|
Paulo Andrade |
069dff6 |
* Wed Jan 28 2015 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 1.3.0-3
|
|
|
4af1ec4 |
- Enable the jacop interface.
|
|
Paulo Andrade |
069dff6 |
- Use a better patch for non x86 fpinit (#1186162)
|
|
Paulo Andrade |
2c003e2 |
- Correct check on bigendian.
|
|
|
4af1ec4 |
|
|
|
423456a |
* Fri Jan 23 2015 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 1.3.0-2
|
|
|
423456a |
- Use the license macro for the LICENSE.rst file (#1181793#c3)
|
|
|
423456a |
- environment-modules is a Requires not BuildRequires (#1181793#c3)
|
|
|
423456a |
|
|
|
423456a |
* Tue Jan 13 2015 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 1.3.0-1
|
|
|
423456a |
- Update package to use new 1.3.0 release
|
|
|
423456a |
|
|
|
423456a |
* Mon Dec 22 2014 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - v20141006-4
|
|
|
423456a |
- Update to version that works with rawide gecode
|
|
|
423456a |
- Add jacop support, works but disabled, missing from rawhide
|
|
|
423456a |
- Build smpswriter
|
|
|
423456a |
|
|
|
423456a |
* Fri Dec 19 2014 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - v20141006-3
|
|
|
423456a |
- Switch to newer git commit as base of package
|
|
|
423456a |
- Add conditional to build gecode
|
|
|
423456a |
- Build documentation
|
|
|
423456a |
|
|
|
423456a |
* Wed Dec 17 2014 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - v20141006-2
|
|
|
423456a |
- Use environment-modules to follow upstream conventions.
|
|
|
423456a |
|
|
|
423456a |
* Sat Dec 13 2014 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - v20141006-1
|
|
|
423456a |
- Initial mp spec.
|