Name: fes Version: 0.2 Release: 8%{?dist} License: GPLv2+ Summary: Fast Exhaustive Search URL: https://cbouilla.github.io/implementation.html Source0: https://bitbucket.org/fes/fes/downloads/%{name}-%{version}.spkg ExclusiveArch: %{ix86} x86_64 # Fix various problems with the configure script and configuration headers # 1. @VARIABLE@ expressions are not replaced in src/config.h # 2. The Fedora optimization flag is overridden with -O3 # 3. -Werror causes build failures # 4. -msse3 is added to the command line if the build CPU has SSE3 support # 5. HAVE_SSE2 and HAVE_64_BITS are defined on all architectures Patch0: %{name}-configure.patch # Update the python code from python2 to python3 Patch1: %{name}-python3.patch # Remove an extraneous "const" Patch2: %{name}-const.patch # Remove references to undefined symbols on non-x86_64 Patch3: %{name}-undef.patch BuildRequires: gcc BuildRequires: libtool BuildRequires: make BuildRequires: python3-devel BuildRequires: tex(latex) BuildRequires: tex(aeguill.sty) BuildRequires: tex(algpseudocode.sty) %description This external library implements an efficient implement of exhaustive search to solve systems of low-degree boolean equations. Exhaustive search is asymptotically faster than computing a Groebner basis, except in special cases. This particular implementation is particularly efficient (in the good cases it tests 3 candidate solutions per CPU cycle on each core). %package devel Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} %description devel This package contains the header files and development documentation for %{name}. %prep %autosetup -p0 pushd src # Remove prebuilt objects rm src/{a.out,autogenerated*,print,toto,*.pyc} doc/doc.{aux,log,pdf} # Regenerate the configure script due to the changes in patch0 autoreconf -fi . popd %build pushd src export CCASFLAGS="%{optflags} -Wa,--noexecstack" export PYTHON=%{__python3} %configure \ %ifnarch %{ix86} x86_64 --disable-sse2 \ %endif --disable-static --enable-dynamic %make_build pushd doc pdflatex doc.tex pdflatex doc.tex popd popd %install %make_install -C src rm %{buildroot}%{_libdir}/libfes.la %check make -C src check %files %doc src/AUTHORS %doc src/COPYING %{_libdir}/libfes.so.* %files devel %doc src/TODO %doc src/doc/doc.pdf %{_includedir}/fes_interface.h %{_libdir}/libfes.so %changelog * Thu Jul 21 2022 Fedora Release Engineering - 0.2-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Thu Jan 20 2022 Fedora Release Engineering - 0.2-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Wed Jul 21 2021 Fedora Release Engineering - 0.2-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Tue Jan 26 2021 Fedora Release Engineering - 0.2-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Mon Jul 27 2020 Fedora Release Engineering - 0.2-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Tue Jan 28 2020 Fedora Release Engineering - 0.2-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Thu Jul 25 2019 Fedora Release Engineering - 0.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Wed Feb 6 2019 Jerry James - 0.2-1 - New upstream version, fixes FTBFS (bz 1603963, 1674882) - Correct license from GPLv3+ to GPLv2+ - Drop upstreamed -dynamic patch - Add -configure patch to fix multiple configuration problems - Add -python3 patch due to python2 removal in Rawhide - Add -const patch to fix warnings - Add -undef patch to fix the build on non-x86_64 arches - Build for i386 too as the SSE2 code is now optional - Reduce texlive BRs * Thu Jan 31 2019 Fedora Release Engineering - 0.1-16 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Fri Jul 13 2018 Fedora Release Engineering - 0.1-15 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Wed Feb 07 2018 Fedora Release Engineering - 0.1-14 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Tue Nov 14 2017 pcpa - 0.1-13 - Correct FTBFS in rawhide (#1423562) * Wed Aug 02 2017 Fedora Release Engineering - 0.1-12 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild * Wed Jul 26 2017 Fedora Release Engineering - 0.1-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Fri Feb 10 2017 Fedora Release Engineering - 0.1-10 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Wed Feb 03 2016 Fedora Release Engineering - 0.1-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Wed Jun 17 2015 Fedora Release Engineering - 0.1-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild * Sat Aug 16 2014 Fedora Release Engineering - 0.1-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild * Sat Jun 07 2014 Fedora Release Engineering - 0.1-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Sat Aug 03 2013 Fedora Release Engineering - 0.1-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild * Sat Jun 8 2013 pcpa - 0.1-4 - Add ldconfig to post and postun (#914936#c5). - Mark stack as not executable in .s to .o compilation (#914936#c5). * Fri Jun 7 2013 pcpa - 0.1-3 - Add missing autoconf, automake and libtool build requires (#914936#c3). - Remove the with_doc macro (#914936#c3). - Change package to be x86_64 specific, as sse2 is not optional. * Wed Jun 5 2013 pcpa - 0.1-2 - Make python2 a build requires (#914936#c1). - Patch the package to generate a dynamic library (#914936#c1). - Add AUTHORS, COPYING and TODO to package documentation (#914936#c1). * Fri Feb 22 2013 pcpa - 0.1-1 - Initial fes spec.