f60d743
Name:		libpari23
f60d743
Version:	2.3.5
1676da3
Release:	7%{?dist}
f60d743
Summary:	Number Theory-oriented Computer Algebra Library
f60d743
Group:		System Environment/Libraries
f60d743
# No version is specified
f60d743
License:	GPL+
f60d743
URL:		http://pari.math.u-bordeaux.fr/
f60d743
Source0:	http://pari.math.u-bordeaux.fr/pub/pari/unix/OLD/pari-%{version}.tar.gz
f60d743
Patch1:		libpari23-optflags.patch
f60d743
Patch2:		libpari23-fsf-address.patch
f60d743
Patch3:		Math-Pari-2.01080604-extra-stack-for-test.patch
f60d743
BuildRequires:	readline-devel
f60d743
BuildRequires:	gmp-devel
f60d743
BuildRequires:	tex(tex)
f60d743
BuildRequires:	tex(dvips)
f60d743
BuildRequires:	desktop-file-utils
f60d743
BuildRequires:	libX11-devel
f60d743
BuildRequires:	xmkmf
f60d743
f60d743
# Avoid doc-file dependencies and provides
f60d743
%global __provides_exclude_from ^%{_datadir}/pari/PARI/
f60d743
%global __requires_exclude_from ^%{_datadir}/pari/PARI/
f60d743
f60d743
%description
f60d743
PARI is a widely used computer algebra system designed for fast computations in
f60d743
number theory (factorizations, algebraic number theory, elliptic curves...),
f60d743
but also contains a large number of other useful functions to compute with
f60d743
mathematical entities such as matrices, polynomials, power series, algebraic
f60d743
numbers, etc., and a lot of transcendental functions.
f60d743
f60d743
This is an old version of the library, for compatibility with applications and
f60d743
library bindings that have not been migrated to the current stable release.
f60d743
f60d743
%package devel
f60d743
Summary:	Header files and libraries for PARI development
f60d743
Group:		Development/Libraries
f60d743
Requires:	%{name} = %{version}-%{release}
f60d743
Requires:	pkgconfig
f60d743
f60d743
%description devel
f60d743
Header files and libraries for PARI development with the old version 2.3.x
f60d743
API.
f60d743
f60d743
%prep
f60d743
%setup -q -n pari-%{version}
f60d743
f60d743
# Use our optflags, not upstream's
f60d743
%patch1
f60d743
sed -i -e 's|@OPTFLAGS@|%{optflags} -fPIC|' config/get_cc
f60d743
f60d743
# Update FSF address in copyright notices
f60d743
%patch2 -p1
f60d743
f60d743
# perl-Math-Pari uses libpari23's test suite but needs more stack on some architectures
f60d743
%patch3 -p2
f60d743
f60d743
# Avoid unwanted rpaths
f60d743
sed -i "s|runpathprefix='.*'|runpathprefix=''|" config/get_ld
f60d743
f60d743
# Create a pkg-config file
f60d743
cat > libpari23.pc << __EOF__
f60d743
prefix=%{_prefix}
f60d743
exec_prefix=%{_exec_prefix}
f60d743
libdir=%{_libdir}
f60d743
includedir=%{_includedir}
f60d743
datadir=%{_datadir}
f60d743
paridir=%{_datadir}/%{name}
f60d743
f60d743
Name: Libpari23
f60d743
Description: Number Theory-oriented Computer Algebra Library.
f60d743
URL: http://pari.math.u-bordeaux.fr/
f60d743
Version: %{version}
f60d743
Libs: -lpari23
f60d743
Cflags: -I\${includedir}/%{name}
f60d743
__EOF__
f60d743
f60d743
%build
f60d743
./Configure \
f60d743
    --prefix=%{_prefix} \
f60d743
    --share-prefix=%{_datadir} \
f60d743
    --bindir=%{_bindir} \
f60d743
    --libdir=%{_libdir} \
f60d743
    --mandir=%{_mandir}/man1 \
f60d743
    --datadir=%{_datadir}/pari \
f60d743
    --with-gmp
f60d743
make %{?_smp_mflags} all
f60d743
f60d743
%install
f60d743
make install \
f60d743
	DESTDIR=%{buildroot} \
f60d743
	INSTALL="install -p" \
f60d743
	STRIP=/bin/true
f60d743
f60d743
# we move pari.cfg to the docdir
f60d743
rm -rf %{buildroot}%{_prefix}/lib/pari
f60d743
f60d743
# We'll link to this library as libpari23 rather than libpari
f60d743
mv %{buildroot}%{_libdir}/libpari{.so,23.so}
f60d743
f60d743
# Move header files to avoid conflicting with pari-devel
f60d743
mkdir %{buildroot}%{_includedir}/%{name}
f60d743
mv %{buildroot}%{_includedir}/{pari,%{name}/pari}
f60d743
f60d743
# Install tests and documentation, needed e.g. by perl-Math-Pari
f60d743
mkdir -p %{buildroot}%{_datadir}/%{name}/src/
f60d743
cp -a src/test/ %{buildroot}%{_datadir}/%{name}/src/
f60d743
cp -a doc %{buildroot}%{_datadir}/%{name}/
f60d743
f60d743
# Additional headers needed e.g. by perl-Math-Pari
f60d743
mkdir -p %{buildroot}%{_datadir}/%{name}/src/{graph,gp,headers,language}/
f60d743
cp -a src/graph/*.h %{buildroot}%{_datadir}/%{name}/src/graph/
f60d743
cp -a src/gp/*.h %{buildroot}%{_datadir}/%{name}/src/gp/
f60d743
cp -a src/headers/*.h %{buildroot}%{_datadir}/%{name}/src/headers/
f60d743
cp -a src/language/*.h %{buildroot}%{_datadir}/%{name}/src/language/
f60d743
f60d743
# Install our pkg-config file so the library can be found
f60d743
mkdir -p %{buildroot}%{_libdir}/pkgconfig/
f60d743
cp -p libpari23.pc %{buildroot}%{_libdir}/pkgconfig/
f60d743
f60d743
# Remove emacs support files if built on a system with emacs
f60d743
rm -rf %{buildroot}%{_datadir}/emacs/site-lisp/pari/
f60d743
f60d743
# Placate rpmlint regarding binary and library permissions
f60d743
%{_fixperms} %{buildroot}{%{_bindir},%{_libdir}}
f60d743
f60d743
%check
f60d743
make dobench
f60d743
make dotest-compat
f60d743
make dotest-intnum
f60d743
make dotest-qfbsolve
f60d743
make dotest-rfrac
f60d743
make dotest-round4
f60d743
f60d743
%post -p /sbin/ldconfig
f60d743
f60d743
%postun -p /sbin/ldconfig
f60d743
f60d743
%files
f60d743
%doc AUTHORS CHANGES* COPYING COMPAT NEW README
f60d743
%doc Olinux-*/pari.cfg
f60d743
%{_libdir}/libpari-gmp.so.%{version}
f60d743
%{_libdir}/libpari-gmp.so.2
f60d743
f60d743
# Files for the pari-gp calculator, which we don't ship
f60d743
%exclude %{_bindir}/gp
f60d743
%exclude %{_bindir}/gp-2.3
f60d743
%exclude %{_bindir}/gphelp
f60d743
%exclude %{_bindir}/tex2mail
f60d743
%exclude %doc %{_datadir}/pari/PARI/
f60d743
%exclude %doc %{_datadir}/pari/doc/
f60d743
%exclude %doc %{_datadir}/pari/examples/
f60d743
%exclude %{_datadir}/pari/misc/
f60d743
%exclude %{_datadir}/pari/pari.desc
f60d743
%exclude %{_mandir}/man1/gp-2.3.1*
f60d743
%exclude %{_mandir}/man1/gp.1*
f60d743
%exclude %{_mandir}/man1/gphelp.1*
f60d743
%exclude %{_mandir}/man1/pari.1*
f60d743
%exclude %{_mandir}/man1/tex2mail.1*
f60d743
f60d743
%files devel
f60d743
%{_includedir}/%{name}/pari/
f60d743
%{_libdir}/libpari23.so
f60d743
%{_libdir}/pkgconfig/libpari23.pc
f60d743
%{_datadir}/%{name}/
f60d743
f60d743
%changelog
1676da3
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.5-7
1676da3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
1676da3
9c92251
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.5-6
9c92251
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
9c92251
efb4d1e
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.5-5
efb4d1e
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
efb4d1e
ff38955
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.5-4
ff38955
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
ff38955
2b3a584
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.5-3
2b3a584
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
2b3a584
f60d743
* Mon Jul  2 2012 Paul Howarth <paul@city-fan.org> - 2.3.5-2
f60d743
- Incorporate changes from package review (#837004)
f60d743
  - Remove %%clean section and cleaning of buildroot in %%install
f60d743
  - Build with -fPIC
f60d743
  - Update FSF address in copyright notices
f60d743
  - Remove emacs support files if built on a system with emacs
f60d743
f60d743
* Wed Jun 13 2012 Paul Howarth <paul@city-fan.org> - 2.3.5-1
f60d743
- Initial RPM version