3 CXXFLAGS = -isysroot /Developer/SDKs/MacOSX10.4u.sdk -O3 -arch i386 -arch ppc -msse -msse2 -I../include -I../vamp-plugin-sdk -Irubberband -Isrc
4 LDFLAGS = -L../lib -L../vamp-plugin-sdk/vamp-sdk
6 LIBRARY_LIBS = -lsamplerate -lfftw3 -lfftw3f
7 PROGRAM_LIBS = -lsndfile $(LIBRARY_LIBS)
8 VAMP_PLUGIN_LIBS = -lvamp-sdk $(LIBRARY_LIBS)
9 LADSPA_PLUGIN_LIBS = $(LIBRARY_LIBS)
14 PROGRAM_TARGET := bin/rubberband
15 STATIC_TARGET := lib/librubberband.a
16 DYNAMIC_TARGET := lib/librubberband.dylib
17 VAMP_TARGET := lib/vamp-rubberband.dylib
18 LADSPA_TARGET := lib/ladspa-rubberband.dylib
20 #DYNAMIC_LDFLAGS := -shared -Wl,-Bsymbolic
21 DYNAMIC_LDFLAGS := -dynamiclib
23 all: bin lib $(PROGRAM_TARGET) $(STATIC_TARGET) $(DYNAMIC_TARGET) $(VAMP_TARGET) $(LADSPA_TARGET)
26 rubberband/TimeStretcher.h \
27 rubberband/RubberBandStretcher.h
31 src/ConstantAudioCurve.h \
33 src/HighFrequencyAudioCurve.h \
34 src/PercussiveAudioCurve.h \
38 src/StretchCalculator.h \
40 src/StretcherChannelData.h \
46 src/RubberBandStretcher.cpp \
47 src/ConstantAudioCurve.cpp \
48 src/HighFrequencyAudioCurve.cpp \
49 src/PercussiveAudioCurve.cpp \
52 src/StretchCalculator.cpp \
53 src/StretcherImpl.cpp \
54 src/StretcherProcess.cpp \
55 src/StretcherChannelData.cpp \
64 src/vamp/RubberBandVampPlugin.h
67 src/vamp/RubberBandVampPlugin.cpp \
71 src/ladspa/RubberBandPitchShifter.h
74 src/ladspa/RubberBandPitchShifter.cpp \
75 src/ladspa/libmain.cpp
77 LIBRARY_OBJECTS := $(LIBRARY_SOURCES:.cpp=.o)
78 PROGRAM_OBJECTS := $(PROGRAM_SOURCES:.cpp=.o)
79 VAMP_OBJECTS := $(VAMP_SOURCES:.cpp=.o)
80 LADSPA_OBJECTS := $(LADSPA_SOURCES:.cpp=.o)
82 $(PROGRAM_TARGET): $(LIBRARY_OBJECTS) $(PROGRAM_OBJECTS)
83 $(CXX) -o $@ $^ $(PROGRAM_LIBS) $(PROGRAM_LIBS) $(LDFLAGS)
85 $(STATIC_TARGET): $(LIBRARY_OBJECTS)
88 $(DYNAMIC_TARGET): $(LIBRARY_OBJECTS)
89 $(CXX) $(DYNAMIC_LDFLAGS) $^ -o $@ $(LIBRARY_LIBS) $(LDFLAGS)
91 $(VAMP_TARGET): $(LIBRARY_OBJECTS) $(VAMP_OBJECTS)
92 $(CXX) $(DYNAMIC_LDFLAGS) -o $@ $^ $(VAMP_PLUGIN_LIBS) $(LDFLAGS)
94 $(LADSPA_TARGET): $(LIBRARY_OBJECTS) $(LADSPA_OBJECTS)
95 $(CXX) $(DYNAMIC_LDFLAGS) -o $@ $^ $(LADSPA_PLUGIN_LIBS) $(LDFLAGS)
103 rm -f $(LIBRARY_OBJECTS) $(PROGRAM_OBJECTS) $(LADSPA_OBJECTS) $(VAMP_OBJECTS)
106 rm -f $(PROGRAM_TARGET) $(STATIC_TARGET) $(DYNAMIC_TARGET) $(VAMP_TARGET) $(LADSPA_TARGET)
110 src/AudioCurve.o: src/AudioCurve.h
111 src/ConstantAudioCurve.o: src/ConstantAudioCurve.h src/AudioCurve.h
112 src/FFT.o: src/FFT.h src/Thread.h
113 src/HighFrequencyAudioCurve.o: src/HighFrequencyAudioCurve.h src/AudioCurve.h
114 src/HighFrequencyAudioCurve.o: src/Window.h
115 src/main.o: rubberband/RubberBandStretcher.h rubberband/TimeStretcher.h
116 src/PercussiveAudioCurve.o: src/PercussiveAudioCurve.h src/AudioCurve.h
117 src/Resampler.o: src/Resampler.h
118 src/RubberBandStretcher.o: src/StretcherImpl.h
119 src/RubberBandStretcher.o: rubberband/RubberBandStretcher.h
120 src/RubberBandStretcher.o: rubberband/TimeStretcher.h src/Window.h
121 src/RubberBandStretcher.o: src/Thread.h src/RingBuffer.h src/Scavenger.h
122 src/RubberBandStretcher.o: src/FFT.h src/sysutils.h
123 src/StretchCalculator.o: src/StretchCalculator.h
124 src/StretcherChannelData.o: src/StretcherChannelData.h src/StretcherImpl.h
125 src/StretcherChannelData.o: rubberband/RubberBandStretcher.h
126 src/StretcherChannelData.o: rubberband/TimeStretcher.h src/Window.h
127 src/StretcherChannelData.o: src/Thread.h src/RingBuffer.h src/Scavenger.h
128 src/StretcherChannelData.o: src/FFT.h src/sysutils.h src/Resampler.h
129 src/StretcherImpl.o: src/StretcherImpl.h rubberband/RubberBandStretcher.h
130 src/StretcherImpl.o: rubberband/TimeStretcher.h src/Window.h src/Thread.h
131 src/StretcherImpl.o: src/RingBuffer.h src/Scavenger.h src/FFT.h
132 src/StretcherImpl.o: src/sysutils.h src/PercussiveAudioCurve.h
133 src/StretcherImpl.o: src/AudioCurve.h src/HighFrequencyAudioCurve.h
134 src/StretcherImpl.o: src/ConstantAudioCurve.h src/StretchCalculator.h
135 src/StretcherImpl.o: src/StretcherChannelData.h src/Resampler.h
136 src/StretcherProcess.o: src/StretcherImpl.h rubberband/RubberBandStretcher.h
137 src/StretcherProcess.o: rubberband/TimeStretcher.h src/Window.h src/Thread.h
138 src/StretcherProcess.o: src/RingBuffer.h src/Scavenger.h src/FFT.h
139 src/StretcherProcess.o: src/sysutils.h src/PercussiveAudioCurve.h
140 src/StretcherProcess.o: src/AudioCurve.h src/HighFrequencyAudioCurve.h
141 src/StretcherProcess.o: src/ConstantAudioCurve.h src/StretchCalculator.h
142 src/StretcherProcess.o: src/StretcherChannelData.h src/Resampler.h
143 src/sysutils.o: src/sysutils.h
144 src/Thread.o: src/Thread.h