diff options
author | Josh Blum <josh@joshknows.com> | 2011-07-20 12:01:55 -0700 |
---|---|---|
committer | Josh Blum <josh@joshknows.com> | 2011-07-20 12:01:55 -0700 |
commit | 1c25b884b67449de3f8ff6d4c2a2e8c83ae1f74f (patch) | |
tree | e521e5d68f8147baa64be84f2bdf3c8ca88f8e42 | |
parent | 72d080886d544b3ac974ed31e9fa526b4fb3036e (diff) |
core: hack needed for gri wisdom on windows because you cant pass file descriptors across library boundaries
-rw-r--r-- | gnuradio-core/src/lib/general/gri_fft.cc | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/gnuradio-core/src/lib/general/gri_fft.cc b/gnuradio-core/src/lib/general/gri_fft.cc index f20b15ca0a..0df1af25d6 100644 --- a/gnuradio-core/src/lib/general/gri_fft.cc +++ b/gnuradio-core/src/lib/general/gri_fft.cc @@ -23,6 +23,19 @@ #include <gri_fft.h> #include <gr_sys_paths.h> #include <fftw3.h> + +#ifdef _MSC_VER //http://www.fftw.org/install/windows.html#DLLwisdom +static void my_fftw_write_char(char c, void *f) { fputc(c, (FILE *) f); } +#define fftw_export_wisdom_to_file(f) fftw_export_wisdom(my_fftw_write_char, (void*) (f)) +#define fftwf_export_wisdom_to_file(f) fftwf_export_wisdom(my_fftw_write_char, (void*) (f)) +#define fftwl_export_wisdom_to_file(f) fftwl_export_wisdom(my_fftw_write_char, (void*) (f)) + +static int my_fftw_read_char(void *f) { return fgetc((FILE *) f); } +#define fftw_import_wisdom_from_file(f) fftw_import_wisdom(my_fftw_read_char, (void*) (f)) +#define fftwf_import_wisdom_from_file(f) fftwf_import_wisdom(my_fftw_read_char, (void*) (f)) +#define fftwl_import_wisdom_from_file(f) fftwl_import_wisdom(my_fftw_read_char, (void*) (f)) +#endif //_MSC_VER + #include <gr_complex.h> #include <stdlib.h> #include <string.h> |