Blob Blame History Raw
Name:           zn_poly
Version:        0.9
Release:        16%{?dist}.2
Summary:        C library for polynomial arithmetic

Group:          Development/Libraries
# see COPYING to see, which file has which license
License:        (GPLv2 or GPLv3) and GPLv2+ and LGPLv2+
URL:            http://cims.nyu.edu/~harvey/code/zn_poly/
Source0:        http://cims.nyu.edu/~harvey/code/zn_poly/releases/zn_poly-%{version}.tar.gz
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

BuildRequires:  python
BuildRequires:  gmp-devel

%description
zn_poly is a C library for polynomial arithmetic in Z/nZ[x], where n is
any modulus that fits into an unsigned long.


%package devel
Summary:        Development files for %{name}
Group:          Development/Libraries
Requires:       %{name} = %{version}-%{release}
%description devel
zn_poly is a C library for polynomial arithmetic in Z/nZ[x], where n is
any modulus that fits into an unsigned long.

This package contains the development files.


%package static
Summary:        Development files for %{name}
Group:          Development/Libraries
Requires:       %{name}-devel = %{version}-%{release}
%description static
zn_poly is a C library for polynomial arithmetic in Z/nZ[x], where n is
any modulus that fits into an unsigned long.

This package contains the static library.


%prep
%setup -q

sed -i "s|typedef unsigned long  ulong;|\/\/typedef unsigned long  ulong;|g" include/zn_poly.h


%build
python makemakefile.py --cflags="%{optflags} -fPIC" --prefix=%{_prefix} \
    --gmp-prefix=%{_prefix} \
    --ntl-prefix=%{_prefix} \
    --flint-prefix=%{_prefix} \
    > makefile

make all libzn_poly.so libzn_poly-%{version}.so %{?_smp_mflags}


%install
rm -rf %{buildroot}
# install manually, because makefile does not honor DESTDIR
mkdir -p %{buildroot}%{_includedir}/zn_poly/
mkdir -p %{buildroot}%{_libdir}
cp -pv include/*.h %{buildroot}%{_includedir}/zn_poly/
cp -pv libzn_poly* %{buildroot}%{_libdir}

# make libzn_poly.so a symlink
pushd %{buildroot}%{_libdir}
rm libzn_poly.so
ln -s libzn_poly-%{version}.so libzn_poly.so
popd

%check
make test
./test/test all


%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig


%clean
rm -rf %{buildroot}


%files
%defattr(-,root,root,-)
%doc COPYING gpl-?.0.txt
%doc demo/bernoulli/bernoulli.c doc/REFERENCES
%{_libdir}/libzn_poly-%{version}.so


%files devel
%defattr(-,root,root,-)
%{_libdir}/libzn_poly.so
%{_includedir}/zn_poly/


%files static
%defattr(-,root,root,-)
%{_libdir}/libzn_poly.a


%changelog
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.9-16.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild

* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.9-15.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild

* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.9-14.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild

* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.9-13.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild

* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9-12.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild

* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9-11.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild

* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9-10.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild

* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9-9.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild

* Fri Feb 15 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9-8.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild

* Sun Jul 22 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9-7.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild

* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9-6.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild

* Wed Oct 26 2011 Marcela Mašláňová <mmaslano@redhat.com> - 0.9-5.2
- rebuild with new gmp without compat lib

* Wed Oct 12 2011 Peter Schiffer <pschiffe@redhat.com> - 0.9-5.1
- rebuild with new gmp

* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild

* Sun Jun 27 2010 Thomas Spura <tomspur@fedoraproject.org> - 0.9-4
- revert last change (fix flint instead)

* Sun Jun 27 2010 Thomas Spura <tomspur@fedoraproject.org> - 0.9-3
- flint wants to have headers in %%{_includedir}/zn_poly/src/

* Sun Jun 27 2010 Thomas Spura <tomspur@fedoraproject.org> - 0.9-2
- make libzn_poly.so a symlink to libzn_poly-%%{version}.so
- use directly makemakefile.py instead of configure
- preserve timestamps

* Sat Jun 26 2010 Thomas Spura <tomspur@fedoraproject.org> - 0.9-1
- initial package