[arch-commits] Commit in pari-sage/trunk (3 files)

Antonio Rojas arojas at archlinux.org
Sun Jul 26 17:02:14 UTC 2015


    Date: Sunday, July 26, 2015 @ 19:02:13
  Author: arojas
Revision: 137432

New snapshot for SageMath 6.8, use upstream perl 5.22 fix

Added:
  pari-sage/trunk/perl_regex.patch
Modified:
  pari-sage/trunk/PKGBUILD
Deleted:
  pari-sage/trunk/no_warnings_fatal.patch

-------------------------+
 PKGBUILD                |   28 +++---
 no_warnings_fatal.patch |    8 -
 perl_regex.patch        |  201 ++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 215 insertions(+), 22 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2015-07-26 16:46:57 UTC (rev 137431)
+++ PKGBUILD	2015-07-26 17:02:13 UTC (rev 137432)
@@ -3,24 +3,24 @@
 # Contributor: Gaetan Bisson <bisson at archlinux.org>
 
 pkgname=pari-sage
-_pkgver=2.8-1564-gdeac36e
+_pkgver=2.8-1637-g489005a
 pkgver=${_pkgver//-/.}
 pkgrel=1
 pkgdesc='Computer algebra system designed for fast computations in number theory. Development snapshot required by SageMath'
 url='http://pari.math.u-bordeaux.fr/'
-license=('GPL')
-arch=('i686' 'x86_64')
-depends=('gmp' 'readline' 'libx11')
-makedepends=('perl' 'texlive-core')
+license=(GPL)
+arch=(i686 x86_64)
+depends=(gmp readline libx11)
+makedepends=(perl texlive-core)
 optdepends=('perl: gphelp, tex2mail')
-conflicts=('pari')
-provides=('pari')
+conflicts=(pari)
+provides=(pari)
 # source=("http://www.sagemath.org/packages/upstream/pari/pari-$_pkgver.tar.gz"
 source=("http://mirrors.mit.edu/sage/spkg/upstream/pari/pari-$_pkgver.tar.gz"
- 'public_memory_functions.patch' 'no_warnings_fatal.patch')
-md5sums=('971950d42bd6d953b22f86a02a486878'
+ 'public_memory_functions.patch' 'perl_regex.patch')
+md5sums=('41936ce2dce6bd00a662bf43a772685f'
          '9172b9faee975cd3fe0f97126ea61af8'
-         'ee8dc8a52fb92392b2c82cc47b9af1a8')
+         '92b24f7e61c6268a4978636b819fba78')
 
 prepare() {
   cd pari-${_pkgver}
@@ -27,8 +27,8 @@
 
 # make some private functions public
   patch -p1 -i "$srcdir"/public_memory_functions.patch
-# don't treat Perl warnings as errors, fixed doc build with Perl 5.22
-  patch -p0 -i "$srcdir"/no_warnings_fatal.patch
+# fix doc build with Perl 5.22
+  patch -p1 -i "$srcdir"/perl_regex.patch
 }
 
 build() {
@@ -44,6 +44,6 @@
 
 package() {
 	cd pari-${_pkgver}
-	make DESTDIR="${pkgdir}" install
-	ln -sf gp.1.gz "${pkgdir}"/usr/share/man/man1/pari.1
+	make DESTDIR="$pkgdir" install
+	ln -sf gp.1.gz "$pkgdir"/usr/share/man/man1/pari.1
 }

Deleted: no_warnings_fatal.patch
===================================================================
--- no_warnings_fatal.patch	2015-07-26 16:46:57 UTC (rev 137431)
+++ no_warnings_fatal.patch	2015-07-26 17:02:13 UTC (rev 137432)
@@ -1,8 +0,0 @@
---- src/desc/doc_make.orig	2015-07-04 11:03:38.247781017 +0200
-+++ src/desc/doc_make	2015-07-04 11:03:53.224517403 +0200
-@@ -1,5 +1,4 @@
- #!/usr/bin/perl
--use warnings FATAL => 'all';
- use strict;
- use PARI::822;
- 

Added: perl_regex.patch
===================================================================
--- perl_regex.patch	                        (rev 0)
+++ perl_regex.patch	2015-07-26 17:02:13 UTC (rev 137432)
@@ -0,0 +1,201 @@
+commit 257750686ae1fe928a2b4b489844c1b57a108bd3
+Author: Karim Belabas <Karim.Belabas at math.u-bordeaux1.fr>
+Date:   Tue Jul 14 15:23:42 2015 +0200
+
+    doc_make: escape all {} in regexps [ perl-5.22 warns on these => fatal
+
+diff --git a/src/desc/doc_make b/src/desc/doc_make
+index bb41bc9..8521a9d 100755
+--- a/src/desc/doc_make
++++ b/src/desc/doc_make
+@@ -38,13 +38,13 @@ while (<FILE>)
+         $v =~ s/\[\]/[\\,]/g;
+         $v =~ s/(\w\w+)/\\var{$1}/g;
+         $v =~ s/\^([a-z])/\\hbox{\\kbd{\\pow}}$1/g;
+-        $v =~ s/\\var{flag}/\\fl/g;
+-        $v =~ s/\\var{(\d+)}/{$1}/g;
++        $v =~ s/\\var\{flag\}/\\fl/g;
++        $v =~ s/\\var\{(\d+)\}/{$1}/g;
+         $v =~ s/_/\\_/g; # don't merge with first subst: \var{} rule kills it
+ 
+         $v = "\$($v)\$";
+       }
+-      if ($doc !~ /\\syn\w*{/ && $sec !~ /programming\/control/) {
++      if ($doc !~ /\\syn\w*\{/ && $sec !~ /programming\/control/) {
+         $doc .= library_syntax($fun, $args);
+       }
+       s/_def_//;
+commit 742c70e505a7e75128720f619d63e882c03e9346
+Author: Karim Belabas <Karim.Belabas at math.u-bordeaux1.fr>
+Date:   Tue Jul 14 13:20:07 2015 +0200
+
+    gphelp: escape all {} in regexps [ perl-5.22 warns on these => fatal ]
+
+diff --git a/doc/gphelp.in b/doc/gphelp.in
+index 00ff6bd..89f2768 100755
+--- a/doc/gphelp.in
++++ b/doc/gphelp.in
+@@ -298,7 +298,7 @@ sub treat {
+   if ($pat =~ /[a-zA-Z0-9]$/) { $pat .= '\b'; } else { $pat .= '}'; }
+   while (<DOC>)
+   {
+-    if (/\\(subsubsec[a-z]*|subsec[a-z]*|section|chapter|label){$pat/)
++    if (/\\(subsubsec[a-z]*|subsec[a-z]*|section|chapter|label)\{$pat/)
+       { $first = $_; last; }
+   }
+   if (eof(DOC))
+@@ -380,7 +380,7 @@ sub apropos_check {
+   return if ($line !~ /$help/i);
+ 
+   local($_) = $current;
+-  s/\\b{(.)}/\\$1/;
++  s/\\b\{(.)\}/\\$1/;
+   s/\{\}//g;
+   s/\\pow/^/;
+   s/\\%/%/;
+@@ -400,7 +400,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($line, $current);
+@@ -748,7 +748,7 @@ sub basic_subst {
+   s/\\fun\s*\{([^{}]*)\}\s*\{((?:[^{}]|\{[^{}]*\})*)\}\s*\{((?:[^{}]|\{[^{}]*\})*)\}/\\kbd{$1 \\key{$2}($3)}\\sidx{$2}/g;
+ 
+   s/\\\\(?=[a-zA-Z])/\\bs /g;
+-  s/\\b{}\\b{}/\\bs\\bs /g;
++  s/\\b\{\}\\b\{\}/\\bs\\bs /g;
+   s/\\\\/\\bs/g;
+   s/(\'\'|\`\`)/"/g unless $to_pod;     # (english) double quotes
+   # asymptotic or isomorphic (~) [beware of ties]
+@@ -760,16 +760,16 @@ sub basic_subst {
+   s/\\(~|tilde)/~/g;
+ 
+   s/\\(equiv)(?![a-zA-Z])/ = /g;
+-  s/\\`a/$tr{agrave}/; s/\\`{a}/$tr{agrave}/;
+-  s/\\"o/$tr{ouml}/;   s/\\"{o}/$tr{ouml}/;
+-  s/\\"u/$tr{uuml}/;   s/\\"{u}/$tr{uuml}/;
+-  s/\\'e/$tr{eacute}/; s/\\'{e}/$tr{eacute}/;
++  s/\\`a/$tr{agrave}/; s/\\`\{a\}/$tr{agrave}/;
++  s/\\"o/$tr{ouml}/;   s/\\"\{o\}/$tr{ouml}/;
++  s/\\"u/$tr{uuml}/;   s/\\"\{u\}/$tr{uuml}/;
++  s/\\'e/$tr{eacute}/; s/\\'\{e\}/$tr{eacute}/;
+ 
+   s/(^|[^\\])%.*/$1/g;		        # comments
+   s/\\vadjust\s*\{\s*\\penalty\s*\d+\s*\}//g;
+ 
+   # We do not strip %\n, thus:
+-  s/\\kbd{\n\s*/\\kbd{/g;
++  s/\\kbd\{\n\s*/\\kbd{/g;
+   s/\$\\bf(\b|(?=[\d_]))\s*([^\$]+)\$/\$$tr{startbcode}$1$tr{endbcode}\$/g;
+   s/\$/$tr{dollar}/g;		        # math mode
+   s/\t/ /g; s/\\,//g; s/\\[ ;]/ /g;     # various spaces
+@@ -779,7 +779,7 @@ sub basic_subst {
+   s/\\TeX\{\}/TeX/g;
+   s/\\TeX(\W)/TeX$1/g;
+   s/ *\\circ\b */ o /g;
+-  s/\\d?frac{\s*((?:[^{}]|\{[^{}]*\})*)}{\s*((?:[^{}]|\{[^{}]*\})*)}/($1)\/($2)/g;
++  s/\\d?frac\{\s*((?:[^{}]|\{[^{}]*\})*)\}\{\s*((?:[^{}]|\{[^{}]*\})*)\}/($1)\/($2)/g;
+   s(\\d?frac\s*(\d)\s*(\d))(($1/$2))g;
+   s[{\s*(\w)\s*\\over(?![a-zA-Z])\s*(\w)\s*}]{($1/$2)}g;
+   s[{\s*((?:[^{}]|\{[^{}]*\})*)\\over(?![a-zA-Z])\s*((?:[^{}]|\{[^{}]*\})*)}][($1)/($2)]g;
+@@ -796,7 +796,7 @@ sub basic_subst {
+ 
+   s/(\\string)?\\_/_/g;
+   s/\\([#\$&%|])/$1/g;
+-  s/\\(hat(?![a-zA-Z])|\^)({\\?\s*})?/^/g;
++  s/\\(hat(?![a-zA-Z])|\^)(\{\\?\s*\})?/^/g;
+   s/^(\@\[podleader\]head\d *)\\pow(?![a-zA-z])( *)/$1^$2/gm;
+   s/ *\\pow(?![a-zA-z]) */^/g;
+ 
+@@ -896,21 +896,21 @@ sub basic_subst {
+   s/\\(floor|ceil|round|binom)\{/$1\{/g;
+   s/\\(var|emph)\{([^\}]*)\}/$tr{startit}$2$tr{endit}/g;
+   s/\\fl(?![a-zA-Z])/$tr{startit}flag$tr{endit}/g;
+-  s/\\b{([^}]*)}/$tr{startcode}\\$1$tr{endcode}/g;
++  s/\\b\{([^}]*)\}/$tr{startcode}\\$1$tr{endcode}/g;
+   s/\\kbdsidx/\\sidx/g;
+   s/\\sidx\{[^\}]*\}//g unless $to_pod;
+   s/\\[a-zA-Z]*idx\{([^\}]*)\}/$1/g unless $to_pod;
+-  s/{\\text{(st|nd|th)}}/\\text{$1}/g;
+-  s/\^\\text{th}/-th/g;
+-  s/1\^\\text{st}/1st/g;
+-  s/2\^\\text{nd}/2nd/g;
++  s/\{\\text\{(st|nd|th)\}\}/\\text{$1}/g;
++  s/\^\\text\{th\}/-th/g;
++  s/1\^\\text\{st\}/1st/g;
++  s/2\^\\text\{nd\}/2nd/g;
+ 
+   s/\\(text|hbox|Big)//g;
+   s/^([ \t]+)\{ *\\(it|sl|bf|tt)\b/S<$1>{\\$2/gm;
+   s/\{ *\\(it|sl) *(([^{}]+(?=[{}])|\{[^{}]*\})*)\}/$tr{startit}$2$tr{endit}/g;
+   s/\{ *\\bf *(([^{}]+(?=[{}])|\{[^{}]*\})*)\}/$tr{startbold}$1$tr{endbold}/g;
+   s/\{ *\\tt *(([^{}]+(?=[{}])|\{[^{}]*\})*)\}/$tr{startpodcode}$1$tr{endpodcode}/g;
+-  $seek=1 if (s/\\emph{ */$tr{startit}/g);
++  $seek=1 if (s/\\emph\{ */$tr{startit}/g);
+   if ($seek) { $seek=0 if (s/\}/$tr{endit}/) }
+   s/\\(backslash|bs)\{(\w)\}/\\$2/g;
+   s/\\(backslash|bs)(?![a-zA-Z]) */\\/g;
+@@ -1028,21 +1028,21 @@ sub TeXprint_topod {
+   # Try to guard \label/\sidx (removing possible '.')
+ #  This somehow breaks index...
+ #  s/(\\(?:section|subsec(?:ref|idx|op)?(unix)?)\s*{(?:(?:[^{}]+(?=[{}])|{[^{}]+})+)})\.?\s*\\(label|sidx)/$1\n\\$2/;
+-  s/(\\(?:section|subsec(?:ref|idx|op)?)\s*{(?:(?:[^{}]+(?=[{}])|{[^{}]+})+)})\.?\s*\\(label|sidx)/$1\n\\$2/;
++  s/(\\(?:section|subsec(?:ref|idx|op)?)\s*\{(?:(?:[^{}]+(?=[{}])|{[^{}]+})+)\})\.?\s*\\(label|sidx)/$1\n\\$2/;
+ 
+   # last if /\\subsec[\\{}ref]*[\\\${]$help[}\\\$]/o;
+-  s/\\chapter\s*{((?:[^{}]|\{[^{}]*\})*)}\s*/\n\n$tr{podleader}head1 NAME\n\nlibPARI - $1\n\n/;
+-  s/\\appendix\s*{((?:[^{}]|\{[^{}]*\})*)}\s*/\n\n$tr{podleader}head1 NAME\n\nAppendix - $1\n\n/;
+-  s/\\section\s*{((?:[^{}]|\{[^{}]*\})*)}\s*/"\n\n$tr{podleader}head1 " . indexify($1) . "\n\n"/e;
++  s/\\chapter\s*\{((?:[^{}]|\{[^{}]*\})*)\}\s*/\n\n$tr{podleader}head1 NAME\n\nlibPARI - $1\n\n/;
++  s/\\appendix\s*\{((?:[^{}]|\{[^{}]*\})*)\}\s*/\n\n$tr{podleader}head1 NAME\n\nAppendix - $1\n\n/;
++  s/\\section\s*\{((?:[^{}]|\{[^{}]*\})*)\}\s*/"\n\n$tr{podleader}head1 " . indexify($1) . "\n\n"/e;
+ 
+   # Try to delimit by :
+-  s/\\subsec(?:ref)?(?:unix)?\s*{(([^{}]+(?=[{}])|{[^{}]+})+)}([^\n]*):[\n ]/"\n\n$tr{podleader}head2 " . indexify("$1$3") . "\n\n"/e;
+-  s/\\subsubsec(?:ref)?(?:unix)?\s*{(([^{}]+(?=[{}])|{[^{}]+})+)}([^:]*):\s*/"\n\n$tr{podleader}head3 " . indexify("$1$3") . "\n\n"/e;
++  s/\\subsec(?:ref)?(?:unix)?\s*\{(([^{}]+(?=[{}])|{[^{}]+})+)\}([^\n]*):[\n ]/"\n\n$tr{podleader}head2 " . indexify("$1$3") . "\n\n"/e;
++  s/\\subsubsec(?:ref)?(?:unix)?\s*\{(([^{}]+(?=[{}])|{[^{}]+})+)\}([^:]*):\s*/"\n\n$tr{podleader}head3 " . indexify("$1$3") . "\n\n"/e;
+   s/\\subsubsec\s*{(([^{}]+(?=[{}])|{[^{}]+})+)}(.*)$/"\n\n$tr{podleader}head3 " . indexify("$1") . "$3\n\n"/me;
+   s/\\subseckbd\s*{(([^{}]+(?=[{}])|{[^{}]+})+)}([^:]*):\s*/"\n\n$tr{podleader}head2 " . indexify("$1$3") . "\n\n"/e;
+   # Try to delimit by ' '
+-  s/\\subsec(?:ref)?(?:unix)?\s*{(([^{}]+(?=[{}])|{[^{}]+})+)}(\S*)\s+/"\n\n$tr{podleader}head2 " . indexify("$1$3") . "\n\n"/e;
+-  s/\\subsec(?:title)?(?:unix)?\s*{(([^{}]+(?=[{}])|{[^{}]*})+)}:?\s*/"\n\n$tr{podleader}head2 " . indexify("$1") . "\n\n"/e;
++  s/\\subsec(?:ref)?(?:unix)?\s*\{(([^{}]+(?=[{}])|{[^{}]+})+)\}(\S*)\s+/"\n\n$tr{podleader}head2 " . indexify("$1$3") . "\n\n"/e;
++  s/\\subsec(?:title)?(?:unix)?\s*\{(([^{}]+(?=[{}])|{[^{}]*})+)\}:?\s*/"\n\n$tr{podleader}head2 " . indexify("$1") . "\n\n"/e;
+ 
+   # This is to skip preface in refcard:
+   /\Q$tr{podleader}\Ehead1|\\title(?![a-zA-Z])\s*\{/o and $seen_start = 1
+@@ -1097,18 +1097,18 @@ 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*([^{}]*)}/"X<" . for_index($1) . ">"/ge; #
+-  s/\\(?:ref|idx){\s*([^{}]*)}/"X<" . for_index($1) . ">$1"/ge;
++  s/\\s(?:ref|idx)\{\s*([^{}]*)\}/"X<" . for_index($1) . ">"/ge; #
++  s/\\(?:ref|idx)\{\s*([^{}]*)\}/"X<" . for_index($1) . ">$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;
+-# s/\\(?:key|li)\s*{(.*)}\s*{}[ \t]*\n/\n\n=back\n\n$1\n\n=over\n\n/mgs;
+-# s/\\(key|var)(?![a-zA-Z])\s*{(\w+)}/C<$2>/mg;
+-  s/\\var\s*{X<(\w+)>(\w+)}/X<$1>$tr{startcode}$2$tr{endcode}/mg;
+-  s/\\var\s*{f{}lag}/$tr{startcode}flag$tr{endcode}/mg;
+-
+-  s/\\metax(?![a-zA-Z])\s*{(.*)}\s*{\s*(\w+)(?=C\<)(.*)}[ \t]*\n/\n\n=item C<L<$2>$3>\n\n$1\n\n/mg;
+-  s/\\metax(?![a-zA-Z])\s*{(.*)}\s*{(.*)}[ \t]*\n/\n\n=item C<$2>\n\n$1\n\n/mg;
++# s/\\(?:key|li)\s*\{(.*)\}\s*\{(.+)\}[ \t]*\n/\n\n=item C<$2>\n\n$1\n\n/msg;
++# s/\\(?:key|li)\s*\{(.*)\}\s*\{\}[ \t]*\n/\n\n=back\n\n$1\n\n=over\n\n/mgs;
++# s/\\(key|var)(?![a-zA-Z])\s*\{(\w+)\}/C<$2>/mg;
++  s/\\var\s*\{X<(\w+)>(\w+)\}/X<$1>$tr{startcode}$2$tr{endcode}/mg;
++  s/\\var\s*\{f\{\}lag\}/$tr{startcode}flag$tr{endcode}/mg;
++
++  s/\\metax(?![a-zA-Z])\s*\{(.*)\}\s*\{\s*(\w+)(?=C\<)(.*)\}[ \t]*\n/\n\n=item C<L<$2>$3>\n\n$1\n\n/mg;
++  s/\\metax(?![a-zA-Z])\s*\{(.*)\}\s*\{(.*)\}[ \t]*\n/\n\n=item C<$2>\n\n$1\n\n/mg;
+   s/C\<\{\}=/C\<=/g;
+   s/\\fl(?![a-zA-Z])/I<flag>/g;
+   s/\\file(?![a-zA-Z])/F<file>/g;
+



More information about the arch-commits mailing list