Mercurial > hg > js-dsp-test
comparison fft/native/bqfft/Makefile @ 35:c795fab4c4be
Merge
author | Chris Cannam |
---|---|
date | Tue, 10 Nov 2015 07:30:50 +0000 |
parents | cf59817a5983 |
children |
comparison
equal
deleted
inserted
replaced
34:afbb64027d79 | 35:c795fab4c4be |
---|---|
1 | |
2 # Add to FFT_DEFINES the relevant options for your desired third-party | |
3 # library support. | |
4 # | |
5 # Available options are | |
6 # | |
7 # -DHAVE_IPP Intel's Integrated Performance Primitives are available | |
8 # -DHAVE_VDSP Apple's Accelerate framework is available | |
9 # -DHAVE_FFTW3 The FFTW library is available | |
10 # -DHAVE_KISSFFT The KissFFT library is available | |
11 # -DHAVE_MEDIALIB The Medialib library (from Sun) is available | |
12 # -DHAVE_OPENMAX The OpenMAX signal processing library is available | |
13 # -DUSE_BUILTIN_FFT Compile the built-in FFT code (which is very slow) | |
14 # | |
15 # You may define more than one of these. If you define | |
16 # USE_BUILTIN_FFT, the code will be compiled in but will only be used | |
17 # if no other option is available. The default, if no flags are | |
18 # supplied, is for the code to refuse to compile. | |
19 # | |
20 # Add any relevant -I flags for include paths as well. | |
21 # | |
22 # Note that you must supply the same flags when including bqfft | |
23 # headers later as you are using now when compiling the library. (You | |
24 # may find it simplest to just add the bqfft source files to your | |
25 # application's build system and not build a bqfft library at all.) | |
26 | |
27 # WARNING! The default option here is VERY SLOW! Read above for better | |
28 # alternatives! | |
29 FFT_DEFINES := -DHAVE_VDSP | |
30 | |
31 | |
32 # Add to ALLOCATOR_DEFINES options relating to aligned malloc. | |
33 # | |
34 # Available options are | |
35 # | |
36 # -DHAVE_POSIX_MEMALIGN The posix_memalign call is available in sys/mman.h | |
37 # -DLACK_POSIX_MEMALIGN The posix_memalign call is not available | |
38 # | |
39 # -DMALLOC_IS_ALIGNED The malloc call already returns aligned memory | |
40 # -DMALLOC_IS_NOT_ALIGNED The malloc call does not return aligned memory | |
41 # | |
42 # -DUSE_OWN_ALIGNED_MALLOC No aligned malloc is available, roll your own | |
43 # | |
44 # -DLACK_BAD_ALLOC The C++ library lacks the std::bad_alloc exception | |
45 # | |
46 # Here "aligned" is assumed to mean "aligned enough for whatever | |
47 # vector stuff the space will be used for" which most likely means | |
48 # 16-byte alignment. | |
49 # | |
50 # The default is to use _aligned_malloc when building with Visual C++, | |
51 # system malloc when building on OS/X, and posix_memalign otherwise. | |
52 # | |
53 # Note that you must supply the same flags when including bqfft | |
54 # headers later as you are using now when compiling the library. (You | |
55 # may find it simplest to just add the bqfft source files to your | |
56 # application's build system and not build a bqfft library at all.) | |
57 | |
58 ALLOCATOR_DEFINES := -DMALLOC_IS_ALIGNED | |
59 | |
60 SRC_DIR := src | |
61 HEADER_DIR := bqfft | |
62 | |
63 SOURCES := $(wildcard $(SRC_DIR)/*.cpp) | |
64 HEADERS := $(wildcard $(HEADER_DIR)/*.h) $(wildcard $(SRC_DIR)/*.h) | |
65 | |
66 OBJECTS := $(SOURCES:.cpp=.o) | |
67 OBJECTS := $(OBJECTS:.c=.o) | |
68 | |
69 CXXFLAGS := $(FFT_DEFINES) $(ALLOCATOR_DEFINES) -O3 -ffast-math -I. -I../bqvec -fpic | |
70 | |
71 LIBRARY := libbqfft.a | |
72 | |
73 all: $(LIBRARY) | |
74 | |
75 $(LIBRARY): $(OBJECTS) | |
76 $(AR) rc $@ $^ | |
77 | |
78 clean: | |
79 rm -f $(OBJECTS) | |
80 | |
81 distclean: clean | |
82 rm -f $(LIBRARY) | |
83 | |
84 depend: | |
85 makedepend -Y -fMakefile $(SOURCES) $(HEADERS) | |
86 | |
87 | |
88 # DO NOT DELETE | |
89 | |
90 src/FFT.o: bqfft/FFT.h |