annotate Makefile.inc @ 124:fcf7e33aa56b

Build a library too
author Chris Cannam <c.cannam@qmul.ac.uk>
date Thu, 15 May 2014 14:47:19 +0100
parents edbec47f4a3d
children b3f72e67e543
rev   line source
c@56 1
c@121 2 LIB_DIR := src
c@121 3 INC_DIR := cq
c@121 4 TEST_DIR := test
c@56 5 VAMP_DIR := vamp
c@122 6 KFFT_DIR := src/ext/kissfft
c@56 7
c@56 8 VAMPSDK_DIR ?= ../vamp-plugin-sdk
c@56 9
c@56 10 PLUGIN_EXT ?= .so
c@56 11
c@56 12 CXX ?= g++
c@56 13 CC ?= gcc
c@56 14
c@122 15 GENERAL_FLAGS := -I. -I$(VAMPSDK_DIR) -I$(INC_DIR) -I$(LIB_DIR) -I$(KFFT_DIR) -I$(KFFT_DIR)/tools -Dkiss_fft_scalar=double
c@122 16 CFLAGS := $(GENERAL_FLAGS) $(CFLAGS)
c@122 17 CXXFLAGS := $(GENERAL_FLAGS) $(CXXFLAGS)
c@56 18
c@56 19 LDFLAGS := $(LDFLAGS)
c@56 20 PLUGIN_LDFLAGS := $(LDFLAGS) $(PLUGIN_LDFLAGS)
c@56 21 TEST_LDFLAGS := $(LDFLAGS) -lboost_unit_test_framework
c@94 22 PF_LDFLAGS := $(LDFLAGS) -lsndfile
c@56 23
c@124 24 LIB := libcq.a
c@56 25 PLUGIN := cqvamp$(PLUGIN_EXT)
c@121 26 TEST := $(TEST_DIR)/test
c@121 27 PF := $(TEST_DIR)/processfile
c@56 28
c@124 29 LIB_HEADERS := \
c@124 30 $(INC_DIR)/CQBase.h \
c@124 31 $(LIB_DIR)/CQKernel.h \
c@124 32 $(INC_DIR)/ConstantQ.h \
c@124 33 $(INC_DIR)/CQSpectrogram.h \
c@124 34 $(INC_DIR)/CQInverse.h \
c@124 35 $(LIB_DIR)/dsp/FFT.h \
c@124 36 $(LIB_DIR)/dsp/KaiserWindow.h \
c@124 37 $(LIB_DIR)/dsp/MathUtilities.h \
c@124 38 $(LIB_DIR)/dsp/nan-inf.h \
c@124 39 $(LIB_DIR)/dsp/Resampler.h \
c@124 40 $(LIB_DIR)/dsp/SincWindow.h \
c@124 41 $(LIB_DIR)/dsp/Window.h \
c@124 42 $(KFFT_DIR)/kiss_fft.h \
c@124 43 $(KFFT_DIR)/tools/kiss_fftr.h
c@56 44
c@124 45 LIB_SOURCES := \
c@124 46 $(LIB_DIR)/CQKernel.cpp \
c@124 47 $(LIB_DIR)/ConstantQ.cpp \
c@124 48 $(LIB_DIR)/CQSpectrogram.cpp \
c@124 49 $(LIB_DIR)/CQInverse.cpp \
c@124 50 $(LIB_DIR)/dsp/FFT.cpp \
c@124 51 $(LIB_DIR)/dsp/KaiserWindow.cpp \
c@124 52 $(LIB_DIR)/dsp/MathUtilities.cpp \
c@124 53 $(LIB_DIR)/dsp/Resampler.cpp \
c@124 54 $(LIB_DIR)/dsp/SincWindow.cpp \
c@124 55 $(KFFT_DIR)/kiss_fft.c \
c@124 56 $(KFFT_DIR)/tools/kiss_fftr.c
c@124 57
c@124 58 VAMP_HEADERS := \
c@124 59 $(VAMP_DIR)/CQVamp.h \
c@124 60 $(VAMP_DIR)/CQChromaVamp.h \
c@124 61 $(VAMP_DIR)/Pitch.h
c@124 62
c@124 63 VAMP_SOURCES := \
c@124 64 $(VAMP_DIR)/CQVamp.cpp \
c@124 65 $(VAMP_DIR)/CQChromaVamp.cpp \
c@124 66 $(VAMP_DIR)/libmain.cpp \
c@124 67 $(VAMP_DIR)/Pitch.cpp
c@56 68
c@56 69 HEADERS := $(LIB_HEADERS) $(VAMP_HEADERS)
c@56 70 SOURCES := $(LIB_SOURCES) $(VAMP_SOURCES)
c@124 71 LIB_OBJECTS := $(LIB_SOURCES:.cpp=.o)
c@124 72 LIB_OBJECTS := $(LIB_OBJECTS:.c=.o)
c@56 73 OBJECTS := $(SOURCES:.cpp=.o)
c@122 74 OBJECTS := $(OBJECTS:.c=.o)
c@56 75
c@121 76 TEST_SOURCES := $(TEST_DIR)/test.cpp
c@94 77 TEST_OBJECTS := $(TEST_SOURCES:.cpp=.o) $(OBJECTS)
c@94 78
c@121 79 PF_SOURCES := $(TEST_DIR)/processfile.cpp
c@94 80 PF_OBJECTS := $(PF_SOURCES:.cpp=.o) $(OBJECTS)
c@56 81
c@121 82 LIBS := $(VAMPSDK_DIR)/libvamp-sdk.a -lpthread
c@56 83
c@124 84 all: $(LIB) $(PLUGIN) $(TEST) $(PF)
c@56 85
c@56 86 $(PLUGIN): $(OBJECTS)
c@56 87 $(CXX) -o $@ $^ $(LIBS) $(PLUGIN_LDFLAGS)
c@56 88
c@56 89 $(TEST): $(TEST_OBJECTS)
c@56 90 $(CXX) -o $@ $^ $(LIBS) $(TEST_LDFLAGS)
c@56 91
c@94 92 $(PF): $(PF_OBJECTS)
c@94 93 $(CXX) -o $@ $^ $(LIBS) $(PF_LDFLAGS)
c@94 94
c@124 95 $(LIB): $(LIB_OBJECTS)
c@124 96 ar cr $@ $^
c@124 97 ranlib $@
c@124 98
c@56 99 clean:
c@94 100 rm -f $(OBJECTS) $(TEST_OBJECTS) $(PF_OBJECTS)
c@56 101
c@56 102 distclean: clean
c@56 103 rm -f $(PLUGIN)
c@56 104
c@56 105 depend:
c@94 106 makedepend -Y -fMakefile.inc $(SOURCES) $(TEST_SOURCES) $(PF_SOURCES) $(HEADERS)
c@56 107
c@58 108 # DO NOT DELETE
c@58 109
c@121 110 src/CQKernel.o: src/CQKernel.h src/dsp/MathUtilities.h src/dsp/nan-inf.h
c@121 111 src/CQKernel.o: src/dsp/FFT.h src/dsp/Window.h
c@121 112 src/ConstantQ.o: src/CQKernel.h src/dsp/Resampler.h src/dsp/MathUtilities.h
c@121 113 src/ConstantQ.o: src/dsp/nan-inf.h src/dsp/FFT.h
c@121 114 src/CQInverse.o: src/dsp/Resampler.h src/dsp/MathUtilities.h
c@121 115 src/CQInverse.o: src/dsp/nan-inf.h src/dsp/FFT.h
c@121 116 vamp/CQVamp.o: vamp/CQVamp.h
c@121 117 vamp/CQChromaVamp.o: vamp/CQChromaVamp.h
c@121 118 vamp/libmain.o: vamp/CQVamp.h vamp/CQChromaVamp.h
c@121 119 cq/ConstantQ.o: cq/CQBase.h src/CQKernel.h
c@121 120 cq/CQSpectrogram.o: cq/ConstantQ.h cq/CQBase.h src/CQKernel.h
c@121 121 cq/CQInverse.o: cq/CQBase.h src/CQKernel.h