prefix=/usr srcdir=. libdir=$(prefix)/lib VPATH=$(srcdir):$(srcdir)/tools ifeq "$(DATATYPE)" "" DATATYPE=double endif SUFFIX=_$(DATATYPE) TYPEFLAGS=-Dkiss_fft_scalar=$(DATATYPE) ifeq "$(DATATYPE)" "int32" TYPEFLAGS=-DFIXED_POINT=32 endif ifeq "$(DATATYPE)" "int16" TYPEFLAGS=-DFIXED_POINT=16 endif ifeq "$(DATATYPE)" "simd" TYPEFLAGS=-DUSE_SIMD=1 -msse endif CFLAGS:=$(TYPEFLAGS) -W -Wall -static -fPIC -ffast-math -fomit-frame-pointer $(CFLAGS) HEADERS= \ $(srcdir)/kiss_fft.h \ $(srcdir)/kissfft.hh \ $(srcdir)/tools/kfc.h \ $(srcdir)/tools/kiss_fftnd.h \ $(srcdir)/tools/kiss_fftndr.h \ $(srcdir)/tools/kiss_fftr.h LIBRARIES= \ libkiss_fft$(SUFFIX).a \ libkiss_fftnd$(SUFFIX).a \ libkiss_fftndr$(SUFFIX).a \ libkiss_fftr$(SUFFIX).a \ libkiss_kfc$(SUFFIX).a CC=gcc COMPILE=libtool --mode=compile $(CC) $(CFLAGS) $(CXXFLAGS) LINK=libtool --mode=link $(CC) $(CFLAGS) $(LDFLAGS) INSTALL=libtool --mode=install install -p CLEAN=libtool --mode=clean rm -f all: $(LIBRARIES) install: $(LIBRARIES) -mkdir -p $(DESTDIR)$(libdir) $(DESTDIR)$(prefix)/include/kissfft install -p -m 0644 $(HEADERS) $(DESTDIR)$(prefix)/include/kissfft $(INSTALL) $+ $(DESTDIR)$(libdir) clean: $(CLEAN) *.o *.a *.lo *.la %.o %.lo: %.c $(COMPILE) -I$(srcdir) -c $< %.a %.la: $(LINK) -o $@ $+ libkiss_fft$(SUFFIX).a: kiss_fft.lo libkiss_fftnd$(SUFFIX).a: kiss_fftnd.lo libkiss_fftndr$(SUFFIX).a: kiss_fftndr.lo libkiss_fftr$(SUFFIX).a: kiss_fftr.lo libkiss_kfc$(SUFFIX).a: kfc.lo .PHONY: install clean all