File indexing completed on 2025-02-02 04:43:00

0001 WARNINGS=-W -Wall -Wstrict-prototypes -Wmissing-prototypes -Waggregate-return \
0002     -Wcast-align -Wcast-qual -Wnested-externs -Wshadow -Wbad-function-cast \
0003     -Wwrite-strings
0004 
0005 ifeq "$(DATATYPE)" ""
0006  DATATYPE=float
0007 endif
0008 
0009 ifeq  "$(DATATYPE)" "int32_t"
0010  TYPEFLAGS=-DFIXED_POINT=32
0011 endif
0012 
0013 ifeq  "$(DATATYPE)" "int16_t"
0014  TYPEFLAGS=-DFIXED_POINT=16
0015 endif
0016 
0017 ifeq  "$(DATATYPE)" "simd"
0018  TYPEFLAGS=-DUSE_SIMD=1 -msse
0019 endif
0020 
0021 ifeq "$(TYPEFLAGS)"  ""
0022  TYPEFLAGS=-Dkiss_fft_scalar=$(DATATYPE)
0023 endif
0024 
0025 ifneq ("$(KISS_FFT_USE_ALLOCA)","")
0026         CFLAGS+= -DKISS_FFT_USE_ALLOCA=1
0027 endif 
0028 CFLAGS+= $(CFLAGADD)
0029 
0030 
0031 FFTUTIL=fft_$(DATATYPE)
0032 FASTFILT=fastconv_$(DATATYPE)
0033 FASTFILTREAL=fastconvr_$(DATATYPE)
0034 PSDPNG=psdpng_$(DATATYPE)
0035 DUMPHDR=dumphdr_$(DATATYPE)
0036 
0037 all: $(FFTUTIL) $(FASTFILT) $(FASTFILTREAL) 
0038 #       $(PSDPNG) 
0039 #       $(DUMPHDR)
0040 
0041 #CFLAGS=-Wall -O3 -pedantic -march=pentiumpro -ffast-math -fomit-frame-pointer $(WARNINGS)
0042 # If the above flags do not work, try the following
0043 CFLAGS=-Wall -O3 $(WARNINGS) 
0044 # tip: try -openmp or -fopenmp to use multiple cores
0045 
0046 $(FASTFILTREAL): ../kiss_fft.c kiss_fastfir.c kiss_fftr.c
0047         $(CC) -o $@ $(CFLAGS) -I.. $(TYPEFLAGS) -DREAL_FASTFIR -lm $+ -DFAST_FILT_UTIL
0048 
0049 $(FASTFILT): ../kiss_fft.c kiss_fastfir.c
0050         $(CC) -o $@ $(CFLAGS) -I.. $(TYPEFLAGS) -lm $+ -DFAST_FILT_UTIL
0051 
0052 $(FFTUTIL): ../kiss_fft.c fftutil.c kiss_fftnd.c kiss_fftr.c kiss_fftndr.c
0053         $(CC) -o $@ $(CFLAGS) -I.. $(TYPEFLAGS) -lm $+
0054 
0055 $(PSDPNG): ../kiss_fft.c psdpng.c kiss_fftr.c
0056         $(CC) -o $@ $(CFLAGS) -I.. $(TYPEFLAGS) -lm -lpng $+
0057 
0058 $(DUMPHDR): ../kiss_fft.c dumphdr.c
0059         $(CC) -o $@ $(CFLAGS) -I.. $(TYPEFLAGS) -lm $+
0060 
0061 clean:
0062         rm -f *~ fft fft_* fastconv fastconv_* fastconvr fastconvr_* psdpng psdpng_*