Makefile 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. WARNINGS=-W -Wall -Wstrict-prototypes -Wmissing-prototypes -Waggregate-return \
  2. -Wcast-align -Wcast-qual -Wnested-externs -Wshadow -Wbad-function-cast \
  3. -Wwrite-strings
  4. ifeq "$(DATATYPE)" ""
  5. DATATYPE=float
  6. endif
  7. ifeq "$(DATATYPE)" "int32_t"
  8. TYPEFLAGS=-DFIXED_POINT=32
  9. endif
  10. ifeq "$(DATATYPE)" "int16_t"
  11. TYPEFLAGS=-DFIXED_POINT=16
  12. endif
  13. ifeq "$(DATATYPE)" "simd"
  14. TYPEFLAGS=-DUSE_SIMD=1 -msse
  15. endif
  16. ifeq "$(TYPEFLAGS)" ""
  17. TYPEFLAGS=-Dkiss_fft_scalar=$(DATATYPE)
  18. endif
  19. ifneq ("$(KISS_FFT_USE_ALLOCA)","")
  20. CFLAGS+= -DKISS_FFT_USE_ALLOCA=1
  21. endif
  22. CFLAGS+= $(CFLAGADD)
  23. FFTUTIL=fft_$(DATATYPE)
  24. FASTFILT=fastconv_$(DATATYPE)
  25. FASTFILTREAL=fastconvr_$(DATATYPE)
  26. PSDPNG=psdpng_$(DATATYPE)
  27. DUMPHDR=dumphdr_$(DATATYPE)
  28. all: $(FFTUTIL) $(FASTFILT) $(FASTFILTREAL)
  29. # $(PSDPNG)
  30. # $(DUMPHDR)
  31. #CFLAGS=-Wall -O3 -pedantic -march=pentiumpro -ffast-math -fomit-frame-pointer $(WARNINGS)
  32. # If the above flags do not work, try the following
  33. CFLAGS=-Wall -O3 $(WARNINGS)
  34. # tip: try -openmp or -fopenmp to use multiple cores
  35. $(FASTFILTREAL): ../kiss_fft.c kiss_fastfir.c kiss_fftr.c
  36. $(CC) -o $@ $(CFLAGS) -I.. $(TYPEFLAGS) -DREAL_FASTFIR $+ -DFAST_FILT_UTIL -lm
  37. $(FASTFILT): ../kiss_fft.c kiss_fastfir.c
  38. $(CC) -o $@ $(CFLAGS) -I.. $(TYPEFLAGS) $+ -DFAST_FILT_UTIL -lm
  39. $(FFTUTIL): ../kiss_fft.c fftutil.c kiss_fftnd.c kiss_fftr.c kiss_fftndr.c
  40. $(CC) -o $@ $(CFLAGS) -I.. $(TYPEFLAGS) $+ -lm
  41. $(PSDPNG): ../kiss_fft.c psdpng.c kiss_fftr.c
  42. $(CC) -o $@ $(CFLAGS) -I.. $(TYPEFLAGS) $+ -lpng -lm
  43. $(DUMPHDR): ../kiss_fft.c dumphdr.c
  44. $(CC) -o $@ $(CFLAGS) -I.. $(TYPEFLAGS) $+ -lm
  45. clean:
  46. rm -f *~ fft fft_* fastconv fastconv_* fastconvr fastconvr_* psdpng psdpng_*