Blob Blame Raw
%global		module		OS

%global		with_asl	1
%global		with_mpi	0

Name:		coin-or-%{module}
Summary:	Optimization Services
Version:	2.10.2
Release:	1%{?dist}
License:	EPL-1.0
URL:		http://projects.coin-or.org/%{module}
Source0:	http://www.coin-or.org/download/pkgsource/%{module}/%{module}-%{version}.tgz
BuildRequires:	atlas-devel
BuildRequires:	bison
BuildRequires:  openblas-devel
BuildRequires:  openblas-srpm-macros
BuildRequires:	bzip2-devel
BuildRequires:	gcc, gcc-c++
BuildRequires:	coin-or-Bcp-devel
BuildRequires:	coin-or-Bonmin-devel
BuildRequires:	coin-or-Cbc-devel
BuildRequires:	coin-or-Clp-devel
BuildRequires:	coin-or-CoinUtils-devel
BuildRequires:	coin-or-Couenne-devel
# Until cppadd* provides coin-or-cppadd*
# https://bugzilla.redhat.com/show_bug.cgi?id=1197488
%if 1
BuildRequires:	cppad-devel
%else
BuildRequires:	coin-or-cppad-devel
%endif
BuildRequires:	coin-or-DyLP-devel
%if %{with_mpi}
BuildRequires:	coin-or-Ipopt-openmpi-devel
%else
BuildRequires:	coin-or-Ipopt-devel
%endif
BuildRequires:	coin-or-Osi-devel
BuildRequires:	coin-or-SYMPHONY-devel
BuildRequires:	coin-or-Vol-devel
BuildRequires:	doxygen
BuildRequires:	flex
BuildRequires:	glpk-devel
BuildRequires:	graphviz
%if %{with_asl}
BuildRequires:	mp-devel
%endif
%if %{with_mpi}
BuildRequires:	openmpi-devel
BuildRequires:	scalapack-openmpi-devel
BuildRequires:	openssh-clients
%endif
BuildRequires:	pkgconf-pkg-config
BuildRequires:	readline-devel
BuildRequires:	zlib-devel

# Install documentation in standard rpm directory
Patch0:		%{name}-docdir.patch

# Bad #define generated if svnversion is available
Patch1:		%{name}-svnversion.patch

# Correct build when regenerating parsers
Patch2:		%{name}-flex-bison.patch

%description
The objective of Optimization Services (OS) is to provide a set of standards
for representing optimization instances, results, solver options, and
communication between clients and solvers in a distributed environment using
Web Services. This COIN-OR project provides source code for libraries and
executable programs that implement OS standards. See the Home Site
http://www.optimizationservices.org/ for more information.

%package	devel
Summary:	Development files for %{name}
Requires:	coin-or-CoinUtils-devel%{?_isa}
Requires:	%{name}%{?_isa} = %{version}-%{release}

%description    devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.

%package	doc
Summary:	Documentation files for %{name}
Requires:	%{name} = %{version}-%{release}
BuildArch:	noarch

%description	doc
This package contains the documentation for %{name}.

%prep
%autosetup -p1 -n %{module}-%{version}

%build
# --with-flex-bison is to force parses regeneration; and ensure the
# package is fully rebuildable from sources.
%configure --enable-openmp --with-flex-bison	\
%if %{with_asl}
	--with-asl-lib="-lasl -lmp -lipoptamplinterface -lbonminampl" \
	--with-asl-incdir="%{_includedir}/asl"
%endif

# Kill rpaths
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
make -j1 all doxydoc

%install
%make_install
rm -f %{buildroot}%{_libdir}/*.la
rm -rf %{buildroot}%{_docdir}/%{name}

%check
%if %{with_mpi}
%_openmpi_load
%endif
LD_LIBRARY_PATH=%{buildroot}%{_libdir} make test

%ldconfig_scriptlets

%files
%license LICENSE
%doc README AUTHORS
%{_bindir}/OSAmplClient
%{_bindir}/OSSolverService
%{_libdir}/*.so.*

%files devel
%{_includedir}/coin/*
%{_libdir}/*.so
%{_libdir}/pkgconfig/*

%files doc
%doc doxydoc/html

%changelog
* Tue Apr 09 2019 Antonio Trande <sagitter@fedoraproject.org> - 2.10.2-1
- Release 2.10.2

* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.10.1-19
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

* Thu Nov 01 2018 Antonio Trande <sagitter@fedoraproject.org> - 2.10.1-18
- Remove Group tags

* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.10.1-17
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild

* Sun Jun 03 2018 Antonio Trande <sagitter@fedoraproject.org> - 2.10.1-16
- Rebuild for Ipopt-3.12.10

* Fri Feb 23 2018 Antonio Trande <sagitter@fedoraproject.org> - 2.10.1-15
- Rebuild for Ipopt-3.12.9
- Rebuild against openblas

* Thu Feb 22 2018 Antonio Trande <sagitter@fedoraproject.org> - 2.10.1-14
- Add gcc gcc-c++ BR

* Fri Feb 16 2018 Antonio Trande <sagitter@fedoraproject.org> - 2.10.1-13
- Use %%ldconfig_scriptlets

* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.10.1-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild

* Thu Nov 02 2017 Antonio Trande <sagitterATfedoraproject.org> - 2.10.1-11
- Rebuild for MUMPS-5.1.2

* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.10.1-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild

* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.10.1-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild

* Thu Jun 29 2017 Antonio Trande <sagitterATfedoraproject.org> - 2.10.1-8
- Define %%check on fedora < 26
- Downgrade make job to 1

* Thu Jun 29 2017 Antonio Trande <sagitterATfedoraproject.org> - 2.10.1-7
- Rebuild for MUMPS-5.1.1 (after a bug-fix)
- Exclude test on armv7hl

* Mon May 15 2017 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.10.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild

* Wed Apr  5 2017 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 2.10.1-5
- Rebuild for newer mumps

* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.10.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild

* Sun Nov 13 2016 Peter Robinson <pbrobinson@fedoraproject.org> 2.10.1-3
- Rebuild (Power64)

* Tue Aug 02 2016 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 2.10.1-2
- Rebuild for newer mumps

* Thu Mar 17 2016 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 2.10.1-1
- Update to latest upstream release
- Correct FTBFS in rawhide (#1307390)

* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.9.3-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild

* Fri Jul 03 2015 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 2.9.3-5
- Correct docs listed in main package (#1239155).

* Sun Jun 21 2015 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 2.9.3-4
- Full rebuild of coin-or stack.
- Correct file listing when asl is disabled.

* Fri Jun 19 2015 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 2.9.3-3
- Remove non functional attempt to prevent overlink.

* Mon Jun 15 2015 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 2.9.3-2
- Build documentation (#894609#c11)
- Do not overlink generated library (#894609#c11)
- Update file list when asl is disabled

* Sun Jun 14 2015 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 2.9.3-1
- Update to latest upstream release
- Regenerate parsers (#894609#c7)

* Mon Apr 13 2015 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 2.9.2-2
- Add missing bzip2, mp and zlib devel build requires
- Remove non needed doxygen build requires

* Sat Apr 11 2015 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 2.9.2-1
- Update to latest upstream release

* Mon Jan 14 2013 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 2.6.0-4
- Update to run make check (#894610#c4).

* Sat Jan 12 2013 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 2.6.0-3
- Rename repackaged tarball.

* Sun Nov 18 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 2.6.0-2
- Rename package to coin-or-OS.
- Do not package Thirdy party data or data without clean license.

* Sat Sep 29 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 2.6.0-1
- Initial coinor-OS spec.