Subject: Re: configure and asinl function problem
From: Joost Kraaijeveld <[email-masked]>
To: [email-masked]
Cc: Cygwin <[email-masked]>
Date: Sat, 08 Oct 2005 16:10:09 +0200

On Sat, 2005-10-08 at 06:40 -0700, Tim Prince wrote: 
> Maybe you have omitted information, which might explain why you 
> discarded some obvious possibilities, but here are some points:
> newlib doesn't include full support for long double math, as you hinted.
The problem is that configure seems to think that there *is* support 
"long double math": the test succeeds and HAVE_ASINL (and all other
double math) is defined. So both compile and link appear to be succesful
as far as configure is concerned.

Before choosing a solution, I want to understand why the problem is
occuring.

According to the cited mail however, that is because configure checks
the availibility of "long double math" with a short piece of code,
supplying *it's own* function definition (and not using e.g. math.h) and
linking with *some* libraries. Because I do not understand how configure
is doing that (I have looked into the macros but failed to understand
them), I do not know what exactly the code is configure is using or to
which libraries configure links the executable. I think btw that it is
using libstdc++:
$ objdump.exe -t libstdc++.a | grep asinl
[  2](sec  1)(fl 0x00)(ty  20)(scl   2) (nx 0) 0x00000020 _asinl

> You could supply your own asinl() (easy way: use the built in x87 
> atan2l())).
> If the function you want is in libstdc++, gcc doesn't see it, but g++ 
> should see it.
> You could fix the config.h manually, if, for example, you have a reason 
> for running it only under g++, but you want the result to be applicable 
> to gcc as well.
For this moment I edit the config.h but that is not the permanant
solution of choise. Maintaining ansi C99 function btw is not my
permanent choice either ;-).

-- 
Groeten,

Joost Kraaijeveld
Askesis B.V.
Molukkenstraat 14
6524NB Nijmegen
tel: 024-3888063 / 06-51855277
fax: 024-3608416
e-mail: [email-masked]
web: www.askesis.nl 

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/