1 2CXX := g++ 3CC := gcc 4 5OPTFLAGS := -DNDEBUG -ffast-math -O3 -ftree-vectorize 6 7ARCHFLAGS := 8 9CXXFLAGS := -std=c++11 $(ARCHFLAGS) $(OPTFLAGS) -I. -Isrc -Irubberband -DHAVE_LIBSAMPLERATE -DUSE_BUILTIN_FFT -DNO_THREAD_CHECKS -DUSE_PTHREADS -DNO_TIMING -DHAVE_POSIX_MEMALIGN -DNDEBUG 10 11CFLAGS := $(ARCHFLAGS) $(OPTFLAGS) 12 13AR := ar 14MKDIR := mkdir -p 15 16LIBNAME := librubberband 17 18STATIC_TARGET := lib/$(LIBNAME).a 19 20default: lib $(STATIC_TARGET) 21all: lib $(STATIC_TARGET) 22static: lib $(STATIC_TARGET) 23 24PUBLIC_INCLUDES := \ 25 rubberband/rubberband-c.h \ 26 rubberband/RubberBandStretcher.h 27 28LIBRARY_INCLUDES := \ 29 src/StretcherChannelData.h \ 30 src/float_cast/float_cast.h \ 31 src/StretcherImpl.h \ 32 src/StretchCalculator.h \ 33 src/base/Profiler.h \ 34 src/base/RingBuffer.h \ 35 src/base/Scavenger.h \ 36 src/dsp/AudioCurveCalculator.h \ 37 src/audiocurves/CompoundAudioCurve.h \ 38 src/audiocurves/ConstantAudioCurve.h \ 39 src/audiocurves/HighFrequencyAudioCurve.h \ 40 src/audiocurves/PercussiveAudioCurve.h \ 41 src/audiocurves/SilentAudioCurve.h \ 42 src/audiocurves/SpectralDifferenceAudioCurve.h \ 43 src/dsp/Resampler.h \ 44 src/dsp/FFT.h \ 45 src/dsp/MovingMedian.h \ 46 src/dsp/SincWindow.h \ 47 src/dsp/Window.h \ 48 src/system/Allocators.h \ 49 src/system/Thread.h \ 50 src/system/VectorOps.h \ 51 src/system/sysutils.h 52 53LIBRARY_SOURCES := \ 54 src/rubberband-c.cpp \ 55 src/RubberBandStretcher.cpp \ 56 src/StretcherProcess.cpp \ 57 src/StretchCalculator.cpp \ 58 src/base/Profiler.cpp \ 59 src/dsp/AudioCurveCalculator.cpp \ 60 src/audiocurves/CompoundAudioCurve.cpp \ 61 src/audiocurves/SpectralDifferenceAudioCurve.cpp \ 62 src/audiocurves/HighFrequencyAudioCurve.cpp \ 63 src/audiocurves/SilentAudioCurve.cpp \ 64 src/audiocurves/ConstantAudioCurve.cpp \ 65 src/audiocurves/PercussiveAudioCurve.cpp \ 66 src/dsp/Resampler.cpp \ 67 src/dsp/FFT.cpp \ 68 src/system/Allocators.cpp \ 69 src/system/sysutils.cpp \ 70 src/system/Thread.cpp \ 71 src/StretcherChannelData.cpp \ 72 src/StretcherImpl.cpp 73 74LIBRARY_OBJECTS := $(LIBRARY_SOURCES:.cpp=.o) 75LIBRARY_OBJECTS := $(LIBRARY_OBJECTS:.c=.o) 76 77$(STATIC_TARGET): $(LIBRARY_OBJECTS) 78 $(AR) rsc $@ $^ 79 80lib: 81 $(MKDIR) $@ 82 83clean: 84 rm -f $(LIBRARY_OBJECTS) 85 86distclean: clean 87 rm -f $(STATIC_TARGET) 88 89depend: 90 makedepend -f otherbuilds/Makefile.linux -Y $(LIBRARY_SOURCES) $(PROGRAM_SOURCES) 91 92 93# DO NOT DELETE 94 95src/rubberband-c.o: rubberband/rubberband-c.h 96src/rubberband-c.o: rubberband/RubberBandStretcher.h 97src/RubberBandStretcher.o: src/StretcherImpl.h 98src/RubberBandStretcher.o: rubberband/RubberBandStretcher.h src/dsp/Window.h 99src/RubberBandStretcher.o: src/dsp/SincWindow.h src/dsp/FFT.h 100src/RubberBandStretcher.o: src/audiocurves/CompoundAudioCurve.h 101src/RubberBandStretcher.o: src/dsp/AudioCurveCalculator.h 102src/RubberBandStretcher.o: src/audiocurves/PercussiveAudioCurve.h 103src/RubberBandStretcher.o: src/audiocurves/HighFrequencyAudioCurve.h 104src/RubberBandStretcher.o: src/dsp/SampleFilter.h src/base/RingBuffer.h 105src/RubberBandStretcher.o: src/base/Scavenger.h src/system/Thread.h 106src/RubberBandStretcher.o: src/system/sysutils.h 107src/StretcherProcess.o: src/StretcherImpl.h rubberband/RubberBandStretcher.h 108src/StretcherProcess.o: src/dsp/Window.h src/dsp/SincWindow.h src/dsp/FFT.h 109src/StretcherProcess.o: src/audiocurves/CompoundAudioCurve.h 110src/StretcherProcess.o: src/dsp/AudioCurveCalculator.h 111src/StretcherProcess.o: src/audiocurves/PercussiveAudioCurve.h 112src/StretcherProcess.o: src/audiocurves/HighFrequencyAudioCurve.h 113src/StretcherProcess.o: src/dsp/SampleFilter.h src/base/RingBuffer.h 114src/StretcherProcess.o: src/base/Scavenger.h src/system/Thread.h 115src/StretcherProcess.o: src/system/sysutils.h src/audiocurves/PercussiveAudioCurve.h 116src/StretcherProcess.o: src/audiocurves/HighFrequencyAudioCurve.h 117src/StretcherProcess.o: src/audiocurves/ConstantAudioCurve.h src/StretchCalculator.h 118src/StretcherProcess.o: src/StretcherChannelData.h src/dsp/Resampler.h 119src/StretcherProcess.o: src/base/Profiler.h src/system/VectorOps.h 120src/StretcherProcess.o: src/system/sysutils.h 121src/StretchCalculator.o: src/StretchCalculator.h src/system/sysutils.h 122src/base/Profiler.o: src/base/Profiler.h src/system/sysutils.h 123src/dsp/AudioCurveCalculator.o: src/dsp/AudioCurveCalculator.h 124src/audiocurves/CompoundAudioCurve.o: src/audiocurves/CompoundAudioCurve.h 125src/audiocurves/CompoundAudioCurve.o: src/dsp/AudioCurveCalculator.h 126src/audiocurves/CompoundAudioCurve.o: src/audiocurves/PercussiveAudioCurve.h 127src/audiocurves/CompoundAudioCurve.o: src/audiocurves/HighFrequencyAudioCurve.h 128src/audiocurves/CompoundAudioCurve.o: src/dsp/SampleFilter.h src/dsp/MovingMedian.h 129src/audiocurves/SpectralDifferenceAudioCurve.o: src/audiocurves/SpectralDifferenceAudioCurve.h 130src/audiocurves/SpectralDifferenceAudioCurve.o: src/dsp/AudioCurveCalculator.h 131src/audiocurves/SpectralDifferenceAudioCurve.o: src/dsp/Window.h 132src/audiocurves/SpectralDifferenceAudioCurve.o: src/system/sysutils.h 133src/audiocurves/SpectralDifferenceAudioCurve.o: src/system/VectorOps.h 134src/audiocurves/SpectralDifferenceAudioCurve.o: src/system/sysutils.h 135src/audiocurves/HighFrequencyAudioCurve.o: src/audiocurves/HighFrequencyAudioCurve.h 136src/audiocurves/HighFrequencyAudioCurve.o: src/dsp/AudioCurveCalculator.h 137src/audiocurves/SilentAudioCurve.o: src/audiocurves/SilentAudioCurve.h 138src/audiocurves/SilentAudioCurve.o: src/dsp/AudioCurveCalculator.h 139src/audiocurves/ConstantAudioCurve.o: src/audiocurves/ConstantAudioCurve.h 140src/audiocurves/ConstantAudioCurve.o: src/dsp/AudioCurveCalculator.h 141src/audiocurves/PercussiveAudioCurve.o: src/audiocurves/PercussiveAudioCurve.h 142src/audiocurves/PercussiveAudioCurve.o: src/dsp/AudioCurveCalculator.h 143src/audiocurves/PercussiveAudioCurve.o: src/system/VectorOps.h src/system/sysutils.h 144src/dsp/Resampler.o: src/dsp/Resampler.h src/system/sysutils.h 145src/dsp/Resampler.o: src/base/Profiler.h 146src/dsp/FFT.o: src/dsp/FFT.h src/system/sysutils.h src/system/Thread.h 147src/dsp/FFT.o: src/base/Profiler.h src/system/VectorOps.h 148src/dsp/FFT.o: src/system/sysutils.h 149src/system/Allocators.o: src/system/Allocators.h src/system/VectorOps.h 150src/system/Allocators.o: src/system/sysutils.h 151src/system/sysutils.o: src/system/sysutils.h 152src/system/Thread.o: src/system/Thread.h 153src/StretcherChannelData.o: src/StretcherChannelData.h src/StretcherImpl.h 154src/StretcherChannelData.o: rubberband/RubberBandStretcher.h src/dsp/Window.h 155src/StretcherChannelData.o: src/dsp/SincWindow.h src/dsp/FFT.h 156src/StretcherChannelData.o: src/audiocurves/CompoundAudioCurve.h 157src/StretcherChannelData.o: src/dsp/AudioCurveCalculator.h 158src/StretcherChannelData.o: src/audiocurves/PercussiveAudioCurve.h 159src/StretcherChannelData.o: src/audiocurves/HighFrequencyAudioCurve.h 160src/StretcherChannelData.o: src/dsp/SampleFilter.h src/base/RingBuffer.h 161src/StretcherChannelData.o: src/base/Scavenger.h src/system/Thread.h 162src/StretcherChannelData.o: src/system/sysutils.h src/dsp/Resampler.h 163src/StretcherChannelData.o: src/system/Allocators.h src/system/VectorOps.h 164src/StretcherChannelData.o: src/system/sysutils.h 165src/StretcherImpl.o: src/StretcherImpl.h rubberband/RubberBandStretcher.h 166src/StretcherImpl.o: src/dsp/Window.h src/dsp/SincWindow.h src/dsp/FFT.h 167src/StretcherImpl.o: src/audiocurves/CompoundAudioCurve.h 168src/StretcherImpl.o: src/dsp/AudioCurveCalculator.h 169src/StretcherImpl.o: src/audiocurves/PercussiveAudioCurve.h 170src/StretcherImpl.o: src/audiocurves/HighFrequencyAudioCurve.h src/dsp/SampleFilter.h 171src/StretcherImpl.o: src/base/RingBuffer.h src/base/Scavenger.h 172src/StretcherImpl.o: src/system/Thread.h src/system/sysutils.h 173src/StretcherImpl.o: src/audiocurves/PercussiveAudioCurve.h 174src/StretcherImpl.o: src/audiocurves/HighFrequencyAudioCurve.h 175src/StretcherImpl.o: src/audiocurves/SpectralDifferenceAudioCurve.h src/dsp/Window.h 176src/StretcherImpl.o: src/system/VectorOps.h src/system/sysutils.h 177src/StretcherImpl.o: src/audiocurves/SilentAudioCurve.h src/audiocurves/ConstantAudioCurve.h 178src/StretcherImpl.o: src/dsp/Resampler.h src/StretchCalculator.h 179src/StretcherImpl.o: src/StretcherChannelData.h src/base/Profiler.h 180main/main.o: rubberband/RubberBandStretcher.h src/system/sysutils.h 181main/main.o: src/base/Profiler.h 182