-
Notifications
You must be signed in to change notification settings - Fork 1
/
Makefile
134 lines (100 loc) · 4.76 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
# Compiler
CXX =g++
PLATFORM =linux-gcc
# Directories
SRCDIR = src
BINDIR = bin
INCDIR = include
EXTDIR = extern
# Compile flags
CFLAGS += -O2 -Wall -isystem $(EXTDIR)/gtest-1.7.0/include -std=c++11
#Libraries
LIBS += -L/usr/local/lib/ -L/usr/lib -lglut -lGL -lGLU \
$(EXTDIR)/jsoncpp-src-0.5.0/libs/linux-gcc-4.9.2/libjson_linux-gcc-4.9.2_libmt.so \
$(EXTDIR)/aquila/libAquila.a \
$(EXTDIR)/aquila/lib/libOoura_fft.a \
-lasound \
-lpthread
#Includes
INCS += -Iinclude -I$(EXTDIR)/jsoncpp-src-0.5.0/include/ -I$(EXTDIR)/aquila-src/aquila -I$(EXTDIR)/rtaudio/
#Suffixes
.SUFFIXES: .o .h .c .hpp .cpp
# Object files
OBJS = $(BINDIR)/optparser.o $(BINDIR)/effectsmodel.o $(BINDIR)/eventinfo.o $(BINDIR)/profile.o $(BINDIR)/hwstate.o $(BINDIR)/effect.o $(BINDIR)/effectupdatemessage.o $(BINDIR)/sockClient.o $(BINDIR)/sockServ.o $(BINDIR)/gpio.o
all: ui dsp key hwc dtf test
ui: $(BINDIR)/effects_model_ui
dsp: $(BINDIR)/dsp
key: $(BINDIR)/key_test
hwc: $(BINDIR)/hw_control_test
dtf: $(BINDIR)/dsp_testframe
test: $(BINDIR)/unit_test
$(BINDIR)/effects_model_ui: $(BINDIR)/effects_model_ui.o $(OBJS)
$(CXX) $(CFLAGS) -D__LINUX_ALSA__ -o $(BINDIR)/effects_model_ui $(BINDIR)/effects_model_ui.o $(EXTDIR)/rtaudio/RtAudio.cpp $(OBJS) $(LIBS) ${INCS}
$(BINDIR)/dsp: $(BINDIR)/dsp.o $(OBJS)
$(CXX) $(CFLAGS) -D__LINUX_ALSA__ -o $(BINDIR)/dsp $(BINDIR)/dsp.o $(EXTDIR)/rtaudio/RtAudio.cpp $(OBJS) $(LIBS) ${INCS}
$(BINDIR)/key_test: $(BINDIR)/key_test.o $(OBJS)
$(CXX) $(CFLAGS) -o $(BINDIR)/key_test $(BINDIR)/key_test.o $(OBJS) $(LIBS) ${INCS}
$(BINDIR)/hw_control_test: $(BINDIR)/HardwareControlTest.o $(OBJS)
$(CXX) $(CFLAGS) -o $(BINDIR)/hw_control_test $(BINDIR)/HardwareControlTest.o $(OBJS) $(LIBS) ${INCS}
$(BINDIR)/dsp_testframe: $(BINDIR)/dsp_testframe.o $(OBJS)
$(CXX) $(CFLAGS) -o $(BINDIR)/dsp_testframe $(BINDIR)/dsp_testframe.o $(OBJS) $(LIBS) ${INCS}
$(BINDIR)/unit_test: $(OBJS) $(BINDIR)/unittesting.o
$(CXX) $(CFLAGS) -o $(BINDIR)/unit_test $(BINDIR)/unittesting.o $(OBJS) $(LIBS) ${INCS}
./$(BINDIR)/unit_test $(SRCDIR)/../config/unitTest/
$(BINDIR)/effects_model_ui.o: $(SRCDIR)/effects_model_ui.cpp
@echo $<
$(CXX) $(CFLAGS) -D__LINUX_ALSA__ -c -o $(BINDIR)/effects_model_ui.o $(SRCDIR)/effects_model_ui.cpp ${INCS}
$(BINDIR)/dsp.o: $(SRCDIR)/dsp.cpp
@echo $<
$(CXX) $(CFLAGS) -D__LINUX_ALSA__ -c -o $(BINDIR)/dsp.o $(SRCDIR)/dsp.cpp ${INCS}
$(BINDIR)/key_test.o: $(SRCDIR)/key_test.cpp
@echo $<
$(CXX) $(CFLAGS) -c -o $(BINDIR)/key_test.o $(SRCDIR)/key_test.cpp ${INCS}
$(BINDIR)/HardwareControlTest.o: $(SRCDIR)/HardwareControlTest.cpp
@echo $<
$(CXX) $(CFLAGS) -c -o $(BINDIR)/HardwareControlTest.o $(SRCDIR)/HardwareControlTest.cpp ${INCS}
$(BINDIR)/dsp_testframe.o: $(SRCDIR)/dsp_testframe.cpp
@echo $<
$(CXX) $(CFLAGS) -c -o $(BINDIR)/dsp_testframe.o $(SRCDIR)/dsp_testframe.cpp ${INCS}
$(BINDIR)/optparser.o: $(SRCDIR)/optparser.cpp $(INCDIR)/optparser.h
@echo $<
$(CXX) $(CFLAGS) -c -o $(BINDIR)/optparser.o $(SRCDIR)/optparser.cpp ${INCS}
$(BINDIR)/effectsmodel.o: $(SRCDIR)/effectsmodel.cpp $(INCDIR)/effectsmodel.h
@echo $<
$(CXX) $(CFLAGS) -c -o $(BINDIR)/effectsmodel.o $(SRCDIR)/effectsmodel.cpp ${INCS}
$(BINDIR)/eventinfo.o: $(SRCDIR)/eventinfo.cpp $(INCDIR)/eventinfo.h
@echo $<
$(CXX) $(CFLAGS) -c -o $(BINDIR)/eventinfo.o $(SRCDIR)/eventinfo.cpp ${INCS}
$(BINDIR)/profile.o: $(SRCDIR)/profile.cpp $(INCDIR)/profile.h
@echo $<
$(CXX) $(CFLAGS) -c -o $(BINDIR)/profile.o $(SRCDIR)/profile.cpp ${INCS}
$(BINDIR)/hwstate.o: $(SRCDIR)/hwstate.cpp $(INCDIR)/hwstate.h
@echo $<
$(CXX) $(CFLAGS) -c -o $(BINDIR)/hwstate.o $(SRCDIR)/hwstate.cpp ${INCS}
$(BINDIR)/effect.o: $(SRCDIR)/effect.cpp $(INCDIR)/effect.h
@echo $<
$(CXX) $(CFLAGS) -c -o $(BINDIR)/effect.o $(SRCDIR)/effect.cpp ${INCS}
$(BINDIR)/sockClient.o: $(SRCDIR)/sockClient.cpp $(INCDIR)/sockClient.h
@echo $<
$(CXX) $(CFLAGS) -c -o $(BINDIR)/sockClient.o $(SRCDIR)/sockClient.cpp ${INCS}
$(BINDIR)/sockServ.o: $(SRCDIR)/sockServ.cpp $(INCDIR)/sockServ.h
@echo $<
$(CXX) $(CFLAGS) -c -o $(BINDIR)/sockServ.o $(SRCDIR)/sockServ.cpp ${INCS}
$(BINDIR)/gpio.o: $(SRCDIR)/gpio.cpp $(INCDIR)/gpio.h
@echo $<
$(CXX) $(CFLAGS) -c -o $(BINDIR)/gpio.o $(SRCDIR)/gpio.cpp ${INCS}
$(BINDIR)/effectupdatemessage.o: $(SRCDIR)/effectupdatemessage.cpp $(INCDIR)/effectupdatemessage.h
@echo $<
$(CXX) $(CFLAGS) -c -o $(BINDIR)/effectupdatemessage.o $(SRCDIR)/effectupdatemessage.cpp ${INCS}
$(BINDIR)/unittesting.o: $(SRCDIR)/unittesting.cpp $(INCDIR)/effect.h $(INCDIR)/effectupdatemessage.h
@echo $<
$(CXX) $(CFLAGS) -c -o $(BINDIR)/unittesting.o $(SRCDIR)/unittesting.cpp ${INCS}
clean:
rm -rf ${BINDIR}/*
deps:
# gtest
$(MAKE) -C $(EXTDIR)/gtest-1.7.0/make gtest.a
# jsoncpp
scons -C $(EXTDIR)/jsoncpp-src-0.5.0 platform=$(PLATFORM) check
#aquila
$(MAKE) -C $(EXTDIR)/aquila-src all install