## START: Set by rpmautospec ## (rpmautospec version 0.6.0) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 6; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec Name: libpoly Version: 0.1.13 Release: %autorelease Summary: C library for manipulating polynomials License: LGPL-3.0-or-later URL: https://sri-csl.github.io/libpoly/ VCS: https://github.com/SRI-CSL/libpoly Source0: %{vcs}/archive/v%{version}/%{name}-%{version}.tar.gz # Fix incompatible pointer type, an error with GCC 14 # See https://github.com/SRI-CSL/libpoly/pull/76 Patch0: %{name}-gcc14.patch # See https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval ExcludeArch: %{ix86} BuildRequires: cmake BuildRequires: gcc-c++ BuildRequires: gmp-devel BuildRequires: make BuildRequires: python3-devel BuildRequires: %{py3_dist sympy} %description LibPoly is a C library for manipulating polynomials. The target applications are symbolic reasoning engines, such as SMT solvers, that need to reason about polynomial constraints. %package devel Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} %description devel The %{name}-devel package contains libraries and header files for developing applications that use %{name}. %package -n python3-%{name} Summary: Python 3 interface to %{name} Requires: %{name}%{?_isa} = %{version}-%{release} %description -n python3-%{name} This package contains a python 3 interface to %{name}. %prep %autosetup -p1 # Install in the right place if [ "%{_lib}" != "lib" ]; then sed -i 's/\(DESTINATION \)lib/\1%{_lib}/' src/CMakeLists.txt fi # Clean up hidden files before they get installed find . -name .gitignore -delete %generate_buildrequires cd python sed 's/\${LIBPOLY_VERSION}/%{version}/' setup.py.in > setup.py %pyproject_buildrequires rm setup.py %build %cmake %{_cmake_skip_rpath} \ -DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo \ -DLIBPOLY_BUILD_STATIC:BOOL=OFF \ -DLIBPOLY_BUILD_STATIC_PIC:BOOL=OFF %cmake_build # Build the python interface the Fedora way sed -i "s|library_dirs = \[|&'$PWD/%{_vpath_builddir}/src', |" python/setup.py cd python %pyproject_wheel cd - %install %cmake_install # Install the python interface the Fedora way cd python %pyproject_install %pyproject_save_files polypy cd - %check export LD_LIBRARY_PATH=$PWD/%{_vpath_builddir}/src %ctest %files %license LICENCE %doc README.md %{_libdir}/libpoly.so.0* %{_libdir}/libpolyxx.so.0* %files devel %{_includedir}/poly/ %{_libdir}/libpoly.so %{_libdir}/libpolyxx.so %files -n python3-%{name} -f %{pyproject_files} %changelog ## START: Generated by rpmautospec * Thu Mar 21 2024 Jerry James - 0.1.13-6 - Stop building for 32-bit x86 * Thu Jan 25 2024 Jerry James - 0.1.13-3 - Add patch to fix incompatible pointer type * Thu Jan 25 2024 Fedora Release Engineering - 0.1.13-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Sun Jan 21 2024 Fedora Release Engineering - 0.1.13-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Tue Aug 1 2023 Jerry James - 0.1.13-1 - Version 0.1.13 * Sat Jul 29 2023 Jerry James - 0.1.12-1 - Version 0.1.12 - Drop upstreamed patches * Fri Jul 28 2023 Jerry James - 0.1.11-8 - Add post-release bug fixes needed by cvc5 * Thu Jul 20 2023 Fedora Release Engineering - 0.1.11-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild * Fri Jun 30 2023 Python Maint - 0.1.11-6 - Rebuilt for Python 3.12 * Mon Feb 27 2023 Jerry James - 0.1.11-5 - Dynamically generate python BuildRequires - Install python dist-info * Thu Jan 19 2023 Fedora Release Engineering - 0.1.11-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild * Mon Nov 28 2022 Jerry James - 0.1.11-4 - Convert License tag to SPDX * Thu Jul 21 2022 Fedora Release Engineering - 0.1.11-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Fri Jun 17 2022 Python Maint - 0.1.11-3 - Rebuilt for Python 3.11 * Thu Jan 20 2022 Fedora Release Engineering - 0.1.11-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Mon Oct 25 2021 Jerry James - 0.1.11-1 - Version 0.1.11 - Enable tests for 32-bit platforms * Mon Jul 26 2021 Jerry James - 0.1.10-1 - Version 0.1.10 * Thu Jul 22 2021 Fedora Release Engineering - 0.1.9-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Fri Jun 04 2021 Python Maint - 0.1.9-2 - Rebuilt for Python 3.10 * Tue Apr 13 2021 Jerry James - 0.1.9-1 - Version 0.1.9 * Tue Jan 26 2021 Fedora Release Engineering - 0.1.8-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Tue Jul 28 2020 Fedora Release Engineering - 0.1.8-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Tue May 26 2020 Miro HronĨok - 0.1.8-2 - Rebuilt for Python 3.9 * Thu Mar 26 2020 Jerry James - 0.1.8-1 - Version 0.1.8 - Add sympy BR for the tests - Add the python3 interface - Bring back the check script for 64-bit platforms; 32-bit platforms cannot run all tests due to the limited size of a C integer * Wed Jan 29 2020 Fedora Release Engineering - 0.1.7-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Thu Jul 25 2019 Fedora Release Engineering - 0.1.7-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Fri Feb 01 2019 Fedora Release Engineering - 0.1.7-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Tue Oct 30 2018 Jerry James - 0.1.7-1 - New upstream version - Drop python2-only interface; we'll bring it back when it is ported to python3 - Drop python-only check script * Fri Jul 13 2018 Fedora Release Engineering - 0.1.5-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Tue Jul 3 2018 Jerry James - 0.1.5-1 - New upstream version * Wed Feb 07 2018 Fedora Release Engineering - 0.1.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Mon Jan 1 2018 Jerry James - 0.1.4-1 - Initial RPM ## END: Generated by rpmautospec