[Ecls-list] Bug in configure/config.h.in?

Raymond Toy toy.raymond at gmail.com
Wed Sep 9 11:32:28 UTC 2009


Juan Jose Garcia-Ripoll wrote:
> On Wed, Sep 9, 2009 at 2:58 AM, Raymond Toy<toy.raymond at gmail.com> wrote:
>   
>> When converted to config.h (on Solaris 8), we get:
>>
>> #   ifdef HAVE_COPYSIGN
>> #    define signbit(x) (copysign(1.0,(x)) < 0)
>> #   else
>>     /* Fall back to no signed zero */
>> #    define ECL_SIGNED_ZERO 1
>> #    define signbit(x) ((x) < 0)
>> #   endif
>>
>> Note that ECL_SIGNED_ZERO is set to 1.  This is inconsistent with the
>> comment and with what appears to be the intent of config.h.in.  Perhaps
>> it doesn't matter if you don't have HAVE_COPYSIGN, but defining
>> ECL_SIGNED_ZERO with that signbit macro seems unlikely to work as desired.
>>     
>
> You are right. Autoconf is trashing a perfectly fine #undef statement
> that we set up. There are tricks to avoid this and I just committed
> one. Hope it works.
>
> But I am worried that current configure does not detect copysign, when
> I added explicit tests for it :-/
>
>   
I didn' mean to imply configure did not detect copysign.  It does.  On
my solaris system, HAVE_COPYSIGN is defined.

Also, I have another issue with configure.  I have LD_LIBRARY_PATH set
up to point to a directory that happens to have a version of libgmp
installed.  configure detects that libgmp is available and doesn't
configure gmp.  However, when I run make, the build fails because it
can't find gmp.h.  This makes sense since gmp.h isn't in any standard
location.  (I don't have write access to the standard locations, so I
stuck install gmp somewhere else.)

Maybe configure should check to see if gmp.h is available?

Ray





More information about the ecl-devel mailing list