octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: HAVE_FFTW macro


From: John W. Eaton
Subject: Re: HAVE_FFTW macro
Date: Sun, 17 Mar 2013 04:47:27 -0400
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.11) Gecko/20121122 Icedove/10.0.11

On 03/17/2013 04:33 AM, Daniel J Sebald wrote:
On 03/16/2013 11:20 PM, Rik wrote:
On 03/16/2013 12:52 AM, address@hidden wrote:
Is something being overlooked there?
What does

octave_config_info ("features")

show? This is a list of all the HAVE_X macros, with the common "HAVE_"
part omitted. On my system, it has FFTW3, but not FFTW, so it looks
like the testif check is wrong.
Dan,

The problem seems to be that not all #defines are captured in the new
"features" keyword. The definition for HAVE_FFTW is in configure.ac in
the
AH_BOTTOM macro which means it is copied to the bottom of config.h.

/* Octave is currently unable to use FFTW unless both float
and double versions are available. */
#if defined (HAVE_FFTW3)&& defined (HAVE_FFTW3F)
#define HAVE_FFTW
#endif

I wasn't following closely what jwe did when he added the "features"
keyword, but hopefully it is simple to fix.

OK, thanks. Probably in over my head had I looked for that. But now that
you point out the test above I think I see what the problem is. The test
is "defined". Both of those variables appear to be defined, if I'm
following correctly, but they are given the value 0, i.e.,

FFTW3 = 0
FFTW3F = 0

So maybe either the test should be something other than defined() and
instead check the value of the FFTW3, FFTW3F, or FFTW3 and FFTW3F should
be left undefined rather than setting them to 0.

Dan

Does your generated config.h file really have

#define HAVE_FFTW3 0

?  Or is it

/* #undef HAVE_FFTW3 */

The latter is what I have.

Anyway, I think I have a fix for the original problem. Once I'm doing testing, I'll push it.

jwe


reply via email to

[Prev in Thread] Current Thread [Next in Thread]