+++ /dev/null
---- libPARI/gphelp
-+++ libPARI/gphelp
-@@ -328,7 +328,7 @@ sub apropos
- @sentence_list = @list = "";
- while (<DOC>)
- {
-- if (/^\\(subsubsec[a-z]*|subsec[a-z]*|section|chapter){/)
-+ if (/^\\(subsubsec[a-z]*|subsec[a-z]*|section|chapter)\{/)
- {
- $new = &get_match($_,'{','}');
- &apropos_check();
-@@ -1025,8 +1025,8 @@ sub TeXprint_topod {
- s/\$\$(.*?)\$\$\s*/\n\nS< >$tr{startcode}$1$tr{endcode}\n\n/gs;
- s/\$([^\$]+)\$/$tr{startcode}$1$tr{endcode}/g;
-
-- s/\\s(?:ref|idx){\s*([^{}]*)}/$tr{startindex} . for_index($1) . $tr{endindex}/ge;
-- s/\\(?:ref|idx){\s*([^{}]*)}/$tr{startindex} . for_index($1) . "$tr{endindex}$1"/ge;
-+ s/\\s(?:ref|idx)\{\s*([^{}]*)}/$tr{startindex} . for_index($1) . $tr{endindex}/ge;
-+ s/\\(?:ref|idx)\{\s*([^{}]*)}/$tr{startindex} . for_index($1) . "$tr{endindex}$1"/ge;
-
- # Conflict between different versions of PARI and refcard:
- # s/\\(?:key|li)\s*{(.*)}\s*{(.+)}[ \t]*\n/\n\n=item C<$2>\n\n$1\n\n/msg;
# Conditional build:
%bcond_without tex # TeX documentation
#
-# latest perl Math::Pari (2.030518) doesn't know of pari >= 2.12
-# see DEVEL-2.13 branch for 2.13.x packaging try
-%define pari_version 2.11.4
-%define gp2c_version 0.0.12
+%define pari_version 2.13.4
+%define gp2c_version 0.0.12pl1
# because of previous 2.x versions with 8 minor digits, keep trailing zeros in package Version
-%define math_pari_version 2.03051800
-%define math_pari_fversion 2.030518
+%define math_pari_version 2.03052300
+%define math_pari_fversion 2.030523
Summary: Number Theory-oriented Computer Algebra System
Summary(pl.UTF-8): Komputerowy system obliczeń algebraicznych zorientowany na metody teorii liczb
Name: parigp
Version: %{pari_version}
-Release: 20
+Release: 1
License: GPL v2+
Group: Applications/Math
-#Source0: http://pari.math.u-bordeaux.fr/pub/pari/unix/pari-%{pari_version}.tar.gz
-Source0: http://pari.math.u-bordeaux.fr/pub/pari/OLD/2.11/pari-%{pari_version}.tar.gz
-# Source0-md5: fb2968d7805424518fe44a59a2024afd
+Source0: http://pari.math.u-bordeaux.fr/pub/pari/unix/pari-%{pari_version}.tar.gz
+# Source0-md5: b624752c00b4b87b940fd98c910d8c09
Source1: http://pari.math.u-bordeaux.fr/pub/pari/packages/galdata.tgz
# Source1-md5: f9f61b2930757a785b568e5d307a7d75
Source2: http://pari.math.u-bordeaux.fr/pub/pari/GP2C/gp2c-%{gp2c_version}.tar.gz
-# Source2-md5: ab29c383985d1b7d339189ecff31d40a
-Source3: http://www.cpan.org/modules/by-module/Math/Math-Pari-%{math_pari_fversion}.zip
-# Source3-md5: f0d1d9f803c92abff0d6349869a82699
+# Source2-md5: 07e5959df2a08e519532a03ff5b8111f
+Source3: http://www.cpan.org/modules/by-module/Math/Math-Pari-%{math_pari_fversion}.tar.gz
+# Source3-md5: e5489cb047989bf6ef3f1fdc590ca736
Source4: %{name}.desktop
Source5: %{name}.png
Patch0: %{name}-target_arch.patch
Patch4: perl-Math-Pari-noproccpuinfo.patch
Patch5: %{name}-noproccpuinfo.patch
Patch6: gmp-version.patch
-Patch7: Math-Pari-escape-left-braces-in-regex.patch
URL: http://pari.math.u-bordeaux.fr/
BuildRequires: autoconf
BuildRequires: ctags
%prep
%setup -q -n pari-%{pari_version} -a 2 -a 3
-patch -p1 < Math-Pari-%{math_pari_fversion}/patches/diff-2.11.0-all
+patch -p1 < Math-Pari-%{math_pari_fversion}/patches/diff-2.13.3-all
%patch0 -p1
%patch2 -p1
%patch5 -p1
cd Math-Pari-%{math_pari_fversion}
%patch3 -p1
%patch4 -p1
-%patch7 -p0
%build
# pari & parigp
--datadir=%{_datadir}/parigp
%{__make}
-%{?with_tex:%{__make} -j1 -C doc docall}
+%{?with_tex:%{__make} -j1 -C doc}
cd ..
%files
%defattr(644,root,root,755)
%doc AUTHORS CHANGES* COMPAT NEW README examples/Inputrc %{?with_tex:doc/*.pdf}
-%attr(755,root,root) %{_bindir}/gp-2.11
+%attr(755,root,root) %{_bindir}/gp-2.13
%attr(755,root,root) %{_bindir}/gp
%attr(755,root,root) %{_bindir}/gphelp
%attr(755,root,root) %{_bindir}/tex2mail
%files -n pari
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libpari-gmp.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpari-gmp.so.6
+%attr(755,root,root) %ghost %{_libdir}/libpari-gmp.so.7
%{_libdir}/parigp
%files -n pari-devel
where POINTER_VAL is just value of pointer to already existing Pari
object (which may be destroyed later!).
---- Math-Pari-2.030518/Pari.xs.orig 2019-04-20 05:02:34.000000000 +0200
-+++ Math-Pari-2.030518/Pari.xs 2021-06-26 09:51:04.478020090 +0200
-@@ -1377,6 +1377,13 @@ moveoffstack_newer_than(SV* sv)
+--- Math-Pari-2.030523/Pari.xs.orig 2022-04-12 11:03:02.000000000 +0200
++++ Math-Pari-2.030523/Pari.xs 2022-05-30 21:20:23.166166331 +0200
+@@ -1437,6 +1437,13 @@ moveoffstack_newer_than(SV* sv)
SV* nextsv;
long ret=0;
+ if((char*)nextsv == GENfirstOnStack)
+ return -1; /* not on stack! */
+ }
-+
++
for (sv1 = PariStack; sv1 != sv; sv1 = nextsv) {
ret++;
- SV_OAVMA_switch(nextsv, sv1, GENmovedOffStack); /* Mark as moved off stack. */
-@@ -4285,7 +4292,7 @@ DESTROY(rv)
+ SV_OAVMA_switch(nextsv, sv1, GENmovedOffStack); /* Mark as moved off stack. */
+@@ -4570,7 +4577,7 @@ DESTROY(rv)
long oldavma; /* The value of avma on the entry
* to function having the SV as
* argument. */
SV_OAVMA_PARISTACK_get(sv, oldavma, ostack);
oldavma += myPARI_bot;
#if 1
-@@ -4318,6 +4325,7 @@ DESTROY(rv)
+@@ -4603,6 +4610,7 @@ DESTROY(rv)
/* Now fall through: */
/* case (IV)GENfirstOnStack: */
/* Now sv is the newest one on stack. */
onStack_dec;
perlavma = oldavma;
if (oldavma > sentinel) {
-@@ -4326,7 +4334,9 @@ DESTROY(rv)
+@@ -4611,7 +4619,9 @@ DESTROY(rv)
avma = oldavma; /* Mark the space on stack as free. */
}
PariStack = (SV*)ostack; /* The same on the Perl/PARI side. */