[Bug 877651] Review Request: sagemath - A free open-source mathematics software system

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Product: Fedora
https://bugzilla.redhat.com/show_bug.cgi?id=877651

--- Comment #9 from Paulo Andrade <paulo.cesar.pereira.de.andrade@xxxxxxxxx> ---
(In reply to comment #8)

  Many thanks for the comments Volker!

> I've had a look at the test failures:
> * Fonts are missing, should be required.

I will work on it, should be only an extra requires.

> * the test suite needs the built documentation (to test the built-in help
> system), hg, scons, Singular help file, fortran compiler, 

  Documentation is built during package build, actually I have
a somewhat nasty problem with sphinx, see:
https://bugzilla.redhat.com/show_bug.cgi?id=839321
http://trac.sagemath.org/sage_trac/ticket/13230

> * lrcalc is missing, this is one of the spkgs.

  Is the spkg the official upstream package? I have a request
for information at:
http://trac.sagemath.org/sage_trac/ticket/11563#comment:45
but left it as one of the few known issues :-)

> * Segfaults when using pari and symmetrica. The latter has a symbol clash
> which probably explains it (sort_sum_rename.patch in the symmetrica spkg).
> Both are modified and linked in, so it is likely that you'll have to install
> the Sage-specific versions.

  I am afraid it should be another issue, the patch is applied, see:
http://pkgs.fedoraproject.org/cgit/symmetrica.git/tree/
but may be another symbol, because in fedora symmetrica is built
as a shared library.

> We are planning to move to git next year and revamp some of the built system
> in the process. I think it would be great if you write about your experience
> in packaging and what would make your life easier.

My major issues, in integrating sagemath in the system are
versions of components, it will be required an exception
to be able to use:

o old ipython version
o old and/or non standard cython
o old pexpect

Otherwise, other then sometimes relying on some very intrusive
patches, like the sphinx patch, it is mainly problems with
versions of components.

An interesting example is that I could not convince upstream
pari to use an extra flag to not call mp_set_memory_functions
in the library, so it now uses this patch:
---%<---
diff -up sage-5.4.1/spkg/build/sage-5.4.1/sage/libs/pari/gen.pyx.orig
sage-5.4.1/spkg/build/sage-5.4.1/sage/libs/pari/gen.pyx
--- sage-5.4.1/spkg/build/sage-5.4.1/sage/libs/pari/gen.pyx.orig    2012-11-12
21:15:23.758879845 -0200
+++ sage-5.4.1/spkg/build/sage-5.4.1/sage/libs/pari/gen.pyx    2012-11-12
21:15:43.213880590 -0200
@@ -182,6 +182,10 @@ include '../../ext/stdsage.pxi'
 cdef extern from "mpz_pylong.h":
     cdef int mpz_set_pylong(mpz_t dst, src) except -1

+cdef extern from "gmp.h":
+    cdef void mp_get_memory_functions(void**, void**, void**)
+    cdef void mp_set_memory_functions(void*, void*, void*)
+
 # Make sure we don't use mpz_t_offset before initializing it by
 # putting in a value that's likely to provoke a segmentation fault,
 # rather than silently corrupting memory.
@@ -9171,7 +9175,12 @@ cdef class PariInstance(sage.structure.p

         # The size here doesn't really matter, because we will allocate
         # our own stack anyway. We ask PARI not to set up signal handlers.
+        cdef void *_gmp_malloc
+        cdef void *_gmp_realloc
+        cdef void *_gmp_free
+        mp_get_memory_functions(&_gmp_malloc, &_gmp_realloc, &_gmp_free)
         pari_init_opts(10000, maxprime, INIT_JMPm | INIT_DFTm)
+        mp_set_memory_functions(_gmp_malloc, _gmp_realloc, _gmp_free)
         num_primes = maxprime

         # NOTE: sig_on() can only come AFTER pari_init_opts()!
---%<---
There are a few other somewhat related issues, like a "back
patch" for ntl to not rely on a patched ntl. I asked upstream
NTL to provide the features required by sagemath, see:
http://shoup.net/pipermail/ntl_shoup.net/2012-April/000033.html
I exchanged a few emails with Victor Shoup at that time,
but need to ping again :-), basically, something could be
done when a new NTL release were released.

Packaging sagemath itself has not been a major issue for
quite some time (I did package sagemath in mandriva since
late sage 3.x) it is the dependencies that make it non
trivial to package.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
package-review mailing list
package-review@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/package-review



[Index of Archives]     [Fedora Legacy]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]