Ethan Merritt wrote:
> On Thursday 28 September 2006 02:44 am, Daniel J Sebald wrote:
>
>>/*
>>Order of preference and why:
>>
>> tgamma() - It's the true gamma, perfect.
>> gamma() - If there is a gamma() in the library and no tgamma()
>>there is a slim chance (now... who knows in the future?) that it is
>>the true gamma. At run time we will check if it is true gamma or log
>>gamma. If it is log gamma, it won't be used because signgam is not
>>thread safe.
>> lgamma_r() - This is thread safe and will work. Tempted to put
>>this at higher priority than gamma() but OK here for now. lngamma() -
>>Gnuplot's version of log gamma as last resort. sgngam is local to
>>this code so is thread safe.
>
>
> No run-time changes of mind, please.
> Get it worked out correctly when the program is built and
> then run with it.
That shouldn't be too bad, but it will require a little bit of time because I don't know autoconf so well and don't have too much free time at the moment.
http://www.gnu.org/software/autoconf/manual/html_node/Runtime.html#Runtime
i.e., inside autoconf, check if HAVE_GAMMA, if so then do AC_RUN_IFELSE() and then appropriately define something like GAMMA_IS_LNGAMMA.
Per, if you are fluent in autoconf language, maybe you could do such a thing in a few minutes.
Dan
|