# This package is arch-specific, because it computes properties of the system
# (such as endianness) and stores them in generated header files. Hence, the
# files DO vary by platform. However, there is no actual compiled code, so
# turn off debuginfo generation.
%global debug_package %{nil}
Name: fflas-ffpack
Version: 2.3.2
Release: 4%{?dist}
Summary: Finite field linear algebra subroutines
License: LGPLv2+
URL: http://linbox-team.github.io/fflas-ffpack/
Source0: https://github.com/linbox-team/%{name}/releases/download/v%{version}/fflas_ffpack-%{version}.tar.bz2
# Sagemath patch to avoid compilation errors due to "const void" type
Patch0: %{name}-const-void.patch
BuildRequires: doxygen-latex
BuildRequires: gcc-c++
BuildRequires: ghostscript
BuildRequires: givaro-devel
BuildRequires: gmp-devel
BuildRequires: libtool
BuildRequires: openblas-devel
BuildRequires: tex(stmaryrd.sty)
# Although there are references to linbox-devel files in this package,
# linbox-devel Requires fflas-ffpack-devel, not the other way around.
%description
The FFLAS-FFPACK library provides functionality for dense linear algebra
over word size prime finite fields.
%package devel
Summary: Header files for developing with fflas-ffpack
Requires: givaro-devel%{?_isa}, gmp-devel%{?_isa}, openblas-devel%{?_isa}
%description devel
The FFLAS-FFPACK library provides functionality for dense linear algebra
over word size prime finite fields. This package provides the header
files for developing applications that use FFLAS-FFPACK.
%package doc
Summary: API documentation for fflas-ffpack
Requires: %{name}-devel%{?_isa} = %{version}-%{release}
Provides: bundled(jquery)
%description doc
API documentation for fflas-ffpack.
%prep
%autosetup -p0 -n fflas_ffpack-%{version}
# Do not use env
sed -i 's,/usr/bin/env bash,/bin/bash,' fflas-ffpack-config.in
# Remove parts of the configure script that select non-default architectures
# and ABIs.
sed -i '/INSTR_SET/,/fabi-version/d' configure.ac
# Regenerate configure after monkeying with configure.ac
autoreconf -fi
%build
%configure --docdir=%{_docdir}/fflas-ffpack --disable-static --enable-openmp \
--disable-simd --enable-doc \
--with-blas-cflags="-I%{_includedir}/openblas" \
--with-blas-libs="-lopenblaso"
chmod a+x fflas-ffpack-config
make %{?_smp_mflags}
# Build the developer documentation, too
cd doc
doxygen DoxyfileDev
cd ..
# We don't want these files in with the doxygen-generated files
rm -f doc/fflas-ffpack-html/{AUTHORS,COPYING,INSTALL}
%install
make install DESTDIR=%{buildroot}
# Documentation is installed in the wrong place
mkdir -p %{buildroot}%{_docdir}
mv %{buildroot}%{_prefix}/docs %{buildroot}%{_docdir}/%{name}-doc
%check
# On all architectures, test-fgemm-check sometimes fails spuriously. Disable
# it until upstream figures out what is going on.
sed -i '/run_with_field</d' tests/test-fgemm-check.C
make check
%files devel
%doc AUTHORS ChangeLog TODO
%license COPYING COPYING.LESSER
%{_bindir}/fflas-ffpack-config
%{_includedir}/fflas-ffpack/
%{_libdir}/pkgconfig/%{name}.pc
%files doc
%{_docdir}/%{name}-doc/
%changelog
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.2-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Wed Oct 10 2018 Jerry James <loganjerry@gmail.com> - 2.3.2-3
- Try again to switch from atlas to openblas
- Add -const-void patch from the sagemath developers
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Sat Jun 2 2018 Jerry James <loganjerry@gmail.com> - 2.3.2-1
- New upstream release, fixes FTBFS (bz 1585225)
- Drop all patches
- Drop workarounds in the check script
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.2-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Wed Sep 27 2017 Jerry James <loganjerry@gmail.com> - 2.2.2-8
- Rebuild after failed attempt to switch to openblas (s390x failures)
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.2-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.2-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Wed Apr 5 2017 Jerry James <loganjerry@gmail.com> - 2.2.2-5
- Remove dependency on /usr/bin/env
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.2-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Fri Jan 6 2017 Jerry James <loganjerry@gmail.com> - 2.2.2-3
- Fix build on big endian platforms
- Disable ppc64 tests that fail due to an ATLAS bug (bz 1410633)
* Thu Oct 20 2016 Jerry James <loganjerry@gmail.com> - 2.2.2-2
- Fix build on non-x86 platforms (bz 1373305)
* Fri Aug 12 2016 Jerry James <loganjerry@gmail.com> - 2.2.2-1
- New upstream release
* Tue Apr 12 2016 Jerry James <loganjerry@gmail.com> - 2.2.1-1
- New upstream release
* Fri Feb 26 2016 Jerry James <loganjerry@gmail.com> - 2.2.0-1
- New upstream release
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.6.0-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6.0-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Mon Feb 16 2015 Jerry James <loganjerry@gmail.com> - 1.6.0-10
- Note bundled jquery
* Tue Oct 28 2014 Jerry James <loganjerry@gmail.com> - 1.6.0-9
- Rebuild for givaro 3.8.0
- Fix license handling
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6.0-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6.0-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Mon Sep 23 2013 Jerry James <loganjerry@gmail.com> - 1.6.0-6
- Rebuild for atlas 3.10.1
* Tue Jul 30 2013 Jerry James <loganjerry@gmail.com> - 1.6.0-5
- Adapt to Rawhide versionless _docdir change
* Wed Mar 27 2013 Jerry James <loganjerry@gmail.com> - 1.6.0-4
- Support building on aarch64 (bz 925336)
- Add more tex BRs due to TeXLive 2012 reorganization
- Ensure that __int64 is defined
* Fri Feb 8 2013 Jerry James <loganjerry@gmail.com> - 1.6.0-3
- Rebuild for givaro 3.7.2
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Tue Jul 3 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 1.6.0-1
- Update to latest upstream release.
- Remove gcc 4.7 patch already applied to upstream tarball.
- Rediff fflas-ffpack-debug patch.
- Remove fflas-ffpack-inline patch already applied to upstream tarball.
- Remove fflas-ffpack-64bit patch already applied to upstream tarball.
* Thu May 3 2012 Jerry James <loganjerry@gmail.com> - 1.4.3-3
- Add debug, inline, and 64bit patches
* Mon Jan 9 2012 Jerry James <loganjerry@gmail.com> - 1.4.3-2
- Rebuild for GCC 4.7
* Tue Nov 1 2011 Jerry James <loganjerry@gmail.com> - 1.4.3-1
- New upstream version
- Tests have been fixed; restore %%check script
* Mon Aug 29 2011 Jerry James <loganjerry@gmail.com> - 1.4.2-1
- New upstream version
- Tests are hopelessly broken; disable for now
* Thu May 26 2011 Jerry James <loganjerry@gmail.com> - 1.4.1-2
- Issues found on review:
- Fix license tag (fflasffpack-config is CeCILL-B)
- Add -doc subpackage
- More bad FSF addresses
* Tue May 24 2011 Jerry James <loganjerry@gmail.com> - 1.4.1-1
- Initial RPM