%define vers 0.6.3 %define date 20091028 %define name polybori %define libname %mklibname %{name} 0 %define devname %mklibname %{name} -d %define staticdevname %mklibname %{name} -d -s %define polyboridir %{_datadir}/%{name} Name: %{name} Group: Sciences/Mathematics License: GPL Summary: PolyBoRi is a C++ library for Polynomials over Boolean Rings Epoch: 1 Version: %{vers}.%{date} Release: %mkrel 7 Source0: polybori-%{vers}-%{date}.tar.bz2 URL: http://polybori.sourceforge.net/ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot BuildRequires: doxygen BuildRequires: scons BuildRequires: boost-devel BuildRequires: ntl-devel BuildRequires: libm4ri-devel BuildRequires: tex4ht BuildRequires: tetex-latex %py_requires -d Requires: ipython >= 0.6 Patch0: polybori-%{vers}-%{date}-sagemath.patch Patch1: polybori-0.6.3-20091028-static-init-active_ring.patch %description PolyBoRi is implemented as a C++ library for Polynomials over Boolean Rings, which provides high-level data types for Boolean polynomials. A python-interface yields extensible algorithms for computing Gröbner bases over Boolean Rings. %files %defattr(-,root,root) %{_bindir}/ipbori %dir %{polyboridir} %{polyboridir}/* %{_mandir}/man1/* ######################################################################## %package -n python-%{name} Group: Development/Python Summary: Python bindings for PolyBoRi %description -n python-%{name} PolyBoRi is a C++ library for Polynomials over Boolean Rings. This package provides python bindings to %{name}. %files -n python-%{name} %defattr(-,root,root) %dir %{py_platlibdir}/%{name} %{py_platlibdir}/%{name}/* ######################################################################## %package -n %{libname} Group: System/Libraries Summary: PolyBoRi runtime libraries Provides: lib%{name} = %{version}-%{release} %description -n %{libname} PolyBoRi runtime libraries. %files -n %{libname} %defattr(-,root,root) %{_libdir}/lib*.so.* ######################################################################## %package -n %{devname} Group: Development/Other Summary: PolyBoRi development files Provides: %{name}-devel = %{version}-%{release} Requires: lib%{name} = %{version}-%{release} %description -n %{devname} PolyBoRi development files. %files -n %{devname} %defattr(-,root,root) %dir %{_includedir}/%{name} %{_includedir}/%{name}/* %dir %{_includedir}/cudd %{_includedir}/cudd/* %{_libdir}/lib*.so ######################################################################## %package -n %{staticdevname} Group: Development/Other Summary: PolyBoRi static libraries Provides: %{name}-static-devel = %{version}-%{release} Requires: lib%{name} = %{version}-%{release} Requires: %{name}-devel = %{version}-%{release} %description -n %{staticdevname} PolyBoRi static libraries files. %files -n %{staticdevname} %defattr(-,root,root) %{_libdir}/*.a ######################################################################## %package doc Group: Development/Other Summary: PolyBoRi documentation %description doc PolyBoRi is implemented as a C++ library for Polynomials over Boolean Rings, which provides high-level data types for Boolean polynomials. A python-interface yields extensible algorithms for computing Gröbner bases over Boolean Rings. %files doc %defattr(-,root,root) %dir %{_docdir}/%{name} %{_docdir}/%{name}/* ######################################################################## %prep %setup -q -n polybori-%{vers}-%{date}/src/polybori-0.6 %patch0 -p3 %patch1 -p3 perl -pi -e 's|stub\.c||;' Cudd/util/Makefile %build %scons prepare-install CCFLAGS="%{optflags}" CPPDEFINES=UNIX=1 %scons prepare-devel CCFLAGS="%{optflags}" CPPDEFINES=UNIX=1 %install %scons install devel-install CCFLAGS="%{optflags}" \ PREFIX=%{buildroot}%{_prefix} \ PYINSTALLPREFIX=%{buildroot}%{py_platlibdir} \ INSTALLDIR=%{buildroot}%{polyboridir} \ PYPREFIX=%{py_prefix} \ PYTHON=%{__python} \ DOCDIR=%{buildroot}%{_docdir}/%{name} \ MANDIR=%{buildroot}%{_mandir} \ LIBS="-lntl" \ CPPDEFINES=UNIX=1 chmod a+r -R %{buildroot} # move libraries to %{_libdir} if [ %{_prefix}/lib != %{_libdir} ]; then mkdir -p %{buildroot}/%{_libdir} mv -f %{buildroot}%{_prefix}/lib/lib* %{buildroot}/%{_libdir} fi perl -pi -e 's|%{buildroot}||g;' %{buildroot}%{polyboridir}/flags.conf %clean rm -rf %{buildroot} %changelog * Mon Feb 08 2010 Anssi Hannula <anssi@mandriva.org> 1:0.6.3.20091028-7mdv2010.1 + Revision: 501882 - rebuild for new boost - remove unneeded explicit dependency on boost; autodependencies work correctly * Thu Feb 04 2010 Paulo Andrade <pcpa@mandriva.com.br> 1:0.6.3.20091028-6mdv2010.1 + Revision: 500942 - Rediff sagemath patch * Wed Feb 03 2010 Funda Wang <fwang@mandriva.org> 1:0.6.3.20091028-5mdv2010.1 + Revision: 500340 - rebuild for new boost * Mon Feb 01 2010 Paulo Andrade <pcpa@mandriva.com.br> 1:0.6.3.20091028-4mdv2010.1 + Revision: 499392 - Statically initialize global BooleEnv::ring_type active_ring * Sat Jan 30 2010 Paulo Andrade <pcpa@mandriva.com.br> 1:0.6.3.20091028-3mdv2010.1 + Revision: 498369 - Rebuild forcing use of Mandriva default optflags * Wed Jan 27 2010 Paulo Andrade <pcpa@mandriva.com.br> 1:0.6.3.20091028-2mdv2010.1 + Revision: 497395 - Rebuild and remove no longer needed _disable_ld_as_needed * Fri Jan 22 2010 Paulo Andrade <pcpa@mandriva.com.br> 1:0.6.3.20091028-1mdv2010.1 + Revision: 495108 - Update to polybori 0.6.3 from 20091028 * Tue Nov 17 2009 Paulo Andrade <pcpa@mandriva.com.br> 1:0.6.3.20090827-1mdv2010.1 + Revision: 466704 - Update to polybori 0.6.3 from 20090827 - Merge sage patches into a single one - Install python files in arch specific directory as there is a shared object - Correct problem with documentation being installed twice - Correct /usr/share/polybori/flags.conf (that is now used by sage 4.2 build) - Correct ipbori to setup sage environment * Fri Sep 04 2009 Paulo Andrade <pcpa@mandriva.com.br> 1:0.5rc.p9-2mdv2010.0 + Revision: 431728 - allow rebuild when sagemath is installed - link libraries with ntl * Fri Sep 04 2009 Paulo Andrade <pcpa@mandriva.com.br> 1:0.5rc.p9-1mdv2010.0 + Revision: 429130 - update to patchlevel 9 + Funda Wang <fwang@mandriva.org> - rebuild for new libboost * Wed Jul 15 2009 Paulo Andrade <pcpa@mandriva.com.br> 1:0.5-3mdv2010.0 + Revision: 396471 - Update to latest upstream patchlevel 8. * Thu May 14 2009 Paulo Andrade <pcpa@mandriva.com.br> 1:0.5-1mdv2010.0 + Revision: 375857 - Use an older version of polybori that works with sagemath. * Thu May 14 2009 Paulo Andrade <pcpa@mandriva.com.br> 0.6-2mdv2010.0 + Revision: 375808 - Initial import of polybori version 0.6. PolyBoRi is a C++ library for Polynomials over Boolean Rings http://polybori.sourceforge.net/ - polybori