[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: coreutils 4.5.2 fail to build on Solaris 2.6
From: |
Jim Meyering |
Subject: |
Re: coreutils 4.5.2 fail to build on Solaris 2.6 |
Date: |
Sun Oct 13 10:06:01 2002 |
User-agent: |
Gnus/5.090008 (Oort Gnus v0.08) Emacs/21.3.50 (i686-pc-linux-gnu) |
Thanks, Paul!
I've applied that for coreutils-4.5.3.
Paul Eggert <address@hidden> wrote:
>> From: Petter Reinholdtsen <address@hidden>
>> Date: Sat, 12 Oct 2002 14:15:19 +0200
>>
>> These are some quotes from trying to compile coreutils 4.5.2 on
>> Solaris 2.6. As you can se, the fesetround() function is required by
>> sleep, but missing in the build
>
> I looked into that problem some more. I found that if you use the Sun
> WorkShop 6 update 2 C compiler on Solaris 2.6, you need to compile
> with '-R/opt/SUNWspro/lib -L/opt/SUNWspro/lib -lm9x' if you want to
> call fesetround. You didn't mention which compiler you're using, but
> you may be able to work around your problem by building with
> LDFLAGS='-R/opt/SUNWspro/lib -L/opt/SUNWspro/lib -lm9x'.
>
> However, I don't think it is a good idea for "configure" to deduce
> this automatically, since most Solaris 2.6 hosts won't have the m9x
> library, even if the build host has it.
>
>> -#ifdef FE_UPWARD
>> +#if defined(FE_UPWARD) && defined(HAVE_FESETROUND)
>
> Yes, that's the obvious simple fix to lib/xnanosleep.c (along with a
> change to 'configure' to set HAVE_FESETROUND). But in looking in the
> code, I came up with the following fix that entirely avoids the
> fesetround porting morass.
>
> 2002-10-12 Paul Eggert <address@hidden>
>
> * lib/xnanosleep.c: There's no need to futz with the rounding mode,
> since the code should work properly even in the default rounding mode.
> (<fenv.h>): Do not include.
> (#pragma STDC FENV_ACCESS ON): Remove.
> (xnanosleep): Don't futz with rounding state.
> * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Remove fenv.h.