├── README.md
├── build
    ├── fftw-windows-vs2012
    │   ├── bench
    │   │   ├── bench.vcxproj
    │   │   └── bench.vcxproj.filters
    │   ├── benchf
    │   │   ├── benchf.vcxproj
    │   │   └── benchf.vcxproj.filters
    │   ├── fftw-3.6-libs.sln
    │   ├── libfftw-3.6
    │   │   ├── config.h
    │   │   ├── libfftw-3.6.vcxproj
    │   │   └── libfftw-3.6.vcxproj.filters
    │   └── libfftwf-3.6
    │   │   ├── config.h
    │   │   ├── libfftwf-3.6.vcxproj
    │   │   └── libfftwf-3.6.vcxproj.filters
    ├── fftw_android.sh
    ├── fftw_ios.sh
    ├── fftw_linux.sh
    └── fftw_macos.sh
├── include
    └── fftw3.h
└── library
    ├── android
        └── libfftw3f.a
    ├── ios
        └── libfftw3f.a
    ├── linux
        └── libfftw3f.a
    ├── macos
        └── libfftw3f.a
    └── win_vs2012
        ├── libfftw3f.lib
        ├── libfftwf-3.6.dll
        └── libfftwf-3.6.lib
/README.md:
--------------------------------------------------------------------------------
 1 | # fftw-build
 2 | FFTW build solutions and precompiled libraries for linux/android/ios/macos/windows.
 3 | 
 4 | ## Precompiled libraries
 5 | 1. Get precompiled library for ***linux*** from [this git repository](https://github.com/godock/fftw-build/tree/master/library/linux).  
 6 | 2. Get precompiled library for ***android*** from [this git repository](https://github.com/godock/fftw-build/tree/master/library/android).  
 7 | 3. Get precompiled library for ***ios*** from [this git repository](https://github.com/godock/fftw-build/tree/master/library/ios).  
 8 | 4. Get precompiled library for ***macos*** from [this git repository](https://github.com/godock/fftw-build/tree/master/library/macos).  
 9 | 5. Get precompiled library for ***windows*** from [fftw.org windows install page](http://fftw.org/install/windows.html) ***or*** [this git repository](https://github.com/godock/fftw-build/tree/master/library/win_vs2012).  
10 | 
11 | ## Build Solutions
12 | Prepare fftw source from [fftw.org download](http://fftw.org/download.html).  
13 | 
14 | #### 1. Build FFTW for Linux/Android/IOS/MacOS  
15 | Copy its buildscript in [build folder](https://github.com/godock/fftw-build/tree/master/build) to fftw source folder and run to generate the library.  
16 | 
17 | #### 2. Build FFTW for Windows  
18 | Copy [fftw-windows-vs2012](https://github.com/godock/fftw-build/tree/master/build/fftw-windows-vs2012) to fftw source folder and then load the fftw-3.6-libs.sln by visual studio 2012.  
19 | 
--------------------------------------------------------------------------------
/build/fftw-windows-vs2012/bench/bench.vcxproj:
--------------------------------------------------------------------------------
  1 | 
  2 | 
  3 |   
  4 |     
  5 |       Debug
  6 |       Win32
  7 |     
  8 |     
  9 |       Debug
 10 |       x64
 11 |     
 12 |     
 13 |       Release
 14 |       Win32
 15 |     
 16 |     
 17 |       Release
 18 |       x64
 19 |     
 20 |     
 21 |       Static-Debug
 22 |       Win32
 23 |     
 24 |     
 25 |       Static-Debug
 26 |       x64
 27 |     
 28 |     
 29 |       Static-Release
 30 |       Win32
 31 |     
 32 |     
 33 |       Static-Release
 34 |       x64
 35 |     
 36 |   
 37 |   
 38 |     
 39 |       $(IntDir)libbench2\
 40 |       $(IntDir)libbench2\
 41 |       $(IntDir)libbench2\
 42 |       $(IntDir)libbench2\
 43 |       $(IntDir)libbench2\
 44 |       $(IntDir)libbench2\
 45 |     
 46 |     
 47 |       $(IntDir)libbench2\
 48 |       $(IntDir)libbench2\
 49 |       $(IntDir)libbench2\
 50 |       $(IntDir)libbench2\
 51 |       $(IntDir)libbench2\
 52 |       $(IntDir)libbench2\
 53 |     
 54 |     
 55 |       $(IntDir)libbench2\
 56 |       $(IntDir)libbench2\
 57 |       $(IntDir)libbench2\
 58 |       $(IntDir)libbench2\
 59 |       $(IntDir)libbench2\
 60 |       $(IntDir)libbench2\
 61 |     
 62 |     
 63 |       $(IntDir)libbench2\
 64 |       $(IntDir)libbench2\
 65 |       $(IntDir)libbench2\
 66 |       $(IntDir)libbench2\
 67 |       $(IntDir)libbench2\
 68 |       $(IntDir)libbench2\
 69 |     
 70 |     
 71 |       $(IntDir)libbench2\
 72 |       $(IntDir)libbench2\
 73 |       $(IntDir)libbench2\
 74 |       $(IntDir)libbench2\
 75 |       $(IntDir)libbench2\
 76 |       $(IntDir)libbench2\
 77 |     
 78 |     
 79 |       $(IntDir)libbench2\
 80 |       $(IntDir)libbench2\
 81 |       $(IntDir)libbench2\
 82 |       $(IntDir)libbench2\
 83 |       $(IntDir)libbench2\
 84 |       $(IntDir)libbench2\
 85 |     
 86 |     
 87 |       $(IntDir)libbench2\
 88 |       $(IntDir)libbench2\
 89 |       $(IntDir)libbench2\
 90 |       $(IntDir)libbench2\
 91 |       $(IntDir)libbench2\
 92 |       $(IntDir)libbench2\
 93 |     
 94 |     
 95 |       $(IntDir)libbench2\
 96 |       $(IntDir)libbench2\
 97 |       $(IntDir)libbench2\
 98 |       $(IntDir)libbench2\
 99 |       $(IntDir)libbench2\
100 |       $(IntDir)libbench2\
101 |     
102 |     
103 |       $(IntDir)libbench2\
104 |       $(IntDir)libbench2\
105 |       $(IntDir)libbench2\
106 |       $(IntDir)libbench2\
107 |       $(IntDir)libbench2\
108 |       $(IntDir)libbench2\
109 |     
110 |     
111 |       $(IntDir)libbench2\
112 |       $(IntDir)libbench2\
113 |       $(IntDir)libbench2\
114 |       $(IntDir)libbench2\
115 |       $(IntDir)libbench2\
116 |       $(IntDir)libbench2\
117 |     
118 |     
119 |       $(IntDir)libbench2\
120 |       $(IntDir)libbench2\
121 |       $(IntDir)libbench2\
122 |       $(IntDir)libbench2\
123 |       $(IntDir)libbench2\
124 |       $(IntDir)libbench2\
125 |     
126 |     
127 |       $(IntDir)libbench2\
128 |       $(IntDir)libbench2\
129 |       $(IntDir)libbench2\
130 |       $(IntDir)libbench2\
131 |       $(IntDir)libbench2\
132 |       $(IntDir)libbench2\
133 |     
134 |     
135 |       $(IntDir)libbench2\
136 |       $(IntDir)libbench2\
137 |       $(IntDir)libbench2\
138 |       $(IntDir)libbench2\
139 |       $(IntDir)libbench2\
140 |       $(IntDir)libbench2\
141 |     
142 |     
143 |       $(IntDir)libbench2\
144 |       $(IntDir)libbench2\
145 |       $(IntDir)libbench2\
146 |       $(IntDir)libbench2\
147 |       $(IntDir)libbench2\
148 |       $(IntDir)libbench2\
149 |     
150 |     
151 |       $(IntDir)libbench2\
152 |       $(IntDir)libbench2\
153 |       $(IntDir)libbench2\
154 |       $(IntDir)libbench2\
155 |       $(IntDir)libbench2\
156 |       $(IntDir)libbench2\
157 |     
158 |     
159 |       $(IntDir)libbench2\
160 |       $(IntDir)libbench2\
161 |       $(IntDir)libbench2\
162 |       $(IntDir)libbench2\
163 |       $(IntDir)libbench2\
164 |       $(IntDir)libbench2\
165 |     
166 |     
167 |       $(IntDir)libbench2\
168 |       $(IntDir)libbench2\
169 |       $(IntDir)libbench2\
170 |       $(IntDir)libbench2\
171 |       $(IntDir)libbench2\
172 |       $(IntDir)libbench2\
173 |     
174 |     
175 |       $(IntDir)libbench2\
176 |       $(IntDir)libbench2\
177 |       $(IntDir)libbench2\
178 |       $(IntDir)libbench2\
179 |       $(IntDir)libbench2\
180 |       $(IntDir)libbench2\
181 |     
182 |     
183 |       $(IntDir)libbench2\
184 |       $(IntDir)libbench2\
185 |       $(IntDir)libbench2\
186 |       $(IntDir)libbench2\
187 |       $(IntDir)libbench2\
188 |       $(IntDir)libbench2\
189 |     
190 |     
191 |       $(IntDir)libbench2\
192 |       $(IntDir)libbench2\
193 |       $(IntDir)libbench2\
194 |       $(IntDir)libbench2\
195 |       $(IntDir)libbench2\
196 |       $(IntDir)libbench2\
197 |     
198 |     
199 |       $(IntDir)libbench2\
200 |       $(IntDir)libbench2\
201 |       $(IntDir)libbench2\
202 |       $(IntDir)libbench2\
203 |       $(IntDir)libbench2\
204 |       $(IntDir)libbench2\
205 |     
206 |     
207 |       $(IntDir)libbench2\
208 |       $(IntDir)libbench2\
209 |       $(IntDir)libbench2\
210 |       $(IntDir)libbench2\
211 |       $(IntDir)libbench2\
212 |       $(IntDir)libbench2\
213 |     
214 |     
215 |       $(IntDir)libbench2\
216 |       $(IntDir)libbench2\
217 |       $(IntDir)libbench2\
218 |       $(IntDir)libbench2\
219 |       $(IntDir)libbench2\
220 |       $(IntDir)libbench2\
221 |     
222 |     
223 |       $(IntDir)libbench2\
224 |       $(IntDir)libbench2\
225 |       $(IntDir)libbench2\
226 |       $(IntDir)libbench2\
227 |       $(IntDir)libbench2\
228 |       $(IntDir)libbench2\
229 |     
230 |     
231 |       $(IntDir)libbench2\
232 |       $(IntDir)libbench2\
233 |       $(IntDir)libbench2\
234 |       $(IntDir)libbench2\
235 |       $(IntDir)libbench2\
236 |       $(IntDir)libbench2\
237 |     
238 |     
239 |       $(IntDir)libbench2\
240 |       $(IntDir)libbench2\
241 |       $(IntDir)libbench2\
242 |       $(IntDir)libbench2\
243 |       $(IntDir)libbench2\
244 |       $(IntDir)libbench2\
245 |     
246 |     
247 |       $(IntDir)libbench2\
248 |       $(IntDir)libbench2\
249 |       $(IntDir)libbench2\
250 |       $(IntDir)libbench2\
251 |       $(IntDir)libbench2\
252 |       $(IntDir)libbench2\
253 |     
254 |     
255 |       $(IntDir)libbench2\
256 |       $(IntDir)libbench2\
257 |       $(IntDir)libbench2\
258 |       $(IntDir)libbench2\
259 |       $(IntDir)libbench2\
260 |       $(IntDir)libbench2\
261 |     
262 |     
263 |       $(IntDir)libbench2\
264 |       $(IntDir)libbench2\
265 |       $(IntDir)libbench2\
266 |       $(IntDir)libbench2\
267 |       $(IntDir)libbench2\
268 |       $(IntDir)libbench2\
269 |     
270 |     
271 |       $(IntDir)libbench2\
272 |       $(IntDir)libbench2\
273 |       $(IntDir)libbench2\
274 |       $(IntDir)libbench2\
275 |       $(IntDir)libbench2\
276 |       $(IntDir)libbench2\
277 |     
278 |     
279 |       $(IntDir)libbench2\
280 |       $(IntDir)libbench2\
281 |       $(IntDir)libbench2\
282 |       $(IntDir)libbench2\
283 |       $(IntDir)libbench2\
284 |       $(IntDir)libbench2\
285 |     
286 |     
287 |       $(IntDir)libbench2\
288 |       $(IntDir)libbench2\
289 |       $(IntDir)libbench2\
290 |       $(IntDir)libbench2\
291 |       $(IntDir)libbench2\
292 |       $(IntDir)libbench2\
293 |     
294 |     
295 |       $(IntDir)libbench2\
296 |       $(IntDir)libbench2\
297 |       $(IntDir)libbench2\
298 |       $(IntDir)libbench2\
299 |       $(IntDir)libbench2\
300 |       $(IntDir)libbench2\
301 |     
302 |     
303 |       $(IntDir)bench\
304 |       $(IntDir)bench\
305 |       $(IntDir)bench\
306 |       $(IntDir)bench\
307 |       $(IntDir)bench\
308 |       $(IntDir)bench\
309 |     
310 |     
311 |       $(IntDir)bench\
312 |       $(IntDir)bench\
313 |       $(IntDir)bench\
314 |       $(IntDir)bench\
315 |       $(IntDir)bench\
316 |       $(IntDir)bench\
317 |     
318 |     
319 |       $(IntDir)bench\
320 |       $(IntDir)bench\
321 |       $(IntDir)bench\
322 |       $(IntDir)bench\
323 |       $(IntDir)bench\
324 |       $(IntDir)bench\
325 |     
326 |   
327 |   
328 |     {64D2C338-62CF-4443-B8A3-FD1EB571BCA5}
329 |     Win32Proj
330 |     bench
331 |   
332 |   
333 |   
334 |     Application
335 |     true
336 |     Unicode
337 |     v110
338 |   
339 |   
340 |     Application
341 |     true
342 |     Unicode
343 |     v110
344 |   
345 |   
346 |     Application
347 |     false
348 |     true
349 |     MultiByte
350 |     v110
351 |   
352 |   
353 |     Application
354 |     false
355 |     true
356 |     Unicode
357 |     v110
358 |   
359 |   
360 |     Application
361 |     false
362 |     true
363 |     Unicode
364 |     v110
365 |   
366 |   
367 |     Application
368 |     false
369 |     true
370 |     Unicode
371 |     v110
372 |   
373 |   
374 |     Application
375 |     false
376 |     false
377 |     Unicode
378 |     v110
379 |   
380 |   
381 |     Application
382 |     false
383 |     false
384 |     Unicode
385 |     v110
386 |   
387 |   
388 |   
389 |   
390 |   
391 |     
392 |   
393 |   
394 |     
395 |   
396 |   
397 |     
398 |   
399 |   
400 |     
401 |   
402 |   
403 |     
404 |   
405 |   
406 |     
407 |   
408 |   
409 |     
410 |   
411 |   
412 |     
413 |   
414 |   
415 |   
416 |     true
417 |   
418 |   
419 |     true
420 |   
421 |   
422 |     false
423 |   
424 |   
425 |     false
426 |   
427 |   
428 |     false
429 |   
430 |   
431 |     false
432 |   
433 |   
434 |     false
435 |   
436 |   
437 |     false
438 |   
439 |   
440 |     
441 |       
442 |       
443 |       Level3
444 |       Disabled
445 |       FFTW_DLL;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
446 |       true
447 |       $(ProjectDir)..\..\api\;$(ProjectDir)..\..\dft\;$(ProjectDir)..\..\rdft\;$(ProjectDir)..\..\kernel\;$(ProjectDir)..\..\libbench2\;$(ProjectDir)..\libfftw-3.6\;%(AdditionalIncludeDirectories)
448 |       AdvancedVectorExtensions
449 |       true
450 |       MultiThreadedDebug
451 |     
452 |     
453 |       Console
454 |       true
455 |       $(ProjectDir)..\Debug\
456 |       libfftw-3.6.lib;%(AdditionalDependencies)
457 |     
458 |   
459 |   
460 |     
461 |       
462 |       
463 |       Level3
464 |       Disabled
465 |       FFTW_DLL;WIN64;_WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
466 |       false
467 |       $(ProjectDir)..\..\api\;$(ProjectDir)..\..\dft\;$(ProjectDir)..\..\rdft\;$(ProjectDir)..\..\kernel\;$(ProjectDir)..\..\libbench2\;$(ProjectDir)..\libfftw-3.6\;%(AdditionalIncludeDirectories)
468 |       StreamingSIMDExtensions2
469 |       true
470 |       MultiThreadedDebug
471 |     
472 |     
473 |       Console
474 |       true
475 |       $(ProjectDir)..\X64\Debug\
476 |       libfftw-3.6.lib;%(AdditionalDependencies)
477 |     
478 |   
479 |   
480 |     
481 |       Level3
482 |       
483 |       
484 |       MaxSpeed
485 |       true
486 |       true
487 |       FFTW_DLL;WIN32;_WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
488 |       true
489 |       $(ProjectDir)..\..\api\;$(ProjectDir)..\..\dft\;$(ProjectDir)..\..\rdft\;$(ProjectDir)..\..\kernel\;$(ProjectDir)..\..\libbench2\;$(ProjectDir)..\libfftw-3.6\;%(AdditionalIncludeDirectories)
490 |       AdvancedVectorExtensions
491 |     
492 |     
493 |       Console
494 |       true
495 |       true
496 |       true
497 |       $(ProjectDir)..\Release\
498 |       libfftw-3.6.lib;%(AdditionalDependencies)
499 |     
500 |   
501 |   
502 |     
503 |       Level3
504 |       
505 |       
506 |       MaxSpeed
507 |       true
508 |       true
509 |       FFTW_DLL;WIN64;_WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
510 |       true
511 |       $(ProjectDir)..\..\api\;$(ProjectDir)..\..\dft\;$(ProjectDir)..\..\rdft\;$(ProjectDir)..\..\kernel\;$(ProjectDir)..\..\libbench2\;$(ProjectDir)..\libfftw-3.6\;%(AdditionalIncludeDirectories)
512 |       StreamingSIMDExtensions2
513 |       MultiThreaded
514 |     
515 |     
516 |       Console
517 |       true
518 |       true
519 |       true
520 |       $(ProjectDir)..\X64\Release\
521 |       libfftw-3.6.lib;%(AdditionalDependencies)
522 |     
523 |   
524 |   
525 |     
526 |       Level3
527 |       
528 |       
529 |       MaxSpeed
530 |       true
531 |       true
532 |       _WIN32;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
533 |       true
534 |       $(ProjectDir)..\..\api\;$(ProjectDir)..\..\dft\;$(ProjectDir)..\..\rdft\;$(ProjectDir)..\..\kernel\;$(ProjectDir)..\..\libbench2\;$(ProjectDir)..\libfftw-3.6\;%(AdditionalIncludeDirectories)
535 |       AdvancedVectorExtensions
536 |     
537 |     
538 |       Console
539 |       true
540 |       true
541 |       true
542 |       $(ProjectDir)..\Static-Release\;%(AdditionalLibraryDirectories)
543 |       libfftw-3.6.lib;%(AdditionalDependencies)
544 |     
545 |   
546 |   
547 |     
548 |       Level3
549 |       
550 |       
551 |       MaxSpeed
552 |       true
553 |       true
554 |       _WIN64;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
555 |       true
556 |       $(ProjectDir)..\..\api\;$(ProjectDir)..\..\dft\;$(ProjectDir)..\..\rdft\;$(ProjectDir)..\..\kernel\;$(ProjectDir)..\..\libbench2\;$(ProjectDir)..\libfftw-3.6\;%(AdditionalIncludeDirectories)
557 |       StreamingSIMDExtensions2
558 |       MultiThreaded
559 |     
560 |     
561 |       Console
562 |       true
563 |       true
564 |       true
565 |       $(ProjectDir)..\X64\Static-Release\;%(AdditionalLibraryDirectories)
566 |       libfftw-3.6.lib;%(AdditionalDependencies)
567 |     
568 |   
569 |   
570 |     
571 |       Level3
572 |       
573 |       
574 |       Disabled
575 |       
576 |       
577 |       false
578 |       WIN32;_WIN32;_DEBUG;_WINDOWS;_CONSOLE;%(PreprocessorDefinitions)
579 |       true
580 |       $(ProjectDir)..\..\api\;$(ProjectDir)..\..\dft\;$(ProjectDir)..\..\rdft\;$(ProjectDir)..\..\kernel\;$(ProjectDir)..\..\libbench2\;$(ProjectDir)..\libfftw-3.6\;%(AdditionalIncludeDirectories)
581 |       AdvancedVectorExtensions
582 |       MultiThreadedDebug
583 |       Default
584 |       ProgramDatabase
585 |     
586 |     
587 |       Console
588 |       true
589 |       true
590 |       true
591 |       $(ProjectDir)..\Static-Debug\;%(AdditionalLibraryDirectories)
592 |       libfftw-3.6.lib;%(AdditionalDependencies)
593 |     
594 |   
595 |   
596 |     
597 |       Level3
598 |       
599 |       
600 |       Disabled
601 |       
602 |       
603 |       false
604 |       WIN64;_WIN64;_DEBUG;_WINDOWS;_CONSOLE;%(PreprocessorDefinitions)
605 |       true
606 |       $(ProjectDir)..\..\api\;$(ProjectDir)..\..\dft\;$(ProjectDir)..\..\rdft\;$(ProjectDir)..\..\kernel\;$(ProjectDir)..\..\libbench2\;$(ProjectDir)..\libfftw-3.6\;%(AdditionalIncludeDirectories)
607 |       StreamingSIMDExtensions2
608 |       MultiThreadedDebug
609 |       Default
610 |       ProgramDatabase
611 |     
612 |     
613 |       Console
614 |       true
615 |       true
616 |       true
617 |       $(ProjectDir)..\X64\Static-Debug\;%(AdditionalLibraryDirectories)
618 |       libfftw-3.6.lib;%(AdditionalDependencies)
619 |     
620 |   
621 |   
622 |   
623 |   
624 | 
--------------------------------------------------------------------------------
/build/fftw-windows-vs2012/bench/bench.vcxproj.filters:
--------------------------------------------------------------------------------
  1 | 
  2 | 
  3 |   
  4 |     
  5 |       {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
  6 |       cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
  7 |     
  8 |     
  9 |       {93995380-89BD-4b04-88EB-625FBE52EBFB}
 10 |       h;hpp;hxx;hm;inl;inc;xsd
 11 |     
 12 |     
 13 |       {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
 14 |       rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
 15 |     
 16 |     
 17 |       {b2aeefc3-9e90-448f-bd9b-06dba0c8cdc0}
 18 |     
 19 |     
 20 |       {def61918-8019-481a-a18b-3aceecd21315}
 21 |     
 22 |   
 23 |   
 24 |     
 25 |       Source Files\libbench2
 26 |     
 27 |     
 28 |       Source Files\libbench2
 29 |     
 30 |     
 31 |       Source Files\libbench2
 32 |     
 33 |     
 34 |       Source Files\libbench2
 35 |     
 36 |     
 37 |       Source Files\libbench2
 38 |     
 39 |     
 40 |       Source Files\libbench2
 41 |     
 42 |     
 43 |       Source Files\libbench2
 44 |     
 45 |     
 46 |       Source Files\libbench2
 47 |     
 48 |     
 49 |       Source Files\libbench2
 50 |     
 51 |     
 52 |       Source Files\libbench2
 53 |     
 54 |     
 55 |       Source Files\libbench2
 56 |     
 57 |     
 58 |       Source Files\libbench2
 59 |     
 60 |     
 61 |       Source Files\libbench2
 62 |     
 63 |     
 64 |       Source Files\libbench2
 65 |     
 66 |     
 67 |       Source Files\libbench2
 68 |     
 69 |     
 70 |       Source Files\libbench2
 71 |     
 72 |     
 73 |       Source Files\libbench2
 74 |     
 75 |     
 76 |       Source Files\libbench2
 77 |     
 78 |     
 79 |       Source Files\libbench2
 80 |     
 81 |     
 82 |       Source Files\libbench2
 83 |     
 84 |     
 85 |       Source Files\libbench2
 86 |     
 87 |     
 88 |       Source Files\libbench2
 89 |     
 90 |     
 91 |       Source Files\libbench2
 92 |     
 93 |     
 94 |       Source Files\libbench2
 95 |     
 96 |     
 97 |       Source Files\libbench2
 98 |     
 99 |     
100 |       Source Files\libbench2
101 |     
102 |     
103 |       Source Files\libbench2
104 |     
105 |     
106 |       Source Files\libbench2
107 |     
108 |     
109 |       Source Files\libbench2
110 |     
111 |     
112 |       Source Files\libbench2
113 |     
114 |     
115 |       Source Files\libbench2
116 |     
117 |     
118 |       Source Files\libbench2
119 |     
120 |     
121 |       Source Files\libbench2
122 |     
123 |     
124 |       Source Files\bench
125 |     
126 |     
127 |       Source Files\bench
128 |     
129 |     
130 |       Source Files\bench
131 |     
132 |   
133 | 
--------------------------------------------------------------------------------
/build/fftw-windows-vs2012/benchf/benchf.vcxproj:
--------------------------------------------------------------------------------
  1 | 
  2 | 
  3 |   
  4 |     
  5 |       Debug
  6 |       Win32
  7 |     
  8 |     
  9 |       Debug
 10 |       x64
 11 |     
 12 |     
 13 |       Release
 14 |       Win32
 15 |     
 16 |     
 17 |       Release
 18 |       x64
 19 |     
 20 |     
 21 |       Static-Debug
 22 |       Win32
 23 |     
 24 |     
 25 |       Static-Debug
 26 |       x64
 27 |     
 28 |     
 29 |       Static-Release
 30 |       Win32
 31 |     
 32 |     
 33 |       Static-Release
 34 |       x64
 35 |     
 36 |   
 37 |   
 38 |     {456BCE80-9C5E-46D1-9597-CC3E2FE647E6}
 39 |     Win32Proj
 40 |     benchf
 41 |   
 42 |   
 43 |   
 44 |     Application
 45 |     true
 46 |     Unicode
 47 |     v110
 48 |   
 49 |   
 50 |     Application
 51 |     true
 52 |     Unicode
 53 |     v110
 54 |   
 55 |   
 56 |     Application
 57 |     true
 58 |     Unicode
 59 |     v110
 60 |   
 61 |   
 62 |     Application
 63 |     true
 64 |     Unicode
 65 |     v110
 66 |   
 67 |   
 68 |     Application
 69 |     false
 70 |     true
 71 |     Unicode
 72 |     v110
 73 |   
 74 |   
 75 |     Application
 76 |     false
 77 |     true
 78 |     Unicode
 79 |     v110
 80 |   
 81 |   
 82 |     Application
 83 |     false
 84 |     true
 85 |     Unicode
 86 |     v110
 87 |   
 88 |   
 89 |     Application
 90 |     false
 91 |     true
 92 |     Unicode
 93 |     v110
 94 |   
 95 |   
 96 |   
 97 |   
 98 |   
 99 |     
100 |   
101 |   
102 |     
103 |   
104 |   
105 |     
106 |   
107 |   
108 |     
109 |   
110 |   
111 |     
112 |   
113 |   
114 |     
115 |   
116 |   
117 |     
118 |   
119 |   
120 |     
121 |   
122 |   
123 |   
124 |     true
125 |   
126 |   
127 |     true
128 |   
129 |   
130 |     true
131 |   
132 |   
133 |     true
134 |   
135 |   
136 |     false
137 |   
138 |   
139 |     false
140 |   
141 |   
142 |     false
143 |   
144 |   
145 |     false
146 |   
147 |   
148 |     
149 |       
150 |       
151 |       Level3
152 |       Disabled
153 |       FFTW_DLL;_WIN32;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
154 |       $(ProjectDir)..\..\api\;$(ProjectDir)..\..\dft\;$(ProjectDir)..\..\rdft\;$(ProjectDir)..\..\kernel\;$(ProjectDir)..\..\libbench2\;$(ProjectDir)..\libfftwf-3.6\
155 |       AdvancedVectorExtensions
156 |       true
157 |       MultiThreadedDebug
158 |     
159 |     
160 |       Console
161 |       true
162 |       $(ProjectDir)..\Debug\
163 |       libfftwf-3.6.lib;%(AdditionalDependencies)
164 |     
165 |   
166 |   
167 |     
168 |       
169 |       
170 |       Level3
171 |       Disabled
172 |       FFTW_DLL;_WIN64;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
173 |       $(ProjectDir)..\..\api\;$(ProjectDir)..\..\dft\;$(ProjectDir)..\..\rdft\;$(ProjectDir)..\..\kernel\;$(ProjectDir)..\..\libbench2\;$(ProjectDir)..\libfftwf-3.6\
174 |       StreamingSIMDExtensions
175 |       true
176 |       MultiThreadedDebug
177 |     
178 |     
179 |       Console
180 |       true
181 |       $(ProjectDir)..\X64\Debug\
182 |       libfftwf-3.6.lib;%(AdditionalDependencies)
183 |     
184 |   
185 |   
186 |     
187 |       
188 |       
189 |       Level3
190 |       Disabled
191 |       _WIN32;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
192 |       $(ProjectDir)..\..\api\;$(ProjectDir)..\..\dft\;$(ProjectDir)..\..\rdft\;$(ProjectDir)..\..\kernel\;$(ProjectDir)..\..\libbench2\;$(ProjectDir)..\libfftwf-3.6\
193 |       AdvancedVectorExtensions
194 |       true
195 |       MultiThreadedDebug
196 |     
197 |     
198 |       Console
199 |       true
200 |       $(ProjectDir)..\Static-Debug\
201 |       libfftwf-3.6.lib;%(AdditionalDependencies)
202 |     
203 |   
204 |   
205 |     
206 |       
207 |       
208 |       Level3
209 |       Disabled
210 |       _WIN64;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
211 |       $(ProjectDir)..\..\api\;$(ProjectDir)..\..\dft\;$(ProjectDir)..\..\rdft\;$(ProjectDir)..\..\kernel\;$(ProjectDir)..\..\libbench2\;$(ProjectDir)..\libfftwf-3.6\
212 |       StreamingSIMDExtensions
213 |       true
214 |       MultiThreadedDebug
215 |     
216 |     
217 |       Console
218 |       true
219 |       $(ProjectDir)..\X64\Static-Debug\
220 |       libfftwf-3.6.lib;%(AdditionalDependencies)
221 |     
222 |   
223 |   
224 |     
225 |       Level3
226 |       
227 |       
228 |       MaxSpeed
229 |       true
230 |       true
231 |       FFTW_DLL;_WIN32;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
232 |       $(ProjectDir)..\..\api\;$(ProjectDir)..\..\dft\;$(ProjectDir)..\..\rdft\;$(ProjectDir)..\..\kernel\;$(ProjectDir)..\..\libbench2\;$(ProjectDir)..\libfftwf-3.6\
233 |       AdvancedVectorExtensions
234 |       true
235 |     
236 |     
237 |       Console
238 |       true
239 |       true
240 |       true
241 |       $(ProjectDir)..\Release\
242 |       libfftwf-3.6.lib;%(AdditionalDependencies)
243 |     
244 |   
245 |   
246 |     
247 |       Level3
248 |       
249 |       
250 |       MaxSpeed
251 |       true
252 |       true
253 |       FFTW_DLL;_WIN64;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
254 |       $(ProjectDir)..\..\api\;$(ProjectDir)..\..\dft\;$(ProjectDir)..\..\rdft\;$(ProjectDir)..\..\kernel\;$(ProjectDir)..\..\libbench2\;$(ProjectDir)..\libfftwf-3.6\
255 |       StreamingSIMDExtensions
256 |       true
257 |       MultiThreaded
258 |     
259 |     
260 |       Console
261 |       true
262 |       true
263 |       true
264 |       $(ProjectDir)..\X64\Release\
265 |       libfftwf-3.6.lib;%(AdditionalDependencies)
266 |     
267 |   
268 |   
269 |     
270 |       Level3
271 |       
272 |       
273 |       MaxSpeed
274 |       true
275 |       true
276 |       _WIN32;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
277 |       $(ProjectDir)..\..\api\;$(ProjectDir)..\..\dft\;$(ProjectDir)..\..\rdft\;$(ProjectDir)..\..\kernel\;$(ProjectDir)..\..\libbench2\;$(ProjectDir)..\libfftwf-3.6\
278 |       AdvancedVectorExtensions
279 |       true
280 |     
281 |     
282 |       Console
283 |       true
284 |       true
285 |       true
286 |       $(ProjectDir)..\Static-Release\
287 |       libfftwf-3.6.lib;%(AdditionalDependencies)
288 |     
289 |   
290 |   
291 |     
292 |       Level3
293 |       
294 |       
295 |       MaxSpeed
296 |       true
297 |       true
298 |       _WIN64;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
299 |       $(ProjectDir)..\..\api\;$(ProjectDir)..\..\dft\;$(ProjectDir)..\..\rdft\;$(ProjectDir)..\..\kernel\;$(ProjectDir)..\..\libbench2\;$(ProjectDir)..\libfftwf-3.6\
300 |       StreamingSIMDExtensions
301 |       true
302 |       MultiThreaded
303 |     
304 |     
305 |       Console
306 |       true
307 |       true
308 |       true
309 |       $(ProjectDir)..\X64\Static-Release\
310 |       libfftwf-3.6.lib;%(AdditionalDependencies)
311 |     
312 |   
313 |   
314 |     
315 |       $(IntDir)libbench2\
316 |       $(IntDir)libbench2\
317 |       $(IntDir)libbench2\
318 |       $(IntDir)libbench2\
319 |       $(IntDir)libbench2\
320 |       $(IntDir)libbench2\
321 |       $(IntDir)libbench2\
322 |       $(IntDir)libbench2\
323 |     
324 |     
325 |       $(IntDir)libbench2\
326 |       $(IntDir)libbench2\
327 |       $(IntDir)libbench2\
328 |       $(IntDir)libbench2\
329 |       $(IntDir)libbench2\
330 |       $(IntDir)libbench2\
331 |       $(IntDir)libbench2\
332 |       $(IntDir)libbench2\
333 |     
334 |     
335 |       $(IntDir)libbench2\
336 |       $(IntDir)libbench2\
337 |       $(IntDir)libbench2\
338 |       $(IntDir)libbench2\
339 |       $(IntDir)libbench2\
340 |       $(IntDir)libbench2\
341 |       $(IntDir)libbench2\
342 |       $(IntDir)libbench2\
343 |     
344 |     
345 |       $(IntDir)libbench2\
346 |       $(IntDir)libbench2\
347 |       $(IntDir)libbench2\
348 |       $(IntDir)libbench2\
349 |       $(IntDir)libbench2\
350 |       $(IntDir)libbench2\
351 |       $(IntDir)libbench2\
352 |       $(IntDir)libbench2\
353 |     
354 |     
355 |       $(IntDir)libbench2\
356 |       $(IntDir)libbench2\
357 |       $(IntDir)libbench2\
358 |       $(IntDir)libbench2\
359 |       $(IntDir)libbench2\
360 |       $(IntDir)libbench2\
361 |       $(IntDir)libbench2\
362 |       $(IntDir)libbench2\
363 |     
364 |     
365 |       $(IntDir)libbench2\
366 |       $(IntDir)libbench2\
367 |       $(IntDir)libbench2\
368 |       $(IntDir)libbench2\
369 |       $(IntDir)libbench2\
370 |       $(IntDir)libbench2\
371 |       $(IntDir)libbench2\
372 |       $(IntDir)libbench2\
373 |     
374 |     
375 |       $(IntDir)libbench2\
376 |       $(IntDir)libbench2\
377 |       $(IntDir)libbench2\
378 |       $(IntDir)libbench2\
379 |       $(IntDir)libbench2\
380 |       $(IntDir)libbench2\
381 |       $(IntDir)libbench2\
382 |       $(IntDir)libbench2\
383 |     
384 |     
385 |       $(IntDir)libbench2\
386 |       $(IntDir)libbench2\
387 |       $(IntDir)libbench2\
388 |       $(IntDir)libbench2\
389 |       $(IntDir)libbench2\
390 |       $(IntDir)libbench2\
391 |       $(IntDir)libbench2\
392 |       $(IntDir)libbench2\
393 |     
394 |     
395 |       $(IntDir)libbench2\
396 |       $(IntDir)libbench2\
397 |       $(IntDir)libbench2\
398 |       $(IntDir)libbench2\
399 |       $(IntDir)libbench2\
400 |       $(IntDir)libbench2\
401 |       $(IntDir)libbench2\
402 |       $(IntDir)libbench2\
403 |     
404 |     
405 |       $(IntDir)libbench2\
406 |       $(IntDir)libbench2\
407 |       $(IntDir)libbench2\
408 |       $(IntDir)libbench2\
409 |       $(IntDir)libbench2\
410 |       $(IntDir)libbench2\
411 |       $(IntDir)libbench2\
412 |       $(IntDir)libbench2\
413 |     
414 |     
415 |       $(IntDir)libbench2\
416 |       $(IntDir)libbench2\
417 |       $(IntDir)libbench2\
418 |       $(IntDir)libbench2\
419 |       $(IntDir)libbench2\
420 |       $(IntDir)libbench2\
421 |       $(IntDir)libbench2\
422 |       $(IntDir)libbench2\
423 |     
424 |     
425 |       $(IntDir)libbench2\
426 |       $(IntDir)libbench2\
427 |       $(IntDir)libbench2\
428 |       $(IntDir)libbench2\
429 |       $(IntDir)libbench2\
430 |       $(IntDir)libbench2\
431 |       $(IntDir)libbench2\
432 |       $(IntDir)libbench2\
433 |     
434 |     
435 |       $(IntDir)libbench2\
436 |       $(IntDir)libbench2\
437 |       $(IntDir)libbench2\
438 |       $(IntDir)libbench2\
439 |       $(IntDir)libbench2\
440 |       $(IntDir)libbench2\
441 |       $(IntDir)libbench2\
442 |       $(IntDir)libbench2\
443 |     
444 |     
445 |       $(IntDir)libbench2\
446 |       $(IntDir)libbench2\
447 |       $(IntDir)libbench2\
448 |       $(IntDir)libbench2\
449 |       $(IntDir)libbench2\
450 |       $(IntDir)libbench2\
451 |       $(IntDir)libbench2\
452 |       $(IntDir)libbench2\
453 |     
454 |     
455 |       $(IntDir)libbench2\
456 |       $(IntDir)libbench2\
457 |       $(IntDir)libbench2\
458 |       $(IntDir)libbench2\
459 |       $(IntDir)libbench2\
460 |       $(IntDir)libbench2\
461 |       $(IntDir)libbench2\
462 |       $(IntDir)libbench2\
463 |     
464 |     
465 |       $(IntDir)libbench2\
466 |       $(IntDir)libbench2\
467 |       $(IntDir)libbench2\
468 |       $(IntDir)libbench2\
469 |       $(IntDir)libbench2\
470 |       $(IntDir)libbench2\
471 |       $(IntDir)libbench2\
472 |       $(IntDir)libbench2\
473 |     
474 |     
475 |       $(IntDir)libbench2\
476 |       $(IntDir)libbench2\
477 |       $(IntDir)libbench2\
478 |       $(IntDir)libbench2\
479 |       $(IntDir)libbench2\
480 |       $(IntDir)libbench2\
481 |       $(IntDir)libbench2\
482 |       $(IntDir)libbench2\
483 |     
484 |     
485 |       $(IntDir)libbench2\
486 |       $(IntDir)libbench2\
487 |       $(IntDir)libbench2\
488 |       $(IntDir)libbench2\
489 |       $(IntDir)libbench2\
490 |       $(IntDir)libbench2\
491 |       $(IntDir)libbench2\
492 |       $(IntDir)libbench2\
493 |     
494 |     
495 |       $(IntDir)libbench2\
496 |       $(IntDir)libbench2\
497 |       $(IntDir)libbench2\
498 |       $(IntDir)libbench2\
499 |       $(IntDir)libbench2\
500 |       $(IntDir)libbench2\
501 |       $(IntDir)libbench2\
502 |       $(IntDir)libbench2\
503 |     
504 |     
505 |       $(IntDir)libbench2\
506 |       $(IntDir)libbench2\
507 |       $(IntDir)libbench2\
508 |       $(IntDir)libbench2\
509 |       $(IntDir)libbench2\
510 |       $(IntDir)libbench2\
511 |       $(IntDir)libbench2\
512 |       $(IntDir)libbench2\
513 |     
514 |     
515 |       $(IntDir)libbench2\
516 |       $(IntDir)libbench2\
517 |       $(IntDir)libbench2\
518 |       $(IntDir)libbench2\
519 |       $(IntDir)libbench2\
520 |       $(IntDir)libbench2\
521 |       $(IntDir)libbench2\
522 |       $(IntDir)libbench2\
523 |     
524 |     
525 |       $(IntDir)libbench2\
526 |       $(IntDir)libbench2\
527 |       $(IntDir)libbench2\
528 |       $(IntDir)libbench2\
529 |       $(IntDir)libbench2\
530 |       $(IntDir)libbench2\
531 |       $(IntDir)libbench2\
532 |       $(IntDir)libbench2\
533 |     
534 |     
535 |       $(IntDir)libbench2\
536 |       $(IntDir)libbench2\
537 |       $(IntDir)libbench2\
538 |       $(IntDir)libbench2\
539 |       $(IntDir)libbench2\
540 |       $(IntDir)libbench2\
541 |       $(IntDir)libbench2\
542 |       $(IntDir)libbench2\
543 |     
544 |     
545 |       $(IntDir)libbench2\
546 |       $(IntDir)libbench2\
547 |       $(IntDir)libbench2\
548 |       $(IntDir)libbench2\
549 |       $(IntDir)libbench2\
550 |       $(IntDir)libbench2\
551 |       $(IntDir)libbench2\
552 |       $(IntDir)libbench2\
553 |     
554 |     
555 |       $(IntDir)libbench2\
556 |       $(IntDir)libbench2\
557 |       $(IntDir)libbench2\
558 |       $(IntDir)libbench2\
559 |       $(IntDir)libbench2\
560 |       $(IntDir)libbench2\
561 |       $(IntDir)libbench2\
562 |       $(IntDir)libbench2\
563 |     
564 |     
565 |       $(IntDir)libbench2\
566 |       $(IntDir)libbench2\
567 |       $(IntDir)libbench2\
568 |       $(IntDir)libbench2\
569 |       $(IntDir)libbench2\
570 |       $(IntDir)libbench2\
571 |       $(IntDir)libbench2\
572 |       $(IntDir)libbench2\
573 |     
574 |     
575 |       $(IntDir)libbench2\
576 |       $(IntDir)libbench2\
577 |       $(IntDir)libbench2\
578 |       $(IntDir)libbench2\
579 |       $(IntDir)libbench2\
580 |       $(IntDir)libbench2\
581 |       $(IntDir)libbench2\
582 |       $(IntDir)libbench2\
583 |     
584 |     
585 |       $(IntDir)libbench2\
586 |       $(IntDir)libbench2\
587 |       $(IntDir)libbench2\
588 |       $(IntDir)libbench2\
589 |       $(IntDir)libbench2\
590 |       $(IntDir)libbench2\
591 |       $(IntDir)libbench2\
592 |       $(IntDir)libbench2\
593 |     
594 |     
595 |       $(IntDir)libbench2\
596 |       $(IntDir)libbench2\
597 |       $(IntDir)libbench2\
598 |       $(IntDir)libbench2\
599 |       $(IntDir)libbench2\
600 |       $(IntDir)libbench2\
601 |       $(IntDir)libbench2\
602 |       $(IntDir)libbench2\
603 |     
604 |     
605 |       $(IntDir)libbench2\
606 |       $(IntDir)libbench2\
607 |       $(IntDir)libbench2\
608 |       $(IntDir)libbench2\
609 |       $(IntDir)libbench2\
610 |       $(IntDir)libbench2\
611 |       $(IntDir)libbench2\
612 |       $(IntDir)libbench2\
613 |     
614 |     
615 |       $(IntDir)libbench2\
616 |       $(IntDir)libbench2\
617 |       $(IntDir)libbench2\
618 |       $(IntDir)libbench2\
619 |       $(IntDir)libbench2\
620 |       $(IntDir)libbench2\
621 |       $(IntDir)libbench2\
622 |       $(IntDir)libbench2\
623 |     
624 |     
625 |       $(IntDir)libbench2\
626 |       $(IntDir)libbench2\
627 |       $(IntDir)libbench2\
628 |       $(IntDir)libbench2\
629 |       $(IntDir)libbench2\
630 |       $(IntDir)libbench2\
631 |       $(IntDir)libbench2\
632 |       $(IntDir)libbench2\
633 |     
634 |     
635 |       $(IntDir)libbench2\
636 |       $(IntDir)libbench2\
637 |       $(IntDir)libbench2\
638 |       $(IntDir)libbench2\
639 |       $(IntDir)libbench2\
640 |       $(IntDir)libbench2\
641 |       $(IntDir)libbench2\
642 |       $(IntDir)libbench2\
643 |     
644 |     
645 |       $(IntDir)bench\
646 |       $(IntDir)bench\
647 |       $(IntDir)bench\
648 |       $(IntDir)bench\
649 |       $(IntDir)bench\
650 |       $(IntDir)bench\
651 |       $(IntDir)bench\
652 |       $(IntDir)bench\
653 |     
654 |     
655 |       $(IntDir)bench\
656 |       $(IntDir)bench\
657 |       $(IntDir)bench\
658 |       $(IntDir)bench\
659 |       $(IntDir)bench\
660 |       $(IntDir)bench\
661 |       $(IntDir)bench\
662 |       $(IntDir)bench\
663 |     
664 |     
665 |       $(IntDir)bench\
666 |       $(IntDir)bench\
667 |       $(IntDir)bench\
668 |       $(IntDir)bench\
669 |       $(IntDir)bench\
670 |       $(IntDir)bench\
671 |       $(IntDir)bench\
672 |       $(IntDir)bench\
673 |     
674 |   
675 |   
676 |   
677 |   
678 | 
--------------------------------------------------------------------------------
/build/fftw-windows-vs2012/benchf/benchf.vcxproj.filters:
--------------------------------------------------------------------------------
  1 | 
  2 | 
  3 |   
  4 |     
  5 |       {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
  6 |       cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
  7 |     
  8 |     
  9 |       {93995380-89BD-4b04-88EB-625FBE52EBFB}
 10 |       h;hpp;hxx;hm;inl;inc;xsd
 11 |     
 12 |     
 13 |       {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
 14 |       rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
 15 |     
 16 |     
 17 |       {39facc6e-60e6-4ded-986f-1dd15e28bcb9}
 18 |     
 19 |     
 20 |       {ae53eb16-dec2-4cc0-bcd5-1f79c5a30d04}
 21 |     
 22 |   
 23 |   
 24 |     
 25 |       Source Files\libbench2
 26 |     
 27 |     
 28 |       Source Files\libbench2
 29 |     
 30 |     
 31 |       Source Files\libbench2
 32 |     
 33 |     
 34 |       Source Files\libbench2
 35 |     
 36 |     
 37 |       Source Files\libbench2
 38 |     
 39 |     
 40 |       Source Files\libbench2
 41 |     
 42 |     
 43 |       Source Files\libbench2
 44 |     
 45 |     
 46 |       Source Files\libbench2
 47 |     
 48 |     
 49 |       Source Files\libbench2
 50 |     
 51 |     
 52 |       Source Files\libbench2
 53 |     
 54 |     
 55 |       Source Files\libbench2
 56 |     
 57 |     
 58 |       Source Files\libbench2
 59 |     
 60 |     
 61 |       Source Files\libbench2
 62 |     
 63 |     
 64 |       Source Files\libbench2
 65 |     
 66 |     
 67 |       Source Files\libbench2
 68 |     
 69 |     
 70 |       Source Files\libbench2
 71 |     
 72 |     
 73 |       Source Files\libbench2
 74 |     
 75 |     
 76 |       Source Files\libbench2
 77 |     
 78 |     
 79 |       Source Files\libbench2
 80 |     
 81 |     
 82 |       Source Files\libbench2
 83 |     
 84 |     
 85 |       Source Files\libbench2
 86 |     
 87 |     
 88 |       Source Files\libbench2
 89 |     
 90 |     
 91 |       Source Files\libbench2
 92 |     
 93 |     
 94 |       Source Files\libbench2
 95 |     
 96 |     
 97 |       Source Files\libbench2
 98 |     
 99 |     
100 |       Source Files\libbench2
101 |     
102 |     
103 |       Source Files\libbench2
104 |     
105 |     
106 |       Source Files\libbench2
107 |     
108 |     
109 |       Source Files\libbench2
110 |     
111 |     
112 |       Source Files\libbench2
113 |     
114 |     
115 |       Source Files\libbench2
116 |     
117 |     
118 |       Source Files\libbench2
119 |     
120 |     
121 |       Source Files\libbench2
122 |     
123 |     
124 |       Source Files\bench
125 |     
126 |     
127 |       Source Files\bench
128 |     
129 |     
130 |       Source Files\bench
131 |     
132 |   
133 | 
--------------------------------------------------------------------------------
/build/fftw-windows-vs2012/fftw-3.6-libs.sln:
--------------------------------------------------------------------------------
 1 | 
 2 | Microsoft Visual Studio Solution File, Format Version 11.00
 3 | # Visual Studio 2010
 4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libfftwf-3.6", "libfftwf-3.6\libfftwf-3.6.vcxproj", "{2482251C-2F99-4779-B61D-B091852B4A36}"
 5 | EndProject
 6 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libfftw-3.6", "libfftw-3.6\libfftw-3.6.vcxproj", "{EA3DCC95-2423-4EA0-A508-7A427B4C0594}"
 7 | EndProject
 8 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "benchf", "benchf\benchf.vcxproj", "{456BCE80-9C5E-46D1-9597-CC3E2FE647E6}"
 9 | 	ProjectSection(ProjectDependencies) = postProject
10 | 		{2482251C-2F99-4779-B61D-B091852B4A36} = {2482251C-2F99-4779-B61D-B091852B4A36}
11 | 	EndProjectSection
12 | EndProject
13 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bench", "bench\bench.vcxproj", "{64D2C338-62CF-4443-B8A3-FD1EB571BCA5}"
14 | 	ProjectSection(ProjectDependencies) = postProject
15 | 		{EA3DCC95-2423-4EA0-A508-7A427B4C0594} = {EA3DCC95-2423-4EA0-A508-7A427B4C0594}
16 | 	EndProjectSection
17 | EndProject
18 | Global
19 | 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
20 | 		Debug|Win32 = Debug|Win32
21 | 		Debug|x64 = Debug|x64
22 | 		Release|Win32 = Release|Win32
23 | 		Release|x64 = Release|x64
24 | 		Static-Debug|Win32 = Static-Debug|Win32
25 | 		Static-Debug|x64 = Static-Debug|x64
26 | 		Static-Release|Win32 = Static-Release|Win32
27 | 		Static-Release|x64 = Static-Release|x64
28 | 	EndGlobalSection
29 | 	GlobalSection(ProjectConfigurationPlatforms) = postSolution
30 | 		{2482251C-2F99-4779-B61D-B091852B4A36}.Debug|Win32.ActiveCfg = Debug|Win32
31 | 		{2482251C-2F99-4779-B61D-B091852B4A36}.Debug|Win32.Build.0 = Debug|Win32
32 | 		{2482251C-2F99-4779-B61D-B091852B4A36}.Debug|x64.ActiveCfg = Debug|x64
33 | 		{2482251C-2F99-4779-B61D-B091852B4A36}.Debug|x64.Build.0 = Debug|x64
34 | 		{2482251C-2F99-4779-B61D-B091852B4A36}.Release|Win32.ActiveCfg = Release|Win32
35 | 		{2482251C-2F99-4779-B61D-B091852B4A36}.Release|Win32.Build.0 = Release|Win32
36 | 		{2482251C-2F99-4779-B61D-B091852B4A36}.Release|x64.ActiveCfg = Release|x64
37 | 		{2482251C-2F99-4779-B61D-B091852B4A36}.Release|x64.Build.0 = Release|x64
38 | 		{2482251C-2F99-4779-B61D-B091852B4A36}.Static-Debug|Win32.ActiveCfg = Static-Debug|Win32
39 | 		{2482251C-2F99-4779-B61D-B091852B4A36}.Static-Debug|Win32.Build.0 = Static-Debug|Win32
40 | 		{2482251C-2F99-4779-B61D-B091852B4A36}.Static-Debug|x64.ActiveCfg = Static-Debug|x64
41 | 		{2482251C-2F99-4779-B61D-B091852B4A36}.Static-Debug|x64.Build.0 = Static-Debug|x64
42 | 		{2482251C-2F99-4779-B61D-B091852B4A36}.Static-Release|Win32.ActiveCfg = Static-Release|Win32
43 | 		{2482251C-2F99-4779-B61D-B091852B4A36}.Static-Release|Win32.Build.0 = Static-Release|Win32
44 | 		{2482251C-2F99-4779-B61D-B091852B4A36}.Static-Release|x64.ActiveCfg = Static-Release|x64
45 | 		{2482251C-2F99-4779-B61D-B091852B4A36}.Static-Release|x64.Build.0 = Static-Release|x64
46 | 		{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Debug|Win32.ActiveCfg = Debug|Win32
47 | 		{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Debug|Win32.Build.0 = Debug|Win32
48 | 		{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Debug|x64.ActiveCfg = Debug|x64
49 | 		{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Debug|x64.Build.0 = Debug|x64
50 | 		{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Release|Win32.ActiveCfg = Release|Win32
51 | 		{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Release|Win32.Build.0 = Release|Win32
52 | 		{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Release|x64.ActiveCfg = Release|x64
53 | 		{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Release|x64.Build.0 = Release|x64
54 | 		{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Static-Debug|Win32.ActiveCfg = Static-Debug|Win32
55 | 		{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Static-Debug|Win32.Build.0 = Static-Debug|Win32
56 | 		{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Static-Debug|x64.ActiveCfg = Static-Debug|x64
57 | 		{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Static-Debug|x64.Build.0 = Static-Debug|x64
58 | 		{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Static-Release|Win32.ActiveCfg = Static-Release|Win32
59 | 		{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Static-Release|Win32.Build.0 = Static-Release|Win32
60 | 		{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Static-Release|x64.ActiveCfg = Static-Release|x64
61 | 		{EA3DCC95-2423-4EA0-A508-7A427B4C0594}.Static-Release|x64.Build.0 = Static-Release|x64
62 | 		{456BCE80-9C5E-46D1-9597-CC3E2FE647E6}.Debug|Win32.ActiveCfg = Debug|Win32
63 | 		{456BCE80-9C5E-46D1-9597-CC3E2FE647E6}.Debug|Win32.Build.0 = Debug|Win32
64 | 		{456BCE80-9C5E-46D1-9597-CC3E2FE647E6}.Debug|x64.ActiveCfg = Debug|x64
65 | 		{456BCE80-9C5E-46D1-9597-CC3E2FE647E6}.Debug|x64.Build.0 = Debug|x64
66 | 		{456BCE80-9C5E-46D1-9597-CC3E2FE647E6}.Release|Win32.ActiveCfg = Release|Win32
67 | 		{456BCE80-9C5E-46D1-9597-CC3E2FE647E6}.Release|Win32.Build.0 = Release|Win32
68 | 		{456BCE80-9C5E-46D1-9597-CC3E2FE647E6}.Release|x64.ActiveCfg = Release|x64
69 | 		{456BCE80-9C5E-46D1-9597-CC3E2FE647E6}.Release|x64.Build.0 = Release|x64
70 | 		{456BCE80-9C5E-46D1-9597-CC3E2FE647E6}.Static-Debug|Win32.ActiveCfg = Static-Debug|Win32
71 | 		{456BCE80-9C5E-46D1-9597-CC3E2FE647E6}.Static-Debug|Win32.Build.0 = Static-Debug|Win32
72 | 		{456BCE80-9C5E-46D1-9597-CC3E2FE647E6}.Static-Debug|x64.ActiveCfg = Static-Debug|x64
73 | 		{456BCE80-9C5E-46D1-9597-CC3E2FE647E6}.Static-Debug|x64.Build.0 = Static-Debug|x64
74 | 		{456BCE80-9C5E-46D1-9597-CC3E2FE647E6}.Static-Release|Win32.ActiveCfg = Static-Release|Win32
75 | 		{456BCE80-9C5E-46D1-9597-CC3E2FE647E6}.Static-Release|Win32.Build.0 = Static-Release|Win32
76 | 		{456BCE80-9C5E-46D1-9597-CC3E2FE647E6}.Static-Release|x64.ActiveCfg = Static-Release|x64
77 | 		{456BCE80-9C5E-46D1-9597-CC3E2FE647E6}.Static-Release|x64.Build.0 = Static-Release|x64
78 | 		{64D2C338-62CF-4443-B8A3-FD1EB571BCA5}.Debug|Win32.ActiveCfg = Debug|Win32
79 | 		{64D2C338-62CF-4443-B8A3-FD1EB571BCA5}.Debug|Win32.Build.0 = Debug|Win32
80 | 		{64D2C338-62CF-4443-B8A3-FD1EB571BCA5}.Debug|x64.ActiveCfg = Debug|x64
81 | 		{64D2C338-62CF-4443-B8A3-FD1EB571BCA5}.Debug|x64.Build.0 = Debug|x64
82 | 		{64D2C338-62CF-4443-B8A3-FD1EB571BCA5}.Release|Win32.ActiveCfg = Release|Win32
83 | 		{64D2C338-62CF-4443-B8A3-FD1EB571BCA5}.Release|Win32.Build.0 = Release|Win32
84 | 		{64D2C338-62CF-4443-B8A3-FD1EB571BCA5}.Release|x64.ActiveCfg = Release|x64
85 | 		{64D2C338-62CF-4443-B8A3-FD1EB571BCA5}.Release|x64.Build.0 = Release|x64
86 | 		{64D2C338-62CF-4443-B8A3-FD1EB571BCA5}.Static-Debug|Win32.ActiveCfg = Static-Debug|Win32
87 | 		{64D2C338-62CF-4443-B8A3-FD1EB571BCA5}.Static-Debug|Win32.Build.0 = Static-Debug|Win32
88 | 		{64D2C338-62CF-4443-B8A3-FD1EB571BCA5}.Static-Debug|x64.ActiveCfg = Static-Debug|x64
89 | 		{64D2C338-62CF-4443-B8A3-FD1EB571BCA5}.Static-Debug|x64.Build.0 = Static-Debug|x64
90 | 		{64D2C338-62CF-4443-B8A3-FD1EB571BCA5}.Static-Release|Win32.ActiveCfg = Static-Release|Win32
91 | 		{64D2C338-62CF-4443-B8A3-FD1EB571BCA5}.Static-Release|Win32.Build.0 = Static-Release|Win32
92 | 		{64D2C338-62CF-4443-B8A3-FD1EB571BCA5}.Static-Release|x64.ActiveCfg = Static-Release|x64
93 | 		{64D2C338-62CF-4443-B8A3-FD1EB571BCA5}.Static-Release|x64.Build.0 = Static-Release|x64
94 | 	EndGlobalSection
95 | 	GlobalSection(SolutionProperties) = preSolution
96 | 		HideSolutionNode = FALSE
97 | 	EndGlobalSection
98 | EndGlobal
99 | 
--------------------------------------------------------------------------------
/build/fftw-windows-vs2012/libfftw-3.6/config.h:
--------------------------------------------------------------------------------
  1 | /* config.h.in.  Generated from configure.ac by autoheader.  */
  2 | 
  3 | /* Define to compile in long-double precision. */
  4 | #undef BENCHFFT_LDOUBLE
  5 | 
  6 | /* Define to compile in quad precision. */
  7 | #undef BENCHFFT_QUAD
  8 | 
  9 | /* Define to compile in single precision. */
 10 | #undef BENCHFFT_SINGLE
 11 | 
 12 | /* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
 13 |    systems. This function is required for `alloca.c' support on those systems.
 14 |    */
 15 | #undef CRAY_STACKSEG_END
 16 | 
 17 | /* Define to 1 if using `alloca.c'. */
 18 | #undef C_ALLOCA
 19 | 
 20 | /* Define to disable Fortran wrappers. */
 21 | #define DISABLE_FORTRAN 1
 22 | 
 23 | /* Define to dummy `main' function (if any) required to link to the Fortran
 24 |    libraries. */
 25 | #undef F77_DUMMY_MAIN
 26 | 
 27 | /* Define to a macro mangling the given C identifier (in lower and upper
 28 |    case), which must not contain underscores, for linking with Fortran. */
 29 | #undef F77_FUNC
 30 | 
 31 | /* As F77_FUNC, but for C identifiers containing underscores. */
 32 | #undef F77_FUNC_
 33 | 
 34 | /* Define if F77_FUNC and F77_FUNC_ are equivalent. */
 35 | #undef F77_FUNC_EQUIV
 36 | 
 37 | /* Define if F77 and FC dummy `main' functions are identical. */
 38 | #undef FC_DUMMY_MAIN_EQ_F77
 39 | 
 40 | /* C compiler name and flags */
 41 | #define FFTW_CC "cl"
 42 | 
 43 | /* Define to enable extra FFTW debugging code. */
 44 | #undef FFTW_DEBUG
 45 | 
 46 | /* Define to enable alignment debugging hacks. */
 47 | #undef FFTW_DEBUG_ALIGNMENT
 48 | 
 49 | /* Define to enable debugging malloc. */
 50 | #undef FFTW_DEBUG_MALLOC
 51 | 
 52 | /* Define to enable the use of alloca(). */
 53 | #undef FFTW_ENABLE_ALLOCA
 54 | 
 55 | /* Define to compile in long-double precision. */
 56 | #undef FFTW_LDOUBLE
 57 | 
 58 | /* Define to compile in quad precision. */
 59 | #undef FFTW_QUAD
 60 | 
 61 | /* Define to enable pseudorandom estimate planning for debugging. */
 62 | #undef FFTW_RANDOM_ESTIMATOR
 63 | 
 64 | /* Define to compile in single precision. */
 65 | #undef FFTW_SINGLE
 66 | 
 67 | /* Define to 1 if you have the `abort' function. */
 68 | #define HAVE_ABORT 1
 69 | 
 70 | /* Define to 1 if you have `alloca', as a function or macro. */
 71 | #undef HAVE_ALLOCA
 72 | 
 73 | /* Define to 1 if you have  and it should be used (not on Ultrix).
 74 |    */
 75 | #undef HAVE_ALLOCA_H
 76 | 
 77 | /* Define to enable Altivec optimizations. */
 78 | #undef HAVE_ALTIVEC
 79 | 
 80 | /* Define to 1 if you have the  header file. */
 81 | #undef HAVE_ALTIVEC_H
 82 | 
 83 | /* Define to enable AVX optimizations. */
 84 | #define HAVE_AVX 1
 85 | 
 86 | /* Define to 1 if you have the `BSDgettimeofday' function. */
 87 | #undef HAVE_BSDGETTIMEOFDAY
 88 | 
 89 | /* Define to 1 if you have the `clock_gettime' function. */
 90 | #undef HAVE_CLOCK_GETTIME
 91 | 
 92 | /* Define to 1 if you have the `cosl' function. */
 93 | #define HAVE_COSL 1
 94 | 
 95 | /* Define to 1 if you have the  header file. */
 96 | #undef HAVE_C_ASM_H
 97 | 
 98 | /* Define to 1 if you have the declaration of `cosl', and to 0 if you don't.
 99 |    */
100 | #define HAVE_DECL_COSL 1
101 | 
102 | /* Define to 1 if you have the declaration of `cosq', and to 0 if you don't. */
103 | #define HAVE_DECL_COSQ 0
104 | 
105 | /* Define to 1 if you have the declaration of `drand48', and to 0 if you don't. */
106 | #define HAVE_DECL_DRAND48 0
107 | 
108 | /* Define to 1 if you have the declaration of `memalign', and to 0 if you don't. */
109 | #define HAVE_DECL_MEMALIGN 0
110 | 
111 | /* Define to 1 if you have the declaration of `posix_memalign', and to 0 if you don't. */
112 | #define HAVE_DECL_POSIX_MEMALIGN 0
113 | 
114 | /* Define to 1 if you have the declaration of `sinl', and to 0 if you don't. */
115 | #define HAVE_DECL_SINL 1
116 | 
117 | /* Define to 1 if you have the declaration of `sinq', and to 0 if you don't.
118 |    */
119 | #define HAVE_DECL_SINQ 0
120 | 
121 | /* Define to 1 if you have the declaration of `srand48', and to 0 if you
122 |    don't. */
123 | #define HAVE_DECL_SRAND48 0
124 | 
125 | /* Define to 1 if you have the  header file. */
126 | #undef HAVE_DLFCN_H
127 | 
128 | /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */
129 | #undef HAVE_DOPRNT
130 | 
131 | /* Define to 1 if you have the `drand48' function. */
132 | #undef HAVE_DRAND48
133 | 
134 | /* Define if you have a machine with fused multiply-add */
135 | #undef HAVE_FMA
136 | 
137 | /* Define to 1 if you have the `gethrtime' function. */
138 | #undef HAVE_GETHRTIME
139 | 
140 | /* Define to 1 if you have the `gettimeofday' function. */
141 | #undef HAVE_GETTIMEOFDAY
142 | 
143 | /* Define to 1 if hrtime_t is defined in  */
144 | #undef HAVE_HRTIME_T
145 | 
146 | /* Define to 1 if you have the  header file. */
147 | #undef HAVE_INTRINSICS_H
148 | 
149 | /* Define to 1 if you have the  header file. */
150 | #undef HAVE_INTTYPES_H
151 | 
152 | /* Define if the isnan() function/macro is available. */
153 | #undef HAVE_ISNAN
154 | 
155 | /* Define to 1 if you have the  header file. */
156 | #undef HAVE_LIBINTL_H
157 | 
158 | /* Define to 1 if you have the `m' library (-lm). */
159 | #undef HAVE_LIBM
160 | 
161 | /* Define to 1 if you have the `quadmath' library (-lquadmath). */
162 | #undef HAVE_LIBQUADMATH
163 | 
164 | /* Define to 1 if you have the  header file. */
165 | #define HAVE_LIMITS_H 1
166 | 
167 | /* Define to 1 if the compiler supports `long double' */
168 | #define HAVE_LONG_DOUBLE 1
169 | 
170 | /* Define to 1 if you have the `mach_absolute_time' function. */
171 | #undef HAVE_MACH_ABSOLUTE_TIME
172 | 
173 | /* Define to 1 if you have the  header file. */
174 | #undef HAVE_MACH_MACH_TIME_H
175 | 
176 | /* Define to 1 if you have the  header file. */
177 | #define HAVE_MALLOC_H 1
178 | 
179 | /* Define to 1 if you have the `memalign' function. */
180 | #undef HAVE_MEMALIGN
181 | 
182 | /* Define to 1 if you have the  header file. */
183 | #define HAVE_MEMORY_H 1
184 | 
185 | /* Define to 1 if you have the `memset' function. */
186 | #define HAVE_MEMSET 1
187 | 
188 | /* Define to enable MIPS paired-single optimizations. */
189 | #undef HAVE_MIPS_PS
190 | 
191 | /* Define to enable use of MIPS ZBus cycle-counter. */
192 | #undef HAVE_MIPS_ZBUS_TIMER
193 | 
194 | /* Define if you have the MPI library. */
195 | #undef HAVE_MPI
196 | 
197 | /* Define if OpenMP is enabled */
198 | #define HAVE_OPENMP 1
199 | 
200 | /* Define to 1 if you have the `posix_memalign' function. */
201 | #undef HAVE_POSIX_MEMALIGN
202 | 
203 | /* Define if you have POSIX threads libraries and header files. */
204 | #undef HAVE_PTHREAD
205 | 
206 | /* Define to 1 if you have the `read_real_time' function. */
207 | #undef HAVE_READ_REAL_TIME
208 | 
209 | /* Define to 1 if you have the `sinl' function. */
210 | #define HAVE_SINL 1
211 | 
212 | /* Define to 1 if you have the `snprintf' function. */
213 | #undef HAVE_SNPRINTF
214 | 
215 | /* Define to 1 if you have the `sqrt' function. */
216 | #define HAVE_SQRT 1
217 | 
218 | /* Define to enable SSE/SSE2 optimizations. */
219 | #define HAVE_SSE2 1
220 | 
221 | /* Define to 1 if you have the  header file. */
222 | #define HAVE_STDDEF_H 1
223 | 
224 | /* Define to 1 if you have the  header file. */
225 | #define HAVE_STDINT_H 1
226 | 
227 | /* Define to 1 if you have the  header file. */
228 | #define HAVE_STDLIB_H 1
229 | 
230 | /* Define to 1 if you have the  header file. */
231 | #undef HAVE_STRINGS_H
232 | 
233 | /* Define to 1 if you have the  header file. */
234 | #define HAVE_STRING_H 1
235 | 
236 | /* Define to 1 if you have the `sysctl' function. */
237 | #undef HAVE_SYSCTL
238 | 
239 | /* Define to 1 if you have the  header file. */
240 | #define HAVE_SYS_STAT_H 1
241 | 
242 | /* Define to 1 if you have the  header file. */
243 | #undef HAVE_SYS_SYSCTL_H
244 | 
245 | /* Define to 1 if you have the  header file. */
246 | #undef HAVE_SYS_TIME_H
247 | 
248 | /* Define to 1 if you have the  header file. */
249 | #define HAVE_SYS_TYPES_H 1
250 | 
251 | /* Define to 1 if you have the `tanl' function. */
252 | #define HAVE_TANL 1
253 | 
254 | /* Define if we have a threads library. */
255 | #undef HAVE_THREADS
256 | 
257 | /* Define to 1 if you have the `time_base_to_time' function. */
258 | #undef HAVE_TIME_BASE_TO_TIME
259 | 
260 | /* Define to 1 if the system has the type `uintptr_t'. */
261 | #define HAVE_UINTPTR_T 1
262 | 
263 | /* Define to 1 if you have the  header file. */
264 | #undef HAVE_UNISTD_H
265 | 
266 | /* Define to 1 if you have the `vprintf' function. */
267 | #define HAVE_VPRINTF 1
268 | 
269 | /* Define to 1 if you have the `_mm_free' function. */
270 | #undef HAVE__MM_FREE
271 | 
272 | /* Define to 1 if you have the `_mm_malloc' function. */
273 | #undef HAVE__MM_MALLOC
274 | 
275 | /* Define if you have the UNICOS _rtc() intrinsic. */
276 | #undef HAVE__RTC
277 | 
278 | /* Define to the sub-directory in which libtool stores uninstalled libraries.
279 |    */
280 | #undef LT_OBJDIR
281 | 
282 | /* Define to 1 if your C compiler doesn't accept -c and -o together. */
283 | #undef NO_MINUS_C_MINUS_O
284 | 
285 | /* Name of package */
286 | #define PACKAGE "fftw"
287 | 
288 | /* Define to the address where bug reports for this package should be sent. */
289 | #define PACKAGE_BUGREPORT "fftw@fftw.org"
290 | 
291 | /* Define to the full name of this package. */
292 | #define PACKAGE_NAME "fftw"
293 | 
294 | /* Define to the full name and version of this package. */
295 | #define PACKAGE_STRING "fftw-3.6"
296 | 
297 | /* Define to the one symbol short name of this package. */
298 | #define PACKAGE_TARNAME "fftw"
299 | 
300 | /* Define to the home page for this package. */
301 | #define PACKAGE_URL "http://www.fftw.org"
302 | 
303 | /* Define to the version of this package. */
304 | #define PACKAGE_VERSION "3.6"
305 | 
306 | /* Define to necessary symbol if this constant uses a non-standard name on
307 |    your system. */
308 | #undef PTHREAD_CREATE_JOINABLE
309 | 
310 | /* The size of `double', as computed by sizeof. */
311 | #define SIZEOF_DOUBLE 8
312 | 
313 | /* The size of `fftw_r2r_kind', as computed by sizeof. */
314 | #undef SIZEOF_FFTW_R2R_KIND
315 | 
316 | /* The size of `float', as computed by sizeof. */
317 | #define SIZEOF_FLOAT 4
318 | 
319 | /* The size of `int', as computed by sizeof. */
320 | #define SIZEOF_INT 4
321 | 
322 | /* The size of `long', as computed by sizeof. */
323 | #define SIZEOF_LONG 4
324 | 
325 | /* The size of `long long', as computed by sizeof. */
326 | #define SIZEOF_LONG_LONG 8
327 | 
328 | /* The size of `MPI_Fint', as computed by sizeof. */
329 | #undef SIZEOF_MPI_FINT
330 | 
331 | /* The size of `ptrdiff_t', as computed by sizeof. */
332 | #define SIZEOF_PTRDIFF_T 4
333 | 
334 | /* The size of `size_t', as computed by sizeof. */
335 | #define SIZEOF_SIZE_T 4
336 | 
337 | /* The size of `unsigned int', as computed by sizeof. */
338 | #define SIZEOF_UNSIGNED_INT 4
339 | 
340 | /* The size of `unsigned long', as computed by sizeof. */
341 | #define SIZEOF_UNSIGNED_LONG 4
342 | 
343 | /* The size of `unsigned long long', as computed by sizeof. */
344 | #define SIZEOF_UNSIGNED_LONG_LONG 8
345 | 
346 | /* The size of `void *', as computed by sizeof. */
347 | #define SIZEOF_VOID_P 4
348 | 
349 | /* If using the C implementation of alloca, define if you know the
350 |    direction of stack growth for your system; otherwise it will be
351 |    automatically deduced at runtime.
352 | 	STACK_DIRECTION > 0 => grows toward higher addresses
353 | 	STACK_DIRECTION < 0 => grows toward lower addresses
354 | 	STACK_DIRECTION = 0 => direction of growth unknown */
355 | #undef STACK_DIRECTION
356 | 
357 | /* Define to 1 if you have the ANSI C header files. */
358 | #define STDC_HEADERS 1
359 | 
360 | /* Define to 1 if you can safely include both  and . */
361 | #undef TIME_WITH_SYS_TIME
362 | 
363 | /* Define if we have and are using POSIX threads. */
364 | #undef USING_POSIX_THREADS
365 | 
366 | /* Version number of package */
367 | #define VERSION "3.6"
368 | 
369 | /* Use common Windows Fortran mangling styles for the Fortran interfaces. */
370 | #undef WINDOWS_F77_MANGLING
371 | 
372 | /* Include g77-compatible wrappers in addition to any other Fortran wrappers.
373 |    */
374 | #undef WITH_G77_WRAPPERS
375 | 
376 | /* Use our own aligned malloc routine; mainly helpful for Windows systems
377 |    lacking aligned allocation system-library routines. */
378 | #define WITH_OUR_MALLOC 1
379 | 
380 | /* Use low-precision timers, making planner very slow */
381 | #undef WITH_SLOW_TIMER
382 | 
383 | /* Define to empty if `const' does not conform to ANSI C. */
384 | #undef const
385 | 
386 | /* Define to `__inline__' or `__inline' if that's what the C compiler
387 |    calls it, or to nothing if 'inline' is not supported under any name.  */
388 | #ifndef __cplusplus
389 | #define inline __inline
390 | #endif
391 | 
392 | /* Define to `unsigned int' if  does not define. */
393 | #undef size_t
394 | 
--------------------------------------------------------------------------------
/build/fftw-windows-vs2012/libfftwf-3.6/config.h:
--------------------------------------------------------------------------------
  1 | /* config.h.in.  Generated from configure.ac by autoheader.  */
  2 | 
  3 | /* Define to compile in long-double precision. */
  4 | #undef BENCHFFT_LDOUBLE
  5 | 
  6 | /* Define to compile in quad precision. */
  7 | #undef BENCHFFT_QUAD
  8 | 
  9 | /* Define to compile in single precision. */
 10 | #define BENCHFFT_SINGLE 1
 11 | 
 12 | /* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
 13 |    systems. This function is required for `alloca.c' support on those systems.
 14 |    */
 15 | #undef CRAY_STACKSEG_END
 16 | 
 17 | /* Define to 1 if using `alloca.c'. */
 18 | #undef C_ALLOCA
 19 | 
 20 | /* Define to disable Fortran wrappers. */
 21 | #define DISABLE_FORTRAN 1
 22 | 
 23 | /* Define to dummy `main' function (if any) required to link to the Fortran
 24 |    libraries. */
 25 | #undef F77_DUMMY_MAIN
 26 | 
 27 | /* Define to a macro mangling the given C identifier (in lower and upper
 28 |    case), which must not contain underscores, for linking with Fortran. */
 29 | #undef F77_FUNC
 30 | 
 31 | /* As F77_FUNC, but for C identifiers containing underscores. */
 32 | #undef F77_FUNC_
 33 | 
 34 | /* Define if F77_FUNC and F77_FUNC_ are equivalent. */
 35 | #undef F77_FUNC_EQUIV
 36 | 
 37 | /* Define if F77 and FC dummy `main' functions are identical. */
 38 | #undef FC_DUMMY_MAIN_EQ_F77
 39 | 
 40 | /* C compiler name and flags */
 41 | #define FFTW_CC "cl"
 42 | 
 43 | /* Define to enable extra FFTW debugging code. */
 44 | #undef FFTW_DEBUG
 45 | 
 46 | /* Define to enable alignment debugging hacks. */
 47 | #undef FFTW_DEBUG_ALIGNMENT
 48 | 
 49 | /* Define to enable debugging malloc. */
 50 | #undef FFTW_DEBUG_MALLOC
 51 | 
 52 | /* Define to enable the use of alloca(). */
 53 | #undef FFTW_ENABLE_ALLOCA
 54 | 
 55 | /* Define to compile in long-double precision. */
 56 | #undef FFTW_LDOUBLE
 57 | 
 58 | /* Define to compile in quad precision. */
 59 | #undef FFTW_QUAD
 60 | 
 61 | /* Define to enable pseudorandom estimate planning for debugging. */
 62 | #undef FFTW_RANDOM_ESTIMATOR
 63 | 
 64 | /* Define to compile in single precision. */
 65 | #define FFTW_SINGLE 1
 66 | 
 67 | /* Define to 1 if you have the `abort' function. */
 68 | #define HAVE_ABORT 1
 69 | 
 70 | /* Define to 1 if you have `alloca', as a function or macro. */
 71 | #undef HAVE_ALLOCA
 72 | 
 73 | /* Define to 1 if you have  and it should be used (not on Ultrix).   */
 74 | #undef HAVE_ALLOCA_H
 75 | 
 76 | /* Define to enable Altivec optimizations. */
 77 | #undef HAVE_ALTIVEC
 78 | 
 79 | /* Define to 1 if you have the  header file. */
 80 | #undef HAVE_ALTIVEC_H
 81 | 
 82 | /* Define to enable AVX optimizations. */
 83 | #define HAVE_AVX 1
 84 | 
 85 | /* Define to 1 if you have the `BSDgettimeofday' function. */
 86 | #undef HAVE_BSDGETTIMEOFDAY
 87 | 
 88 | /* Define to 1 if you have the `clock_gettime' function. */
 89 | #undef HAVE_CLOCK_GETTIME
 90 | 
 91 | /* Define to 1 if you have the `cosl' function. */
 92 | #define HAVE_COSL 1
 93 | 
 94 | /* Define to 1 if you have the  header file. */
 95 | #undef HAVE_C_ASM_H
 96 | 
 97 | /* Define to 1 if you have the declaration of `cosl', and to 0 if you don't.
 98 |    */
 99 | #define HAVE_DECL_COSL 1
100 | 
101 | /* Define to 1 if you have the declaration of `cosq', and to 0 if you don't. */
102 | #define HAVE_DECL_COSQ 0
103 | 
104 | /* Define to 1 if you have the declaration of `drand48', and to 0 if you don't. */
105 | #define HAVE_DECL_DRAND48 0
106 | 
107 | /* Define to 1 if you have the declaration of `memalign', and to 0 if you don't. */
108 | #define HAVE_DECL_MEMALIGN 0
109 | 
110 | /* Define to 1 if you have the declaration of `posix_memalign', and to 0 if you don't. */
111 | #define HAVE_DECL_POSIX_MEMALIGN 0
112 | 
113 | /* Define to 1 if you have the declaration of `sinl', and to 0 if you don't. */
114 | #define HAVE_DECL_SINL 1
115 | 
116 | /* Define to 1 if you have the declaration of `sinq', and to 0 if you don't.
117 |    */
118 | #define HAVE_DECL_SINQ 0
119 | 
120 | /* Define to 1 if you have the declaration of `srand48', and to 0 if you
121 |    don't. */
122 | #define HAVE_DECL_SRAND48 0
123 | 
124 | /* Define to 1 if you have the  header file. */
125 | #undef HAVE_DLFCN_H
126 | 
127 | /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */
128 | #undef HAVE_DOPRNT
129 | 
130 | /* Define to 1 if you have the `drand48' function. */
131 | #undef HAVE_DRAND48
132 | 
133 | /* Define if you have a machine with fused multiply-add */
134 | #undef HAVE_FMA
135 | 
136 | /* Define to 1 if you have the `gethrtime' function. */
137 | #undef HAVE_GETHRTIME
138 | 
139 | /* Define to 1 if you have the `gettimeofday' function. */
140 | #undef HAVE_GETTIMEOFDAY
141 | 
142 | /* Define to 1 if hrtime_t is defined in  */
143 | #undef HAVE_HRTIME_T
144 | 
145 | /* Define to 1 if you have the  header file. */
146 | #undef HAVE_INTRINSICS_H
147 | 
148 | /* Define to 1 if you have the  header file. */
149 | #undef HAVE_INTTYPES_H
150 | 
151 | /* Define if the isnan() function/macro is available. */
152 | #undef HAVE_ISNAN
153 | 
154 | /* Define to 1 if you have the  header file. */
155 | #undef HAVE_LIBINTL_H
156 | 
157 | /* Define to 1 if you have the `m' library (-lm). */
158 | #undef HAVE_LIBM
159 | 
160 | /* Define to 1 if you have the `quadmath' library (-lquadmath). */
161 | #undef HAVE_LIBQUADMATH
162 | 
163 | /* Define to 1 if you have the  header file. */
164 | #define HAVE_LIMITS_H 1
165 | 
166 | /* Define to 1 if the compiler supports `long double' */
167 | #define HAVE_LONG_DOUBLE 1
168 | 
169 | /* Define to 1 if you have the `mach_absolute_time' function. */
170 | #undef HAVE_MACH_ABSOLUTE_TIME
171 | 
172 | /* Define to 1 if you have the  header file. */
173 | #undef HAVE_MACH_MACH_TIME_H
174 | 
175 | /* Define to 1 if you have the  header file. */
176 | #define HAVE_MALLOC_H 1
177 | 
178 | /* Define to 1 if you have the `memalign' function. */
179 | #undef HAVE_MEMALIGN
180 | 
181 | /* Define to 1 if you have the  header file. */
182 | #define HAVE_MEMORY_H 1
183 | 
184 | /* Define to 1 if you have the `memset' function. */
185 | #define HAVE_MEMSET 1
186 | 
187 | /* Define to enable MIPS paired-single optimizations. */
188 | #undef HAVE_MIPS_PS
189 | 
190 | /* Define to enable use of MIPS ZBus cycle-counter. */
191 | #undef HAVE_MIPS_ZBUS_TIMER
192 | 
193 | /* Define if you have the MPI library. */
194 | #undef HAVE_MPI
195 | 
196 | /* Define if OpenMP is enabled */
197 | #define HAVE_OPENMP 1
198 | 
199 | /* Define to 1 if you have the `posix_memalign' function. */
200 | #undef HAVE_POSIX_MEMALIGN
201 | 
202 | /* Define if you have POSIX threads libraries and header files. */
203 | #undef HAVE_PTHREAD
204 | 
205 | /* Define to 1 if you have the `read_real_time' function. */
206 | #undef HAVE_READ_REAL_TIME
207 | 
208 | /* Define to 1 if you have the `sinl' function. */
209 | #define HAVE_SINL 1
210 | 
211 | /* Define to 1 if you have the `snprintf' function. */
212 | #undef HAVE_SNPRINTF
213 | 
214 | /* Define to 1 if you have the `sqrt' function. */
215 | #define HAVE_SQRT 1
216 | 
217 | /* Define to enable SSE/SSE2 optimizations. */
218 | #define HAVE_SSE2 1
219 | 
220 | /* Define to 1 if you have the  header file. */
221 | #define HAVE_STDDEF_H 1
222 | 
223 | /* Define to 1 if you have the  header file. */
224 | #define HAVE_STDINT_H 1
225 | 
226 | /* Define to 1 if you have the  header file. */
227 | #define HAVE_STDLIB_H 1
228 | 
229 | /* Define to 1 if you have the  header file. */
230 | #undef HAVE_STRINGS_H
231 | 
232 | /* Define to 1 if you have the  header file. */
233 | #define HAVE_STRING_H 1
234 | 
235 | /* Define to 1 if you have the `sysctl' function. */
236 | #undef HAVE_SYSCTL
237 | 
238 | /* Define to 1 if you have the  header file. */
239 | #define HAVE_SYS_STAT_H 1
240 | 
241 | /* Define to 1 if you have the  header file. */
242 | #undef HAVE_SYS_SYSCTL_H
243 | 
244 | /* Define to 1 if you have the  header file. */
245 | #undef HAVE_SYS_TIME_H
246 | 
247 | /* Define to 1 if you have the  header file. */
248 | #define HAVE_SYS_TYPES_H 1
249 | 
250 | /* Define to 1 if you have the `tanl' function. */
251 | #define HAVE_TANL 1
252 | 
253 | /* Define if we have a threads library. */
254 | #undef HAVE_THREADS
255 | 
256 | /* Define to 1 if you have the `time_base_to_time' function. */
257 | #undef HAVE_TIME_BASE_TO_TIME
258 | 
259 | /* Define to 1 if the system has the type `uintptr_t'. */
260 | #define HAVE_UINTPTR_T 1
261 | 
262 | /* Define to 1 if you have the  header file. */
263 | #undef HAVE_UNISTD_H
264 | 
265 | /* Define to 1 if you have the `vprintf' function. */
266 | #define HAVE_VPRINTF 1
267 | 
268 | /* Define to 1 if you have the `_mm_free' function. */
269 | #undef HAVE__MM_FREE
270 | 
271 | /* Define to 1 if you have the `_mm_malloc' function. */
272 | #undef HAVE__MM_MALLOC
273 | 
274 | /* Define if you have the UNICOS _rtc() intrinsic. */
275 | #undef HAVE__RTC
276 | 
277 | /* Define to the sub-directory in which libtool stores uninstalled libraries.
278 |    */
279 | #undef LT_OBJDIR
280 | 
281 | /* Define to 1 if your C compiler doesn't accept -c and -o together. */
282 | #undef NO_MINUS_C_MINUS_O
283 | 
284 | /* Name of package */
285 | #define PACKAGE "fftw"
286 | 
287 | /* Define to the address where bug reports for this package should be sent. */
288 | #define PACKAGE_BUGREPORT "fftw@fftw.org"
289 | 
290 | /* Define to the full name of this package. */
291 | #define PACKAGE_NAME "fftw"
292 | 
293 | /* Define to the full name and version of this package. */
294 | #define PACKAGE_STRING "fftw-3.6"
295 | 
296 | /* Define to the one symbol short name of this package. */
297 | #define PACKAGE_TARNAME "fftw"
298 | 
299 | /* Define to the home page for this package. */
300 | #define PACKAGE_URL "http://www.fftw.org"
301 | 
302 | /* Define to the version of this package. */
303 | #define PACKAGE_VERSION "3.6"
304 | 
305 | /* Define to necessary symbol if this constant uses a non-standard name on
306 |    your system. */
307 | #undef PTHREAD_CREATE_JOINABLE
308 | 
309 | /* The size of `double', as computed by sizeof. */
310 | #define SIZEOF_DOUBLE 8
311 | 
312 | /* The size of `fftw_r2r_kind', as computed by sizeof. */
313 | #undef SIZEOF_FFTW_R2R_KIND
314 | 
315 | /* The size of `float', as computed by sizeof. */
316 | #define SIZEOF_FLOAT 4
317 | 
318 | /* The size of `int', as computed by sizeof. */
319 | #define SIZEOF_INT 4
320 | 
321 | /* The size of `long', as computed by sizeof. */
322 | #define SIZEOF_LONG 4
323 | 
324 | /* The size of `long long', as computed by sizeof. */
325 | #define SIZEOF_LONG_LONG 8
326 | 
327 | /* The size of `MPI_Fint', as computed by sizeof. */
328 | #undef SIZEOF_MPI_FINT
329 | 
330 | /* The size of `ptrdiff_t', as computed by sizeof. */
331 | #define SIZEOF_PTRDIFF_T 4
332 | 
333 | /* The size of `size_t', as computed by sizeof. */
334 | #define SIZEOF_SIZE_T 4
335 | 
336 | /* The size of `unsigned int', as computed by sizeof. */
337 | #define SIZEOF_UNSIGNED_INT 4
338 | 
339 | /* The size of `unsigned long', as computed by sizeof. */
340 | #define SIZEOF_UNSIGNED_LONG 4
341 | 
342 | /* The size of `unsigned long long', as computed by sizeof. */
343 | #define SIZEOF_UNSIGNED_LONG_LONG 8
344 | 
345 | /* The size of `void *', as computed by sizeof. */
346 | #define SIZEOF_VOID_P 4
347 | 
348 | /* If using the C implementation of alloca, define if you know the
349 |    direction of stack growth for your system; otherwise it will be
350 |    automatically deduced at runtime.
351 | 	STACK_DIRECTION > 0 => grows toward higher addresses
352 | 	STACK_DIRECTION < 0 => grows toward lower addresses
353 | 	STACK_DIRECTION = 0 => direction of growth unknown */
354 | #undef STACK_DIRECTION
355 | 
356 | /* Define to 1 if you have the ANSI C header files. */
357 | #define STDC_HEADERS 1
358 | 
359 | /* Define to 1 if you can safely include both  and . */
360 | #undef TIME_WITH_SYS_TIME
361 | 
362 | /* Define if we have and are using POSIX threads. */
363 | #undef USING_POSIX_THREADS
364 | 
365 | /* Version number of package */
366 | #define VERSION "3.6"
367 | 
368 | /* Use common Windows Fortran mangling styles for the Fortran interfaces. */
369 | #undef WINDOWS_F77_MANGLING
370 | 
371 | /* Include g77-compatible wrappers in addition to any other Fortran wrappers.
372 |    */
373 | #undef WITH_G77_WRAPPERS
374 | 
375 | /* Use our own aligned malloc routine; mainly helpful for Windows systems
376 |    lacking aligned allocation system-library routines. */
377 | #define WITH_OUR_MALLOC 1
378 | 
379 | /* Use low-precision timers, making planner very slow */
380 | #undef WITH_SLOW_TIMER
381 | 
382 | /* Define to empty if `const' does not conform to ANSI C. */
383 | #undef const
384 | 
385 | /* Define to `__inline__' or `__inline' if that's what the C compiler
386 |    calls it, or to nothing if 'inline' is not supported under any name.  */
387 | #ifndef __cplusplus
388 | #define inline __inline
389 | #endif
390 | 
391 | /* Define to `unsigned int' if  does not define. */
392 | #undef size_t
393 | 
--------------------------------------------------------------------------------
/build/fftw_android.sh:
--------------------------------------------------------------------------------
 1 | #!/bin/sh
 2 | 
 3 | # build fftw3 lib for android
 4 | 
 5 | ANDROID_NDK=/opt/androidbuild/ndk/android-ndk-r9b
 6 | INSTALL_DIR=android-install
 7 | 
 8 | export PATH="$ANDROID_NDK/toolchains/arm-linux-androideabi-4.8/prebuilt/darwin-x86_64/bin/:$PATH"
 9 | export SYS_ROOT="$ANDROID_NDK/platforms/android-9/arch-arm/"
10 | export CC="arm-linux-androideabi-gcc --sysroot=$SYS_ROOT -mfloat-abi=softfp -mfpu=neon"
11 | export LD="arm-linux-androideabi-ld"
12 | export AR="arm-linux-androideabi-ar"
13 | export RANLIB="arm-linux-androideabi-ranlib"
14 | export STRIP="arm-linux-androideabi-strip"
15 | 
16 | set -e
17 | 
18 | mkdir -p $INSTALL_DIR
19 | rm -rf $INSTALL_DIR/*
20 | 
21 | ./configure --host=arm-eabi --enable-float --enable-neon
22 | make -j4
23 | cp .libs/libfftw3f.a $INSTALL_DIR/libfftw3f.a
24 | make distclean
25 | 
26 | 
--------------------------------------------------------------------------------
/build/fftw_ios.sh:
--------------------------------------------------------------------------------
 1 | #!/bin/sh
 2 | 
 3 | # build fftw3 lib for ios
 4 | 
 5 | XCODE_TOOLCHAINS=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain
 6 | IOS_SYSROOT=`xcrun --sdk iphoneos --show-sdk-path`
 7 | INSTALL_DIR=ios-install
 8 | 
 9 | set -e
10 | 
11 | mkdir -p $INSTALL_DIR
12 | rm -rf $INSTALL_DIR/*
13 | 
14 | 
15 | for arch in armv7 armv7s arm64; do
16 |     export CC="$XCODE_TOOLCHAINS/usr/bin/cc -arch ${arch} -std=gnu99 -mfpu=neon"
17 |     export CFLAGS="-O3 -arch ${arch} -mfpu=neon -miphoneos-version-min=8.0 -pipe -isysroot ${IOS_SYSROOT}"
18 |     export CPPFLAGS="-I$IOS_SYSROOT/usr/include"
19 |  
20 |     ./configure --host=arm-apple-darwin --enable-float --enable-neon
21 |     make -j4
22 | 
23 |     cp .libs/libfftw3f.a $INSTALL_DIR/libfftw3f_${arch}.a
24 |     make distclean
25 | done
26 | 
27 | lipo -arch armv7 $INSTALL_DIR/libfftw3f_armv7.a -arch armv7s $INSTALL_DIR/libfftw3f_armv7s.a -arch arm64 $INSTALL_DIR/libfftw3f_arm64.a -create -output $INSTALL_DIR/libfftw3f.a
28 | 
29 | 
--------------------------------------------------------------------------------
/build/fftw_linux.sh:
--------------------------------------------------------------------------------
 1 | #!/bin/sh
 2 | 
 3 | # build fftw3 lib for linux
 4 | 
 5 | INSTALL_DIR=linux-install
 6 | 
 7 | set -e
 8 | 
 9 | mkdir -p $INSTALL_DIR
10 | rm -rf $INSTALL_DIR/*
11 | 
12 | for arch in i386 x86_64; do
13 |     export CC="gcc -arch ${arch}"
14 | 
15 |     ./configure --enable-float
16 |     make -j4
17 | 
18 |     cp .libs/libfftw3f.a $INSTALL_DIR/libfftw3f_${arch}.a
19 |     make distclean
20 | done
21 | 
22 | 
--------------------------------------------------------------------------------
/build/fftw_macos.sh:
--------------------------------------------------------------------------------
 1 | #!/bin/sh
 2 | 
 3 | # build fftw3 lib for macos
 4 | 
 5 | INSTALL_DIR=macos-install
 6 | 
 7 | set -e
 8 | 
 9 | mkdir -p $INSTALL_DIR
10 | rm -rf $INSTALL_DIR/*
11 | 
12 | for arch in i386 x86_64; do
13 |     export CC="gcc -arch ${arch}"
14 | 
15 |     ./configure --enable-float
16 |     make -j4
17 | 
18 |     cp .libs/libfftw3f.a $INSTALL_DIR/libfftw3f_${arch}.a
19 |     make distclean
20 | done
21 | 
22 | lipo -arch i386 $INSTALL_DIR/libfftw3f_i386.a -arch x86_64 $INSTALL_DIR/libfftw3f_x86_64.a -create -output $INSTALL_DIR/libfftw3f.a
23 | 
24 | 
--------------------------------------------------------------------------------
/include/fftw3.h:
--------------------------------------------------------------------------------
  1 | /*
  2 |  * Copyright (c) 2003, 2007-14 Matteo Frigo
  3 |  * Copyright (c) 2003, 2007-14 Massachusetts Institute of Technology
  4 |  *
  5 |  * The following statement of license applies *only* to this header file,
  6 |  * and *not* to the other files distributed with FFTW or derived therefrom:
  7 |  * 
  8 |  * Redistribution and use in source and binary forms, with or without
  9 |  * modification, are permitted provided that the following conditions
 10 |  * are met:
 11 |  *
 12 |  * 1. Redistributions of source code must retain the above copyright
 13 |  *    notice, this list of conditions and the following disclaimer.
 14 |  *
 15 |  * 2. Redistributions in binary form must reproduce the above copyright
 16 |  *    notice, this list of conditions and the following disclaimer in the
 17 |  *    documentation and/or other materials provided with the distribution.
 18 |  *
 19 |  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
 20 |  * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 21 |  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 22 |  * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
 23 |  * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 24 |  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
 25 |  * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 26 |  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
 27 |  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
 28 |  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 29 |  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 30 |  */
 31 | 
 32 | /***************************** NOTE TO USERS *********************************
 33 |  *
 34 |  *                 THIS IS A HEADER FILE, NOT A MANUAL
 35 |  *
 36 |  *    If you want to know how to use FFTW, please read the manual,
 37 |  *    online at http://www.fftw.org/doc/ and also included with FFTW.
 38 |  *    For a quick start, see the manual's tutorial section.
 39 |  *
 40 |  *   (Reading header files to learn how to use a library is a habit
 41 |  *    stemming from code lacking a proper manual.  Arguably, it's a
 42 |  *    *bad* habit in most cases, because header files can contain
 43 |  *    interfaces that are not part of the public, stable API.)
 44 |  *
 45 |  ****************************************************************************/
 46 | 
 47 | #ifndef FFTW3_H
 48 | #define FFTW3_H
 49 | 
 50 | #include 
 51 | 
 52 | #ifdef __cplusplus
 53 | extern "C"
 54 | {
 55 | #endif /* __cplusplus */
 56 | 
 57 | /* If  is included, use the C99 complex type.  Otherwise
 58 |    define a type bit-compatible with C99 complex */
 59 | #if !defined(FFTW_NO_Complex) && defined(_Complex_I) && defined(complex) && defined(I)
 60 | #  define FFTW_DEFINE_COMPLEX(R, C) typedef R _Complex C
 61 | #else
 62 | #  define FFTW_DEFINE_COMPLEX(R, C) typedef R C[2]
 63 | #endif
 64 | 
 65 | #define FFTW_CONCAT(prefix, name) prefix ## name
 66 | #define FFTW_MANGLE_DOUBLE(name) FFTW_CONCAT(fftw_, name)
 67 | #define FFTW_MANGLE_FLOAT(name) FFTW_CONCAT(fftwf_, name)
 68 | #define FFTW_MANGLE_LONG_DOUBLE(name) FFTW_CONCAT(fftwl_, name)
 69 | #define FFTW_MANGLE_QUAD(name) FFTW_CONCAT(fftwq_, name)
 70 | 
 71 | /* IMPORTANT: for Windows compilers, you should add a line
 72 |         #define FFTW_DLL
 73 |    here and in kernel/ifftw.h if you are compiling/using FFTW as a
 74 |    DLL, in order to do the proper importing/exporting, or
 75 |    alternatively compile with -DFFTW_DLL or the equivalent
 76 |    command-line flag.  This is not necessary under MinGW/Cygwin, where
 77 |    libtool does the imports/exports automatically. */
 78 | #if defined(FFTW_DLL) && (defined(_WIN32) || defined(__WIN32__))
 79 |    /* annoying Windows syntax for shared-library declarations */
 80 | #  if defined(COMPILING_FFTW) /* defined in api.h when compiling FFTW */
 81 | #    define FFTW_EXTERN extern __declspec(dllexport) 
 82 | #  else /* user is calling FFTW; import symbol */
 83 | #    define FFTW_EXTERN extern __declspec(dllimport) 
 84 | #  endif
 85 | #else
 86 | #  define FFTW_EXTERN extern
 87 | #endif
 88 | 
 89 | enum fftw_r2r_kind_do_not_use_me {
 90 |      FFTW_R2HC=0, FFTW_HC2R=1, FFTW_DHT=2,
 91 |      FFTW_REDFT00=3, FFTW_REDFT01=4, FFTW_REDFT10=5, FFTW_REDFT11=6,
 92 |      FFTW_RODFT00=7, FFTW_RODFT01=8, FFTW_RODFT10=9, FFTW_RODFT11=10
 93 | };
 94 | 
 95 | struct fftw_iodim_do_not_use_me {
 96 |      int n;                     /* dimension size */
 97 |      int is;			/* input stride */
 98 |      int os;			/* output stride */
 99 | };
100 | 
101 | #include  /* for ptrdiff_t */
102 | struct fftw_iodim64_do_not_use_me {
103 |      ptrdiff_t n;                     /* dimension size */
104 |      ptrdiff_t is;			/* input stride */
105 |      ptrdiff_t os;			/* output stride */
106 | };
107 | 
108 | typedef void (*fftw_write_char_func_do_not_use_me)(char c, void *);
109 | typedef int (*fftw_read_char_func_do_not_use_me)(void *);
110 | 
111 | /*
112 |   huge second-order macro that defines prototypes for all API
113 |   functions.  We expand this macro for each supported precision
114 |  
115 |   X: name-mangling macro
116 |   R: real data type
117 |   C: complex data type
118 | */
119 | 
120 | #define FFTW_DEFINE_API(X, R, C)					   \
121 | 									   \
122 | FFTW_DEFINE_COMPLEX(R, C);						   \
123 | 									   \
124 | typedef struct X(plan_s) *X(plan);					   \
125 | 									   \
126 | typedef struct fftw_iodim_do_not_use_me X(iodim);			   \
127 | typedef struct fftw_iodim64_do_not_use_me X(iodim64);			   \
128 | 									   \
129 | typedef enum fftw_r2r_kind_do_not_use_me X(r2r_kind);			   \
130 | 									   \
131 | typedef fftw_write_char_func_do_not_use_me X(write_char_func);		   \
132 | typedef fftw_read_char_func_do_not_use_me X(read_char_func);		   \
133 |                                                                            \
134 | FFTW_EXTERN void X(execute)(const X(plan) p);                              \
135 | 									   \
136 | FFTW_EXTERN X(plan) X(plan_dft)(int rank, const int *n,			   \
137 | 		    C *in, C *out, int sign, unsigned flags);		   \
138 | 									   \
139 | FFTW_EXTERN X(plan) X(plan_dft_1d)(int n, C *in, C *out, int sign,	   \
140 | 		       unsigned flags);					   \
141 | FFTW_EXTERN X(plan) X(plan_dft_2d)(int n0, int n1,			   \
142 | 		       C *in, C *out, int sign, unsigned flags);	   \
143 | FFTW_EXTERN X(plan) X(plan_dft_3d)(int n0, int n1, int n2,		   \
144 | 		       C *in, C *out, int sign, unsigned flags);	   \
145 | 									   \
146 | FFTW_EXTERN X(plan) X(plan_many_dft)(int rank, const int *n,		   \
147 |                          int howmany,					   \
148 |                          C *in, const int *inembed,			   \
149 |                          int istride, int idist,			   \
150 |                          C *out, const int *onembed,			   \
151 |                          int ostride, int odist,			   \
152 |                          int sign, unsigned flags);			   \
153 | 									   \
154 | FFTW_EXTERN X(plan) X(plan_guru_dft)(int rank, const X(iodim) *dims,	   \
155 | 			 int howmany_rank,				   \
156 | 			 const X(iodim) *howmany_dims,			   \
157 | 			 C *in, C *out,					   \
158 | 			 int sign, unsigned flags);			   \
159 | FFTW_EXTERN X(plan) X(plan_guru_split_dft)(int rank, const X(iodim) *dims, \
160 | 			 int howmany_rank,				   \
161 | 			 const X(iodim) *howmany_dims,			   \
162 | 			 R *ri, R *ii, R *ro, R *io,			   \
163 | 			 unsigned flags);				   \
164 | 									   \
165 | FFTW_EXTERN X(plan) X(plan_guru64_dft)(int rank,			   \
166 |                          const X(iodim64) *dims,			   \
167 | 			 int howmany_rank,				   \
168 | 			 const X(iodim64) *howmany_dims,		   \
169 | 			 C *in, C *out,					   \
170 | 			 int sign, unsigned flags);			   \
171 | FFTW_EXTERN X(plan) X(plan_guru64_split_dft)(int rank,			   \
172 |                          const X(iodim64) *dims,			   \
173 | 			 int howmany_rank,				   \
174 | 			 const X(iodim64) *howmany_dims,		   \
175 | 			 R *ri, R *ii, R *ro, R *io,			   \
176 | 			 unsigned flags);				   \
177 | 									   \
178 | FFTW_EXTERN void X(execute_dft)(const X(plan) p, C *in, C *out);	   \
179 | FFTW_EXTERN void X(execute_split_dft)(const X(plan) p, R *ri, R *ii,	   \
180 |                                       R *ro, R *io);			   \
181 | 									   \
182 | FFTW_EXTERN X(plan) X(plan_many_dft_r2c)(int rank, const int *n,	   \
183 |                              int howmany,				   \
184 |                              R *in, const int *inembed,			   \
185 |                              int istride, int idist,			   \
186 |                              C *out, const int *onembed,		   \
187 |                              int ostride, int odist,			   \
188 |                              unsigned flags);				   \
189 | 									   \
190 | FFTW_EXTERN X(plan) X(plan_dft_r2c)(int rank, const int *n,		   \
191 |                         R *in, C *out, unsigned flags);			   \
192 | 									   \
193 | FFTW_EXTERN X(plan) X(plan_dft_r2c_1d)(int n,R *in,C *out,unsigned flags); \
194 | FFTW_EXTERN X(plan) X(plan_dft_r2c_2d)(int n0, int n1,			   \
195 | 			   R *in, C *out, unsigned flags);		   \
196 | FFTW_EXTERN X(plan) X(plan_dft_r2c_3d)(int n0, int n1,			   \
197 | 			   int n2,					   \
198 | 			   R *in, C *out, unsigned flags);		   \
199 | 									   \
200 | 									   \
201 | FFTW_EXTERN X(plan) X(plan_many_dft_c2r)(int rank, const int *n,	   \
202 | 			     int howmany,				   \
203 | 			     C *in, const int *inembed,			   \
204 | 			     int istride, int idist,			   \
205 | 			     R *out, const int *onembed,		   \
206 | 			     int ostride, int odist,			   \
207 | 			     unsigned flags);				   \
208 | 									   \
209 | FFTW_EXTERN X(plan) X(plan_dft_c2r)(int rank, const int *n,		   \
210 |                         C *in, R *out, unsigned flags);			   \
211 | 									   \
212 | FFTW_EXTERN X(plan) X(plan_dft_c2r_1d)(int n,C *in,R *out,unsigned flags); \
213 | FFTW_EXTERN X(plan) X(plan_dft_c2r_2d)(int n0, int n1,			   \
214 | 			   C *in, R *out, unsigned flags);		   \
215 | FFTW_EXTERN X(plan) X(plan_dft_c2r_3d)(int n0, int n1,			   \
216 | 			   int n2,					   \
217 | 			   C *in, R *out, unsigned flags);		   \
218 | 									   \
219 | FFTW_EXTERN X(plan) X(plan_guru_dft_r2c)(int rank, const X(iodim) *dims,   \
220 | 			     int howmany_rank,				   \
221 | 			     const X(iodim) *howmany_dims,		   \
222 | 			     R *in, C *out,				   \
223 | 			     unsigned flags);				   \
224 | FFTW_EXTERN X(plan) X(plan_guru_dft_c2r)(int rank, const X(iodim) *dims,   \
225 | 			     int howmany_rank,				   \
226 | 			     const X(iodim) *howmany_dims,		   \
227 | 			     C *in, R *out,				   \
228 | 			     unsigned flags);				   \
229 | 									   \
230 | FFTW_EXTERN X(plan) X(plan_guru_split_dft_r2c)(				   \
231 |                              int rank, const X(iodim) *dims,		   \
232 | 			     int howmany_rank,				   \
233 | 			     const X(iodim) *howmany_dims,		   \
234 | 			     R *in, R *ro, R *io,			   \
235 | 			     unsigned flags);				   \
236 | FFTW_EXTERN X(plan) X(plan_guru_split_dft_c2r)(				   \
237 |                              int rank, const X(iodim) *dims,		   \
238 | 			     int howmany_rank,				   \
239 | 			     const X(iodim) *howmany_dims,		   \
240 | 			     R *ri, R *ii, R *out,			   \
241 | 			     unsigned flags);				   \
242 | 									   \
243 | FFTW_EXTERN X(plan) X(plan_guru64_dft_r2c)(int rank,			   \
244 |                              const X(iodim64) *dims,			   \
245 | 			     int howmany_rank,				   \
246 | 			     const X(iodim64) *howmany_dims,		   \
247 | 			     R *in, C *out,				   \
248 | 			     unsigned flags);				   \
249 | FFTW_EXTERN X(plan) X(plan_guru64_dft_c2r)(int rank,			   \
250 |                              const X(iodim64) *dims,			   \
251 | 			     int howmany_rank,				   \
252 | 			     const X(iodim64) *howmany_dims,		   \
253 | 			     C *in, R *out,				   \
254 | 			     unsigned flags);				   \
255 | 									   \
256 | FFTW_EXTERN X(plan) X(plan_guru64_split_dft_r2c)(			   \
257 |                              int rank, const X(iodim64) *dims,		   \
258 | 			     int howmany_rank,				   \
259 | 			     const X(iodim64) *howmany_dims,		   \
260 | 			     R *in, R *ro, R *io,			   \
261 | 			     unsigned flags);				   \
262 | FFTW_EXTERN X(plan) X(plan_guru64_split_dft_c2r)(			   \
263 |                              int rank, const X(iodim64) *dims,		   \
264 | 			     int howmany_rank,				   \
265 | 			     const X(iodim64) *howmany_dims,		   \
266 | 			     R *ri, R *ii, R *out,			   \
267 | 			     unsigned flags);				   \
268 | 									   \
269 | FFTW_EXTERN void X(execute_dft_r2c)(const X(plan) p, R *in, C *out);	   \
270 | FFTW_EXTERN void X(execute_dft_c2r)(const X(plan) p, C *in, R *out);	   \
271 | 									   \
272 | FFTW_EXTERN void X(execute_split_dft_r2c)(const X(plan) p,		   \
273 |                                           R *in, R *ro, R *io);		   \
274 | FFTW_EXTERN void X(execute_split_dft_c2r)(const X(plan) p,		   \
275 |                                           R *ri, R *ii, R *out);	   \
276 | 									   \
277 | FFTW_EXTERN X(plan) X(plan_many_r2r)(int rank, const int *n,		   \
278 |                          int howmany,					   \
279 |                          R *in, const int *inembed,			   \
280 |                          int istride, int idist,			   \
281 |                          R *out, const int *onembed,			   \
282 |                          int ostride, int odist,			   \
283 |                          const X(r2r_kind) *kind, unsigned flags);	   \
284 | 									   \
285 | FFTW_EXTERN X(plan) X(plan_r2r)(int rank, const int *n, R *in, R *out,	   \
286 |                     const X(r2r_kind) *kind, unsigned flags);		   \
287 | 									   \
288 | FFTW_EXTERN X(plan) X(plan_r2r_1d)(int n, R *in, R *out,		   \
289 |                        X(r2r_kind) kind, unsigned flags);		   \
290 | FFTW_EXTERN X(plan) X(plan_r2r_2d)(int n0, int n1, R *in, R *out,	   \
291 |                        X(r2r_kind) kind0, X(r2r_kind) kind1,		   \
292 |                        unsigned flags);					   \
293 | FFTW_EXTERN X(plan) X(plan_r2r_3d)(int n0, int n1, int n2,		   \
294 |                        R *in, R *out, X(r2r_kind) kind0,		   \
295 |                        X(r2r_kind) kind1, X(r2r_kind) kind2,		   \
296 |                        unsigned flags);					   \
297 | 									   \
298 | FFTW_EXTERN X(plan) X(plan_guru_r2r)(int rank, const X(iodim) *dims,	   \
299 |                          int howmany_rank,				   \
300 |                          const X(iodim) *howmany_dims,			   \
301 |                          R *in, R *out,					   \
302 |                          const X(r2r_kind) *kind, unsigned flags);	   \
303 | 									   \
304 | FFTW_EXTERN X(plan) X(plan_guru64_r2r)(int rank, const X(iodim64) *dims,   \
305 |                          int howmany_rank,				   \
306 |                          const X(iodim64) *howmany_dims,		   \
307 |                          R *in, R *out,					   \
308 |                          const X(r2r_kind) *kind, unsigned flags);	   \
309 | 									   \
310 | FFTW_EXTERN void X(execute_r2r)(const X(plan) p, R *in, R *out);	   \
311 | 									   \
312 | FFTW_EXTERN void X(destroy_plan)(X(plan) p);				   \
313 | FFTW_EXTERN void X(forget_wisdom)(void);				   \
314 | FFTW_EXTERN void X(cleanup)(void);					   \
315 | 									   \
316 | FFTW_EXTERN void X(set_timelimit)(double t);				   \
317 | 									   \
318 | FFTW_EXTERN void X(plan_with_nthreads)(int nthreads);			   \
319 | FFTW_EXTERN int X(init_threads)(void);					   \
320 | FFTW_EXTERN void X(cleanup_threads)(void);				   \
321 | FFTW_EXTERN void X(make_planner_thread_safe)(void);                        \
322 | 									   \
323 | FFTW_EXTERN int X(export_wisdom_to_filename)(const char *filename);	   \
324 | FFTW_EXTERN void X(export_wisdom_to_file)(FILE *output_file);		   \
325 | FFTW_EXTERN char *X(export_wisdom_to_string)(void);			   \
326 | FFTW_EXTERN void X(export_wisdom)(X(write_char_func) write_char,   	   \
327 |                                   void *data);				   \
328 | FFTW_EXTERN int X(import_system_wisdom)(void);				   \
329 | FFTW_EXTERN int X(import_wisdom_from_filename)(const char *filename);	   \
330 | FFTW_EXTERN int X(import_wisdom_from_file)(FILE *input_file);		   \
331 | FFTW_EXTERN int X(import_wisdom_from_string)(const char *input_string);	   \
332 | FFTW_EXTERN int X(import_wisdom)(X(read_char_func) read_char, void *data); \
333 | 									   \
334 | FFTW_EXTERN void X(fprint_plan)(const X(plan) p, FILE *output_file);	   \
335 | FFTW_EXTERN void X(print_plan)(const X(plan) p);			   \
336 | FFTW_EXTERN char *X(sprint_plan)(const X(plan) p);			   \
337 | 									   \
338 | FFTW_EXTERN void *X(malloc)(size_t n);					   \
339 | FFTW_EXTERN R *X(alloc_real)(size_t n);					   \
340 | FFTW_EXTERN C *X(alloc_complex)(size_t n);				   \
341 | FFTW_EXTERN void X(free)(void *p);					   \
342 | 									   \
343 | FFTW_EXTERN void X(flops)(const X(plan) p,				   \
344 |                           double *add, double *mul, double *fmas);	   \
345 | FFTW_EXTERN double X(estimate_cost)(const X(plan) p);			   \
346 | FFTW_EXTERN double X(cost)(const X(plan) p);				   \
347 | 									   \
348 | FFTW_EXTERN int X(alignment_of)(R *p);                                     \
349 | FFTW_EXTERN const char X(version)[];                                       \
350 | FFTW_EXTERN const char X(cc)[];						   \
351 | FFTW_EXTERN const char X(codelet_optim)[];
352 | 
353 | 
354 | /* end of FFTW_DEFINE_API macro */
355 | 
356 | FFTW_DEFINE_API(FFTW_MANGLE_DOUBLE, double, fftw_complex)
357 | FFTW_DEFINE_API(FFTW_MANGLE_FLOAT, float, fftwf_complex)
358 | FFTW_DEFINE_API(FFTW_MANGLE_LONG_DOUBLE, long double, fftwl_complex)
359 | 
360 | /* __float128 (quad precision) is a gcc extension on i386, x86_64, and ia64
361 |    for gcc >= 4.6 (compiled in FFTW with --enable-quad-precision) */
362 | #if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) \
363 |  && !(defined(__ICC) || defined(__INTEL_COMPILER) || defined(__CUDACC__) || defined(__PGI)) \
364 |  && (defined(__i386__) || defined(__x86_64__) || defined(__ia64__))
365 | #  if !defined(FFTW_NO_Complex) && defined(_Complex_I) && defined(complex) && defined(I)
366 | /* note: __float128 is a typedef, which is not supported with the _Complex
367 |          keyword in gcc, so instead we use this ugly __attribute__ version.
368 |          However, we can't simply pass the __attribute__ version to
369 |          FFTW_DEFINE_API because the __attribute__ confuses gcc in pointer
370 |          types.  Hence redefining FFTW_DEFINE_COMPLEX.  Ugh. */
371 | #    undef FFTW_DEFINE_COMPLEX
372 | #    define FFTW_DEFINE_COMPLEX(R, C) typedef _Complex float __attribute__((mode(TC))) C
373 | #  endif
374 | FFTW_DEFINE_API(FFTW_MANGLE_QUAD, __float128, fftwq_complex)
375 | #endif
376 | 
377 | #define FFTW_FORWARD (-1)
378 | #define FFTW_BACKWARD (+1)
379 | 
380 | #define FFTW_NO_TIMELIMIT (-1.0)
381 | 
382 | /* documented flags */
383 | #define FFTW_MEASURE (0U)
384 | #define FFTW_DESTROY_INPUT (1U << 0)
385 | #define FFTW_UNALIGNED (1U << 1)
386 | #define FFTW_CONSERVE_MEMORY (1U << 2)
387 | #define FFTW_EXHAUSTIVE (1U << 3) /* NO_EXHAUSTIVE is default */
388 | #define FFTW_PRESERVE_INPUT (1U << 4) /* cancels FFTW_DESTROY_INPUT */
389 | #define FFTW_PATIENT (1U << 5) /* IMPATIENT is default */
390 | #define FFTW_ESTIMATE (1U << 6)
391 | #define FFTW_WISDOM_ONLY (1U << 21)
392 | 
393 | /* undocumented beyond-guru flags */
394 | #define FFTW_ESTIMATE_PATIENT (1U << 7)
395 | #define FFTW_BELIEVE_PCOST (1U << 8)
396 | #define FFTW_NO_DFT_R2HC (1U << 9)
397 | #define FFTW_NO_NONTHREADED (1U << 10)
398 | #define FFTW_NO_BUFFERING (1U << 11)
399 | #define FFTW_NO_INDIRECT_OP (1U << 12)
400 | #define FFTW_ALLOW_LARGE_GENERIC (1U << 13) /* NO_LARGE_GENERIC is default */
401 | #define FFTW_NO_RANK_SPLITS (1U << 14)
402 | #define FFTW_NO_VRANK_SPLITS (1U << 15)
403 | #define FFTW_NO_VRECURSE (1U << 16)
404 | #define FFTW_NO_SIMD (1U << 17)
405 | #define FFTW_NO_SLOW (1U << 18)
406 | #define FFTW_NO_FIXED_RADIX_LARGE_N (1U << 19)
407 | #define FFTW_ALLOW_PRUNING (1U << 20)
408 | 
409 | #ifdef __cplusplus
410 | }  /* extern "C" */
411 | #endif /* __cplusplus */
412 | 
413 | #endif /* FFTW3_H */
414 | 
--------------------------------------------------------------------------------
/library/android/libfftw3f.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spxnn/fftw-build/4d783420ac660b1d33557b4d2492cc2103762dad/library/android/libfftw3f.a
--------------------------------------------------------------------------------
/library/ios/libfftw3f.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spxnn/fftw-build/4d783420ac660b1d33557b4d2492cc2103762dad/library/ios/libfftw3f.a
--------------------------------------------------------------------------------
/library/linux/libfftw3f.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spxnn/fftw-build/4d783420ac660b1d33557b4d2492cc2103762dad/library/linux/libfftw3f.a
--------------------------------------------------------------------------------
/library/macos/libfftw3f.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spxnn/fftw-build/4d783420ac660b1d33557b4d2492cc2103762dad/library/macos/libfftw3f.a
--------------------------------------------------------------------------------
/library/win_vs2012/libfftw3f.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spxnn/fftw-build/4d783420ac660b1d33557b4d2492cc2103762dad/library/win_vs2012/libfftw3f.lib
--------------------------------------------------------------------------------
/library/win_vs2012/libfftwf-3.6.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spxnn/fftw-build/4d783420ac660b1d33557b4d2492cc2103762dad/library/win_vs2012/libfftwf-3.6.dll
--------------------------------------------------------------------------------
/library/win_vs2012/libfftwf-3.6.lib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spxnn/fftw-build/4d783420ac660b1d33557b4d2492cc2103762dad/library/win_vs2012/libfftwf-3.6.lib
--------------------------------------------------------------------------------