#17630: Further clean up of ATLAS (or equivalent BLAS) linking
-------------------------------------+-------------------------------------
       Reporter:  jpflori            |        Owner:
           Type:  defect             |       Status:  needs_work
       Priority:  major              |    Milestone:  sage-6.5
      Component:  packages:          |   Resolution:
  standard                           |    Merged in:
       Keywords:                     |    Reviewers:
        Authors:  Jean-Pierre Flori  |  Work issues:
Report Upstream:  N/A                |       Commit:
         Branch:                     |  045266e53354e7f3badb2e2b7dcd4f2c0cea2fa2
  u/jpflori/ticket/17630             |     Stopgaps:
   Dependencies:                     |
-------------------------------------+-------------------------------------

Comment (by jdemeyer):

 As far as I know, nothing in Sage ''directly'' uses BLAS, it is only used
 through external libraries (linbox, numpy, ...)

 So it's a mystery why some extensions in `src/module_list.py` list the
 BLAS libraries without any other library. And indeed, on my Linux box,
 Sage still works after the following change:
 {{{
 #!diff
 diff --git a/src/module_list.py b/src/module_list.py
 index e01cd4b..7d818d6 100755
 --- a/src/module_list.py
 +++ b/src/module_list.py
 @@ -1024,8 +1024,7 @@ ext_modules = [
                sources = ['sage/matrix/echelon_matrix.pyx']),

      Extension('sage.matrix.change_ring',
 -              sources = ['sage/matrix/change_ring.pyx'],
 -              libraries=[BLAS, BLAS2]),
 +              sources = ['sage/matrix/change_ring.pyx']),

      Extension('sage.matrix.matrix',
                sources = ['sage/matrix/matrix.pyx']),
 @@ -1040,8 +1039,7 @@ ext_modules = [
                sources = ['sage/matrix/matrix2.pyx']),

      Extension('sage.matrix.matrix_complex_double_dense',
 -              sources = ['sage/matrix/matrix_complex_double_dense.pyx'],
 -              libraries=[BLAS, BLAS2]),
 +              sources = ['sage/matrix/matrix_complex_double_dense.pyx']),

      Extension('sage.matrix.matrix_cyclo_dense',
                sources = ['sage/matrix/matrix_cyclo_dense.pyx'],
 @@ -1052,8 +1050,7 @@ ext_modules = [
                sources = ['sage/matrix/matrix_dense.pyx']),

      Extension('sage.matrix.matrix_double_dense',
 -              sources = ['sage/matrix/matrix_double_dense.pyx'],
 -              libraries=[BLAS, BLAS2]),
 +              sources = ['sage/matrix/matrix_double_dense.pyx']),

      Extension('sage.matrix.matrix_generic_dense',
                sources = ['sage/matrix/matrix_generic_dense.pyx']),
 @@ -1116,8 +1113,7 @@ ext_modules = [
                sources = ['sage/matrix/matrix_rational_sparse.pyx']),

      Extension('sage.matrix.matrix_real_double_dense',
 -              sources = ['sage/matrix/matrix_real_double_dense.pyx'],
 -              libraries=[BLAS, BLAS2]),
 +              sources = ['sage/matrix/matrix_real_double_dense.pyx']),

      Extension('sage.matrix.matrix_sparse',
                sources = ['sage/matrix/matrix_sparse.pyx']),
 @@ -1254,12 +1250,10 @@ ext_modules = [
                sources = ['sage/modules/module.pyx']),

      Extension('sage.modules.vector_complex_double_dense',
 -              ['sage/modules/vector_complex_double_dense.pyx'],
 -              libraries = [BLAS, BLAS2]),
 +              ['sage/modules/vector_complex_double_dense.pyx']),

      Extension('sage.modules.vector_double_dense',
 -              ['sage/modules/vector_double_dense.pyx'],
 -              libraries = [BLAS, BLAS2]),
 +              ['sage/modules/vector_double_dense.pyx']),

      Extension('sage.modules.vector_integer_dense',
                sources = ['sage/modules/vector_integer_dense.pyx']),
 @@ -1278,8 +1272,7 @@ ext_modules = [
                sources = ['sage/modules/vector_rational_dense.pyx']),

      Extension('sage.modules.vector_real_double_dense',
 -              ['sage/modules/vector_real_double_dense.pyx'],
 -              libraries = [BLAS, BLAS2]),
 +              ['sage/modules/vector_real_double_dense.pyx']),

      ################################
      ##
 }}}

 Perhaps those libraries are needed for some reason (I know Linux in
 particular is very flexible with defining libraries) but it's something to
 be investigated...

--
Ticket URL: <http://trac.sagemath.org/ticket/17630#comment:40>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to