35c8a1
# build compat-libmpc for bootstrapping purposes
35c8a1
%global bootstrap 1
35c8a1
%global bootstrap_version 0.9
35c8a1
35c8a1
Summary: C library for multiple precision complex arithmetic
35c8a1
Name: libmpc
35c8a1
Version: 1.1.0
35c8a1
Release: 9.1%{?dist}
35c8a1
License: LGPLv3+
35c8a1
URL: http://www.multiprecision.org/mpc/
35c8a1
Source0: https://ftp.gnu.org/gnu/mpc/mpc-%{version}.tar.gz
35c8a1
%if 0%{?bootstrap}
35c8a1
Source1: http://www.multiprecision.org/downloads/mpc-%{bootstrap_version}.tar.gz
35c8a1
%endif
35c8a1
35c8a1
BuildRequires: gcc
35c8a1
BuildRequires: gmp-devel >= 5.0.0
35c8a1
BuildRequires: mpfr-devel
35c8a1
35c8a1
Patch0: libmpc-fix-uninit-var.patch
35c8a1
35c8a1
%description
35c8a1
35c8a1
MPC is a C library for the arithmetic of complex numbers with
35c8a1
arbitrarily high precision and correct rounding of the result. It is
35c8a1
built upon and follows the same principles as Mpfr.
35c8a1
35c8a1
%package devel
35c8a1
Summary: Headers and shared development libraries for MPC
35c8a1
Requires: %{name}%{?_isa} = %{version}-%{release}
35c8a1
Requires: gmp-devel%{?_isa}
35c8a1
Requires: mpfr-devel%{?_isa}
35c8a1
35c8a1
%description devel
35c8a1
Header files and shared library symlinks for the MPC library.
35c8a1
35c8a1
%package doc
35c8a1
Summary: Documentation for the MPC library
35c8a1
License: GFDL
35c8a1
BuildArch: noarch
35c8a1
35c8a1
%description doc
35c8a1
Documentation for the MPC library.
35c8a1
35c8a1
%if 0%{?bootstrap}
35c8a1
%package -n compat-libmpc
35c8a1
Summary: compat/bootstrap mpc-%{bootstrap_version} library
35c8a1
35c8a1
%description -n compat-libmpc
35c8a1
Contains the .so files for mpc version %{bootstrap-version}.
35c8a1
%endif
35c8a1
35c8a1
%prep
35c8a1
%setup -q -n mpc-%{version}
35c8a1
%if 0%{?bootstrap}
35c8a1
%setup -q -n mpc-%{version} -a 1
35c8a1
%endif
35c8a1
%patch0 -p1 -b .uninit~
35c8a1
35c8a1
%build
35c8a1
%configure --disable-static
35c8a1
35c8a1
# Get rid of undesirable hardcoded rpaths; workaround libtool reordering
35c8a1
# -Wl,--as-needed after all the libraries.
35c8a1
sed -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \
35c8a1
    -e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' \
35c8a1
    -e 's|CC="\(g..\)"|CC="\1 -Wl,--as-needed"|' \
35c8a1
    -i libtool
35c8a1
35c8a1
%make_build
35c8a1
35c8a1
%if 0%{?bootstrap}
35c8a1
export CPPFLAGS="%{optflags} -std=gnu99"
35c8a1
export CFLAGS="%{optflags} -std=gnu99"
35c8a1
export EGREP=egrep
35c8a1
35c8a1
pushd mpc-%{bootstrap_version}
35c8a1
%configure --disable-static
35c8a1
%make_build
35c8a1
popd
35c8a1
%endif
35c8a1
35c8a1
%install
35c8a1
%if 0%{?bootstrap}
35c8a1
%make_install -C mpc-%{bootstrap_version}
35c8a1
35c8a1
## remove everything but shlib
35c8a1
rm -fv %{buildroot}%{_libdir}/libmpc.so
35c8a1
rm -fv %{buildroot}%{_includedir}/*
35c8a1
rm -fv %{buildroot}%{_infodir}/*
35c8a1
%endif
35c8a1
35c8a1
%make_install
35c8a1
rm -f %{buildroot}/%{_libdir}/*.la
35c8a1
rm -f %{buildroot}/%{_infodir}/dir
35c8a1
35c8a1
%check
35c8a1
export LD_LIBRARY_PATH=%{buildroot}%{_libdir}
35c8a1
make check
35c8a1
35c8a1
%files
35c8a1
%license COPYING.LESSER
35c8a1
%doc README NEWS
35c8a1
%{_libdir}/libmpc.so.3*
35c8a1
35c8a1
%files devel
35c8a1
%{_libdir}/libmpc.so
35c8a1
%{_includedir}/mpc.h
35c8a1
35c8a1
%files doc
35c8a1
%doc AUTHORS
35c8a1
%{_infodir}/*.info*
35c8a1
35c8a1
%if 0%{?bootstrap}
35c8a1
%files -n compat-libmpc
35c8a1
%{_libdir}/libmpc.so.2*
35c8a1
%endif
35c8a1
35c8a1
%changelog
35c8a1
* Fri Oct 09 2020 Marek Polacek <polacek@redhat.com> - 1.1.0-9.1
35c8a1
- apply my upstream patch to fix using an uninitialized value
35c8a1
35c8a1
* Thu Oct 08 2020 Marek Polacek <polacek@redhat.com> - 1.1.0-9
35c8a1
- mpc-1.1.0 (#1835193)
35c8a1
- update the specfile from Fedora
35c8a1
35c8a1
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.2-9
35c8a1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
35c8a1
35c8a1
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.2-8
35c8a1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
35c8a1
35c8a1
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.2-7
35c8a1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
35c8a1
35c8a1
* Wed Feb 01 2017 Stephen Gallagher <sgallagh@redhat.com> - 1.0.2-6
35c8a1
- Add missing %%license macro
35c8a1
35c8a1
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.2-5
35c8a1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
35c8a1
35c8a1
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.2-4
35c8a1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
35c8a1
35c8a1
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.2-3
35c8a1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
35c8a1
35c8a1
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.2-2
35c8a1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
35c8a1
35c8a1
* Mon Feb 24 2014 Peter Robinson <pbrobinson@fedoraproject.org> 1.0.2-1
35c8a1
- mpc-1.0.2
35c8a1
35c8a1
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.1-2
35c8a1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
35c8a1
35c8a1
* Tue Feb 19 2013 Rex Dieter <rdieter@fedoraproject.org> - 1.0.1-1
35c8a1
- compat-libmpc (for bootsrapping purposes)
35c8a1
- mpc-1.0.1
35c8a1
- update Source URLs
35c8a1
- fix License: tag
35c8a1
35c8a1
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0-3
35c8a1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
35c8a1
35c8a1
* Thu Aug 02 2012 Rex Dieter <rdieter@fedoraproject.org> - 1.0-2
35c8a1
- %%files: track lib soname (so bumps aren't a surprise)
35c8a1
- tighten subpkg deps (%%_isa)
35c8a1
- %%build: --disable-static
35c8a1
35c8a1
* Thu Aug  2 2012 Petr Machata <pmachata@redhat.com> - 1.0-1
35c8a1
- Upstream 1.0
35c8a1
35c8a1
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9-3.2
35c8a1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
35c8a1
35c8a1
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9-2.2
35c8a1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
35c8a1
35c8a1
* Wed Oct 26 2011 Marcela Mašláňová <mmaslano@redhat.com> - 0.9-1.2
35c8a1
- rebuild with new gmp without compat lib
35c8a1
35c8a1
* Wed Oct 12 2011 Peter Schiffer <pschiffe@redhat.com> - 0.9-1.1
35c8a1
- rebuild with new gmp
35c8a1
35c8a1
* Wed Jun 22 2011  <pmachata@redhat.com> - 0.9-1
35c8a1
- Upstream 0.9
35c8a1
35c8a1
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8.3-0.3.svn855
35c8a1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
35c8a1
35c8a1
* Tue Nov 30 2010 Petr Machata <pmachata@redhat.com> - 0.8.3-0.2.svn855
35c8a1
- Bump for rebuild against the new mpfr
35c8a1
35c8a1
* Fri Nov 19 2010 Petr Machata <pmachata@redhat.com> - 0.8.3-0.1.svn855
35c8a1
- Devel updates (to-be-0.8.3, SVN release 855)
35c8a1
  - New functions mpc_set_dc, mpc_set_ldc, mpc_get_dc, mpc_get_ldc
35c8a1
  - Speed-up mpc_pow_si and mpc_pow_z
35c8a1
  - Bug fixes in trigonometric functions, exp, sqrt
35c8a1
- Upstream 0.8.2
35c8a1
  - Speed-up mpc_pow_ui
35c8a1
- Adjust BuildRequires
35c8a1
- Resolves: #653931
35c8a1
35c8a1
* Wed Jan 20 2010 Petr Machata <pmachata@redhat.com> - 0.8.1-1
35c8a1
- Upstream 0.8.1
35c8a1
  - acosh, asinh, atanh: swap of precisions between real and imaginary parts
35c8a1
  - atan: memory leak
35c8a1
  - log: wrong ternary value in data file; masked by bug in Mpfr 2.4.1
35c8a1
- Resolves: #555471 FTBFS libmpc-0.8-3.fc13
35c8a1
35c8a1
* Fri Nov 13 2009 Petr Machata <pmachata@redhat.com> - 0.8-3
35c8a1
- Require mpfr-devel, gmp-devel in -devel subpackage
35c8a1
- Don't pass --entry to install-info
35c8a1
35c8a1
* Thu Nov 12 2009 Petr Machata <pmachata@redhat.com> - 0.8-2
35c8a1
- Rename the package to libmpc, it's a better choice of name
35c8a1
- %%preun should uninstall mpc's info page, not make's
35c8a1
- Move info page to -devel
35c8a1
- BR on -devel packages
35c8a1
- Drop postscript documentation
35c8a1
35c8a1
* Thu Nov 12 2009 Petr Machata <pmachata@redhat.com> - 0.8-1
35c8a1
- Initial package.