Chris@90: Chris@90: LIBRARY ?= libqm-dsp.a Chris@90: CXX ?= g++ Chris@90: CC ?= gcc Chris@90: AR ?= ar Chris@90: RANLIB ?= ranlib Chris@90: Chris@154: CFLAGS := $(CFLAGS) -I. -Iext/kissfft -Iext/kissfft/tools -Dkiss_fft_scalar=double Chris@154: CXXFLAGS := $(CXXFLAGS) -I. -Iext/kissfft -Iext/kissfft/tools -Dkiss_fft_scalar=double Chris@89: Chris@89: HEADERS := base/Pitch.h \ Chris@89: base/Window.h \ Chris@154: base/KaiserWindow.h \ Chris@154: base/SincWindow.h \ Chris@89: dsp/chromagram/Chromagram.h \ Chris@89: dsp/chromagram/ConstantQ.h \ Chris@89: dsp/keydetection/GetKeyMode.h \ Chris@89: dsp/mfcc/MFCC.h \ Chris@89: dsp/onsets/DetectionFunction.h \ Chris@89: dsp/onsets/PeakPicking.h \ Chris@89: dsp/phasevocoder/PhaseVocoder.h \ Chris@89: dsp/rateconversion/Decimator.h \ Chris@154: dsp/rateconversion/Resampler.h \ Chris@89: dsp/rhythm/BeatSpectrum.h \ Chris@89: dsp/segmentation/cluster_melt.h \ Chris@89: dsp/segmentation/ClusterMeltSegmenter.h \ Chris@89: dsp/segmentation/cluster_segmenter.h \ Chris@89: dsp/segmentation/Segmenter.h \ Chris@89: dsp/segmentation/segment.h \ Chris@89: dsp/signalconditioning/DFProcess.h \ Chris@89: dsp/signalconditioning/Filter.h \ Chris@89: dsp/signalconditioning/FiltFilt.h \ Chris@89: dsp/signalconditioning/Framer.h \ Chris@89: dsp/tempotracking/DownBeat.h \ Chris@89: dsp/tempotracking/TempoTrack.h \ Chris@89: dsp/tempotracking/TempoTrackV2.h \ Chris@89: dsp/tonal/ChangeDetectionFunction.h \ Chris@89: dsp/tonal/TCSgram.h \ Chris@89: dsp/tonal/TonalEstimator.h \ Chris@89: dsp/transforms/FFT.h \ Chris@89: dsp/wavelet/Wavelet.h \ Chris@89: hmm/hmm.h \ Chris@89: maths/Correlation.h \ Chris@89: maths/CosineDistance.h \ Chris@89: maths/KLDivergence.h \ Chris@89: maths/MathAliases.h \ Chris@89: maths/MathUtilities.h \ Chris@89: maths/Polyfit.h \ Chris@89: maths/pca/pca.h \ Chris@89: thread/AsynchronousTask.h \ Chris@89: thread/BlockAllocator.h \ Chris@154: thread/Thread.h \ Chris@154: ext/kissfft/kiss_fft.h \ Chris@154: ext/kissfft/tools/kiss_fftr.h Chris@89: Chris@89: SOURCES := base/Pitch.cpp \ Chris@154: base/KaiserWindow.cpp \ Chris@154: base/SincWindow.cpp \ Chris@89: dsp/chromagram/Chromagram.cpp \ Chris@89: dsp/chromagram/ConstantQ.cpp \ Chris@89: dsp/keydetection/GetKeyMode.cpp \ Chris@89: dsp/mfcc/MFCC.cpp \ Chris@89: dsp/onsets/DetectionFunction.cpp \ Chris@89: dsp/onsets/PeakPicking.cpp \ Chris@89: dsp/phasevocoder/PhaseVocoder.cpp \ Chris@89: dsp/rateconversion/Decimator.cpp \ Chris@154: dsp/rateconversion/Resampler.cpp \ Chris@89: dsp/rhythm/BeatSpectrum.cpp \ Chris@89: dsp/segmentation/cluster_melt.c \ Chris@89: dsp/segmentation/ClusterMeltSegmenter.cpp \ Chris@89: dsp/segmentation/cluster_segmenter.c \ Chris@89: dsp/segmentation/Segmenter.cpp \ Chris@89: dsp/signalconditioning/DFProcess.cpp \ Chris@89: dsp/signalconditioning/Filter.cpp \ Chris@89: dsp/signalconditioning/FiltFilt.cpp \ Chris@89: dsp/signalconditioning/Framer.cpp \ Chris@89: dsp/tempotracking/DownBeat.cpp \ Chris@89: dsp/tempotracking/TempoTrack.cpp \ Chris@89: dsp/tempotracking/TempoTrackV2.cpp \ Chris@89: dsp/tonal/ChangeDetectionFunction.cpp \ Chris@89: dsp/tonal/TCSgram.cpp \ Chris@89: dsp/tonal/TonalEstimator.cpp \ Chris@89: dsp/transforms/FFT.cpp \ Chris@89: dsp/wavelet/Wavelet.cpp \ Chris@89: hmm/hmm.c \ Chris@89: maths/Correlation.cpp \ Chris@89: maths/CosineDistance.cpp \ Chris@89: maths/KLDivergence.cpp \ Chris@89: maths/MathUtilities.cpp \ Chris@89: maths/pca/pca.c \ Chris@154: thread/Thread.cpp \ Chris@154: ext/kissfft/kiss_fft.c \ Chris@154: ext/kissfft/tools/kiss_fftr.c Chris@89: Chris@89: OBJECTS := $(SOURCES:.cpp=.o) Chris@89: OBJECTS := $(OBJECTS:.c=.o) Chris@89: Chris@90: $(LIBRARY): $(OBJECTS) Chris@90: $(AR) cr $@ $^ Chris@90: $(RANLIB) $@ Chris@90: Chris@90: clean: Chris@154: rm -f $(OBJECTS) Chris@90: Chris@90: distclean: clean Chris@154: rm -f $(LIBRARY)