[arch-commits] Commit in sage-mathematics/trunk (PKGBUILD fes02.patch)

Antonio Rojas arojas at archlinux.org
Fri Jan 2 09:30:54 UTC 2015


    Date: Friday, January 2, 2015 @ 10:30:53
  Author: arojas
Revision: 125161

Fix build against libfes 0.2

Added:
  sage-mathematics/trunk/fes02.patch
Modified:
  sage-mathematics/trunk/PKGBUILD

-------------+
 PKGBUILD    |    7 +++++--
 fes02.patch |   45 +++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 50 insertions(+), 2 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2015-01-02 08:51:10 UTC (rev 125160)
+++ PKGBUILD	2015-01-02 09:30:53 UTC (rev 125161)
@@ -17,7 +17,7 @@
 license=('GPL')
 makedepends=('ipython2' 'cython2' 'ppl' 'glpk' 'mpfi' 'polybori' 'singular' 'libcliquer' 'ecl' 'libgap' 'givaro' 'libmpc' 'lcalc' 'lrcalc' 'libfes' 'cryptominisat' 'eclib' 'gmp-ecm' 'zn_poly' 'pynac' 'linbox' 'gsl' 'boost' 'scons' 'ratpoints' 'symmetrica' 'fflas-ffpack' 'gd' 'python2-jinja' 'python2-numpy')
 source=("https://github.com/sagemath/sage/archive/$pkgver.tar.gz" "http://www.sagemath.org/packages/upstream/pexpect/pexpect-2.0.tar.bz2" 
-'extensions.patch' 'c_lib.patch' 'env.patch' 'paths.patch' 'blas.patch' 'clean.patch' 'skip-check.patch' 'gap-hap.patch' 'pexpect-env.patch')
+'extensions.patch' 'c_lib.patch' 'env.patch' 'paths.patch' 'blas.patch' 'clean.patch' 'skip-check.patch' 'gap-hap.patch' 'pexpect-env.patch' 'fes02.patch')
 md5sums=('e40736461992e62af3a84cf9a212c9d1'
          'd9a3e113ed147dcee8f89962a8dccd43'
          '5770766ae676491f79162d2062ce7c02'
@@ -28,7 +28,8 @@
          '46c212a3a6713b0f78c370c7186d0982'
          '5947a420a0b1483f0cbc74c76895789b'
          '631ee6b8b3e7d12bb7858cfd841af483'
-         'a83a3b1bc7fcb7cbf752a83a8311fc42')
+         'a83a3b1bc7fcb7cbf752a83a8311fc42'
+         '506944613082ba7f5b34360939ca90eb')
 # changelog=ChangeLog
 
 prepare(){
@@ -58,6 +59,8 @@
   patch -p0 -i $srcdir/skip-check.patch
 # don't use is_package_installed function
   patch -p0 -i $srcdir/gap-hap.patch
+# fix build against libfes 0.2
+  patch -p0 -i $srcdir/fes02.patch
 
 # use python2
   sed -i 's|#!/usr/bin/env python|#!/usr/bin/env python2|' src/bin/*

Added: fes02.patch
===================================================================
--- fes02.patch	                        (rev 0)
+++ fes02.patch	2015-01-02 09:30:53 UTC (rev 125161)
@@ -0,0 +1,45 @@
+diff --git a/src/sage/libs/fes.pyx b/src/sage/libs/fes.pyx
+index 40b9c23..d188cf0 100644
+--- src/sage/libs/fes.pyx
++++ src/sage/libs/fes.pyx
+@@ -1,17 +1,19 @@
+ """
+-Binding for the FES library.
++Binding for the libFES library.
+ 
+ Finding solutions of systems of boolean equations by exhaustive
+ search, via the fes library. This is usually (much) faster than
+ computing a Groebner basis, except in special cases where the latter
+ is particularly easy.
+ 
+-The FES library is presently only able to deal with polynomials in 64
++More information is available at [http://www.lifl.fr/~bouillag/fes].
++
++The libFES library is presently only able to deal with polynomials in 64
+ variables. Performing a full exhaustive search over 64 variables will
+ take a **long** time. The number of variables can be artificially
+ reduced to 64 by specializing some of them.
+ 
+-Note that the FES library **requires** at least of the equations to be
++Note that the libFES library **requires** at least of the equations to be
+ non-linear.
+ 
+ AUTHORS:
+@@ -71,7 +73,7 @@ from libc.stdint cimport uint64_t
+ cdef extern from "fes_interface.h":
+     ctypedef int (*solution_callback_t)(void *, uint64_t)
+ 
+-    void exhaustive_search_wrapper(int n, int n_eqs, int degree, int ***coeffs, solution_callback_t callback, void* callback_state, int verbose)
++    void exhaustive_search_wrapper(int n, int n_eqs, int degree, int ***coeffs, solution_callback_t callback, void* callback_state, int verbose, int T)
+ 
+ 
+ include 'sage/ext/interrupt.pxi'  #sig_on(), sig_off()
+@@ -219,7 +221,7 @@ def exhaustive_search(eqs,  max_sols=Infinity, verbose=False):
+ 
+     # ------- runs the library
+     sig_on()
+-    exhaustive_search_wrapper(n, len(eqs), degree, coeffs, report_solution, <void *> internal_state, verbose)
++    exhaustive_search_wrapper(n, len(eqs), degree, coeffs, report_solution, <void *> internal_state, verbose, 0)
+     sig_off()
+ 
+     # ------- frees memory occupied by the dense representation of the equations



More information about the arch-commits mailing list