#7761: Python 2.6.2.p4 faills to build on OpenSolaris
----------------------------------------------------------+-----------------
 Reporter:  drkirkby                                      |         Owner:  
drkirkby    
     Type:  defect                                        |        Status:  
needs_work  
 Priority:  major                                         |     Milestone:  
sage-4.3.1  
Component:  solaris                                       |    Resolution:  
fixed       
 Keywords:  python open solaris                           |        Author:  
David Kirkby
 Upstream:  None of the above - read trac for reasoning.  |      Reviewer:  
Jaap Spies  
   Merged:                                                |   Work_issues:      
        
----------------------------------------------------------+-----------------
Changes (by drkirkby):

  * merged:  sage-4.3.1.alpha2 =>


Comment:

 I can understand why this was not merged. I'm just in the process of
 updating #7818. I just need to double check everything. But the main
 change is that

  * The user can supply SAGE_CFLAGS to set some CFLAGS they want. Since
 they are not setting CFLAGS, them doing so will not risk corrupting the
 Sage environment.

  * CFLAGS will not be exported, but instead 'SAGE_COMMON_CFLAGS', which
 will contain what the user specific in SAGE_CFLAGS, plus those flags I
 deem sensible.

  * Any spkg-install script that wants to use these flags, would have to do
 so by explicitly doing so via.

 CFLAGS="$SAGE_COMOON_CFLAGS"

 That I believe will be safe. No package is forced to use my flags, but
 they can choose to. Hence I believe the changes to sage-env will be 100%
 safe, as they will not change any commonly used environment variables.

 So that's what I intend to do with sage-env. Now to the specific of this
 package.

 Prior to writing this new package, I looked at Python's spkg-install to
 see how the 64-bit build has been enabled on OS X, and you can see it
 added -m64 to gcc, so "gcc -m64" was used as a compiler. Hence I basically
 used a similar method.

 Having later looked more carefully at the python documentation, the way to
 pass flags is not the way it is done on the spkg-install for OS X, so
 whist it may work, it is not the right way to do it.

 I think the best solution is that I update sage-env, then update the
 python package, but in a way that is specific to Solaris, AIX and HP-UX.
 Then at a later date, we can try in an alpha0 to drop it in without it
 being specific to that platform.

 I think the ability to allow the user to pass their own flags is quite
 important, as they can use that to optimise gcc for thier processor. At
 the momemnt, 95% of Sage's code is being built for a generic processor,
 and not exploiting the features of anyones particular processor.

 So let me update sage-env in a safe way, then update this, to make use of
 sage-env's changes, but only on some rarer platforms.

 I think in the short term, Jaap should not worry about setting CFLAGS
 globally if it allows a package to build. Progress can then be made. He
 can always break the build process manually at some point, and unset it,
 just before cython gets to work.

 Leave it with me. I'll make what I believe are sensible decisions, then
 others can comment of course. In the mean time, I'm happy with this not
 being merged just now. I do agree it is sub-optimal.

 Dave

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/7761#comment:18>
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 post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to