On Mon, Jan 18, 2010 at 12:22 PM, Dr. David Kirkby
<david.kir...@onetel.net> wrote:
> William Stein wrote:
>>
>> On Sun, Jan 17, 2010 at 11:20 PM, Dr. David Kirkby
>> <david.kir...@onetel.net> wrote:
>>>
>>> Last week was a pretty annoying week for Solaris support. Two quite major
>>> obstacles came up.
>>>
>>> 1) #7932: _Complex_I undeclared - a new bug totally stops a Solaris 10
>>> build.
>>>
>>> has introduced code which exploits a bug in gcc, which stops Sage
>>> building
>>> on Solaris. This was particularly annoying, as 4.3.1 was expected to be
>>> the
>>> first version to build easily on Solaris. But that rather put a stop to
>>> that.
>>>
>>>
>>> I notice Robert has included what he concedes is a 'hack' to disable the
>>> code. I  I've not bothered reviewing that yet, as there may be other ways
>>> around this issue.
>>
>> Robert explained this fix to us yesterday at Sage Days and it sounded
>> pretty reasonable to me.
>>
>> William
>
>
> I'm just trying that now. The URL Robert gave on the ticket
>
> http://sage/home/robertwb/cython/cython-0.12.p1
>
> is invalid, though I think I'm managed to work out what he means. I've
> managed to find something called cython-0.12.p1.spkg
>
>> In my experience setting CFLAGS when they don't need to be set will
>> cause major problems with anything that uses distutils (e.g., in the
>> context of Cython above).  In fact, numpy didn't get into Sage for a
>> *long* time initially because your sage-env script by default set
>> CFLAGS (to be empty, actually).  This prevented numpy from building in
>> the context of Sage.  I only finally figured this out with help from
>> some core numpy folks at a scipy conference....  (and you should have
>> heard me swear at distutils!)
>
>
> How does this sound then.
>
> Set SAGE_COMMON_FLAGS
>
> to be a reasonable set of CFLAGS for most packages, so most .spkg's can
> simply use
>
> CFLAGS=$SAGE_COMMON_FLAGS
>
> which will have -g, -Wall, and if necessary -m64, when using gcc. For other
> compilers, the options will be different, but always a reasonable set for a
> compiler.
>
> Then the environment variable CFLAGS is unmodified in any way, unless a
> package choses to use them.
>
> It's not quite as nice, in that most .spkg's include
>
> CFLAGS=$SAGE_COMMON_FLAGS
> (likewise for C++ and Fortran).
>
> but at least it will get rid of all this SAGE64 stuff, and also work for any
> compiler, which the current setup will not, as compiler flags are
> hard-coded.

I think that is a great idea!

William
-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org

Reply via email to