blob: 788258f8ecd08cf5c7eac0ac558066ba88fb806b [file] [log] [blame]
Tim Yaoe8c0d4a2019-11-27 14:47:35 -08001PROTO_SRCS=src/audio_service.grpc.pb.cc src/audio_service.pb.cc
2PROTO_OBJS+=$(PROTO_SRCS:.cc=.o)
3
4SERVER_OBJS=src/audio_server.o src/audio_if.o
5CLIENT_OBJS=src/audio_client.o src/audio_if_client.o
6
7SERVER_OBJS+=$(COMMON_OBJS) $(PROTO_OBJS)
8CLIENT_OBJS+=$(COMMON_OBJS) $(PROTO_OBJS)
9
10TEST_PCM_OBJS=src/test.o
11TEST_DOLBY_OBJS=src/test_ac3.o
Tim Yao5351d702020-01-20 16:56:42 -080012TEST_HALPLAY_OBJS=src/halplay.o
Tim Yao14cb94e2020-05-12 10:28:05 -070013TEST_MS12_OBJS=src/dap_setting.o
14TEST_SPEAKER_DELAY_OBJS=src/speaker_delay.o
15TEST_DIGITAL_MODE_OBJS=src/digital_mode.o
16TEST_ARC_TEST_OBJS=src/test_arc.o
17TEST_START_ARC_OBJS=src/start_arc.o
Tim Yaoef039242020-07-21 21:59:22 -070018TEST_HAL_PARAM_OBJS=src/hal_param.o
Tim Yaoab2a3a62020-10-29 15:33:55 -070019TEST_HAL_DUMP_OBJS=src/hal_dump.o
Tim Yaob312db52020-11-03 13:08:32 -080020TEST_HAL_PATCH_OBJS=src/hal_patch.o
Tim Yaoe10bde12020-08-12 11:29:21 -070021TEST_MASTER_VOL_OBJS=src/master_vol.o
cheng tong7d907882020-09-04 18:53:04 +080022EFFECT_TOOL_OBJS=src/effect_tool.o
Tim Yaoe8c0d4a2019-11-27 14:47:35 -080023
24PROTOC=$(HOST_DIR)/bin/protoc
25PROTOC_INC=$(HOST_DIR)/include
26GRPC_CPP_PLUGIN_PATH=$(HOST_DIR)/bin/grpc_cpp_plugin
27
28CFLAGS+=-fPIC -O2 -I$(PROTOC_INC) -I./include -I. -I./src
29CXXFLAGS+=-std=c++14
Tim Yaoaaa3bc52020-12-30 17:40:14 -080030SC_LDFLAGS+=-Wl,--no-as-needed -lgrpc++_unsecure -lprotobuf -lboost_system -lamaudioutils -llog -ldl -lrt -lpthread -lstdc++ -pthread
Terrence Pu6008d882020-06-21 12:30:54 -070031LDFLAGS+= -Wl,--no-as-needed -llog -ldl -lrt -lpthread -lstdc++ -pthread
Tim Yaoe8c0d4a2019-11-27 14:47:35 -080032
33%.grpc.pb.cc: %.proto
34 $(PROTOC) -I=. -I=$(PROTOC_INC) --grpc_out=. --plugin=protoc-gen-grpc=$(GRPC_CPP_PLUGIN_PATH) $<
35
Tim Yao704dd982020-12-09 17:06:45 -080036%.pb.h: %.proto
37 $(PROTOC) -I=. -I=$(PROTOC_INC) --cpp_out=. --plugin=protoc-gen-grpc=$(GRPC_CPP_PLUGIN_PATH) $<
38
Tim Yaoe8c0d4a2019-11-27 14:47:35 -080039%.pb.cc: %.proto
40 $(PROTOC) -I=. -I=$(PROTOC_INC) --cpp_out=. --plugin=protoc-gen-grpc=$(GRPC_CPP_PLUGIN_PATH) $<
41
42%.o: %.cpp
43 $(CC) -c $(CFLAGS) $(CXXFLAGS) -o $@ $<
44
45%.o: %.cc
46 $(CC) -c $(CFLAGS) $(CXXFLAGS) -o $@ $<
47
48%.o: %.c
49 $(CC) -c $(CFLAGS) -o $@ $<
50
Blance Tangdb9f6752020-12-27 02:54:04 +000051src/audio_service.grpc.pb.cc: src/audio_service.pb.h
52src/audio_server.cpp: src/audio_service.pb.h src/audio_service.grpc.pb.cc
53src/audio_client.cpp: src/audio_service.pb.h src/audio_service.grpc.pb.cc
54src/audio_if_client.cpp: src/audio_service.pb.h src/audio_service.grpc.pb.cc
55
Tim Yaob312db52020-11-03 13:08:32 -080056all: audio_server libaudio_client.so audio_client_test audio_client_test_ac3 halplay dap_setting speaker_delay digital_mode test_arc start_arc hal_param hal_dump hal_patch master_vol effect_tool
Tim Yaoe8c0d4a2019-11-27 14:47:35 -080057
58audio_server: $(SERVER_OBJS)
Tim Yao3e3b0912020-08-13 09:47:28 -070059 $(CC) $(CFLAGS) $(SC_LDFLAGS) -o $@ $^
Tim Yaoe8c0d4a2019-11-27 14:47:35 -080060
61libaudio_client.so: $(CLIENT_OBJS)
Tim Yao3e3b0912020-08-13 09:47:28 -070062 $(CC) $(CFLAGS) $(SC_LDFLAGS) -shared -o $@ $^
Tim Yaoe8c0d4a2019-11-27 14:47:35 -080063
64audio_client_test: $(TEST_PCM_OBJS) libaudio_client.so
65 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
66
67audio_client_test_ac3: $(TEST_DOLBY_OBJS) libaudio_client.so
68 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
69
Tim Yao5351d702020-01-20 16:56:42 -080070halplay: $(TEST_HALPLAY_OBJS) libaudio_client.so
71 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
72
Tim Yao14cb94e2020-05-12 10:28:05 -070073dap_setting: $(TEST_MS12_OBJS) libaudio_client.so
74 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
75
76speaker_delay: $(TEST_SPEAKER_DELAY_OBJS) libaudio_client.so
77 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
78
79digital_mode: $(TEST_DIGITAL_MODE_OBJS) libaudio_client.so
80 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
81
82test_arc: $(TEST_ARC_TEST_OBJS) libaudio_client.so
83 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
84
85start_arc: $(TEST_START_ARC_OBJS)
86 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
87
Tim Yaoef039242020-07-21 21:59:22 -070088hal_param: $(TEST_HAL_PARAM_OBJS) libaudio_client.so
89 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
90
Tim Yaoab2a3a62020-10-29 15:33:55 -070091hal_dump: $(TEST_HAL_DUMP_OBJS) libaudio_client.so
92 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
93
Tim Yaob312db52020-11-03 13:08:32 -080094hal_patch: $(TEST_HAL_PATCH_OBJS) libaudio_client.so
95 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
96
Tim Yaoe10bde12020-08-12 11:29:21 -070097master_vol: $(TEST_MASTER_VOL_OBJS) libaudio_client.so
98 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
99
cheng tong7d907882020-09-04 18:53:04 +0800100effect_tool: $(EFFECT_TOOL_OBJS) libaudio_client.so
101 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
102
Tim Yaoe8c0d4a2019-11-27 14:47:35 -0800103.PHONY: install
104install:
105 install -m 755 -D audio_server -t $(TARGET_DIR)/usr/bin/
106 install -m 755 -D audio_client_test -t $(TARGET_DIR)/usr/bin/
107 install -m 755 -D audio_client_test_ac3 $(TARGET_DIR)/usr/bin/
Tim Yao5351d702020-01-20 16:56:42 -0800108 install -m 755 -D halplay $(TARGET_DIR)/usr/bin/
Tim Yao14cb94e2020-05-12 10:28:05 -0700109 install -m 755 -D dap_setting $(TARGET_DIR)/usr/bin/
110 install -m 755 -D speaker_delay $(TARGET_DIR)/usr/bin/
111 install -m 755 -D digital_mode $(TARGET_DIR)/usr/bin/
112 install -m 755 -D test_arc $(TARGET_DIR)/usr/bin/
113 install -m 755 -D start_arc $(TARGET_DIR)/usr/bin/
Tim Yaoef039242020-07-21 21:59:22 -0700114 install -m 755 -D hal_param $(TARGET_DIR)/usr/bin/
Tim Yaoab2a3a62020-10-29 15:33:55 -0700115 install -m 755 -D hal_dump $(TARGET_DIR)/usr/bin/
Tim Yaob312db52020-11-03 13:08:32 -0800116 install -m 755 -D hal_patch $(TARGET_DIR)/usr/bin/
Tim Yaoe10bde12020-08-12 11:29:21 -0700117 install -m 755 -D master_vol $(TARGET_DIR)/usr/bin/
cheng tong7d907882020-09-04 18:53:04 +0800118 install -m 755 -D effect_tool $(TARGET_DIR)/usr/bin/
Tim Yaoe8c0d4a2019-11-27 14:47:35 -0800119 install -m 644 -D libaudio_client.so -t $(TARGET_DIR)/usr/lib/
Pradeep Sriram4797eb52019-12-19 16:26:53 -0800120 install -m 644 -D libaudio_client.so -t $(STAGING_DIR)/usr/lib/
Tim Yaoe8c0d4a2019-11-27 14:47:35 -0800121 install -m 644 -D include/audio_if_client.h -t $(STAGING_DIR)/usr/include
Pradeep Sriram4797eb52019-12-19 16:26:53 -0800122 install -m 644 -D include/audio_if.h -t $(STAGING_DIR)/usr/include
cheng tong7d907882020-09-04 18:53:04 +0800123 install -m 644 -D include/audio_effect_if.h -t $(STAGING_DIR)/usr/include
cheng tongf46f27d2020-11-03 16:07:34 +0800124 install -m 644 -D include/audio_effect_params.h -t $(STAGING_DIR)/usr/include
Tim Yaoe8c0d4a2019-11-27 14:47:35 -0800125 for f in $(@D)/include/hardware/*.h; do \
126 install -m 644 -D $${f} -t $(STAGING_DIR)/usr/include/hardware; \
127 done
128 for f in $(@D)/include/system/*.h; do \
129 install -m 644 -D $${f} -t $(STAGING_DIR)/usr/include/system; \
130 done
131
132.PHONY: clean
133clean:
134 rm -f audio_server
135 rm -f audio_client_test
136 rm -f audio_client_test_ac3
Tim Yao5351d702020-01-20 16:56:42 -0800137 rm -f halplay
Tim Yao14cb94e2020-05-12 10:28:05 -0700138 rm -f test_arc
139 rm -f start_arc
Tim Yaoef039242020-07-21 21:59:22 -0700140 rm -f hal_param
Tim Yaoab2a3a62020-10-29 15:33:55 -0700141 rm -f hal_dump
Tim Yaob312db52020-11-03 13:08:32 -0800142 rm -f hal_patch
Tim Yaoe10bde12020-08-12 11:29:21 -0700143 rm -f master_vol
cheng tong7d907882020-09-04 18:53:04 +0800144 rm -f effect_tool
Tim Yaoe8c0d4a2019-11-27 14:47:35 -0800145 rm -rf $(STAGING_DIR)/usr/include/hardware
146 rm -rf $(STAGING_DIR)/usr/include/system
147 rm -f libaudio_client.so
148 rm -f $(TARGET_DIR)/usr/bin/audio_server
149 rm -f $(TARGET_DIR)/usr/bin/audio_client_test
150 rm -f $(TARGET_DIR)/usr/bin/audio_client_test_ac3
Tim Yao5351d702020-01-20 16:56:42 -0800151 rm -f $(TARGET_DIR)/usr/bin/halplay
Tim Yao14cb94e2020-05-12 10:28:05 -0700152 rm -f $(TARGET_DIR)/usr/bin/speaker_delay
153 rm -f $(TARGET_DIR)/usr/bin/digital_mode
154 rm -f $(TARGET_DIR)/usr/bin/test_arc
155 rm -f $(TARGET_DIR)/usr/bin/start_arc
Tim Yaoef039242020-07-21 21:59:22 -0700156 rm -f $(TARGET_DIR)/usr/bin/hal_param
Tim Yaoab2a3a62020-10-29 15:33:55 -0700157 rm -f $(TARGET_DIR)/usr/bin/hal_dump
Tim Yaob312db52020-11-03 13:08:32 -0800158 rm -f $(TARGET_DIR)/usr/bin/hal_patch
Tim Yaoe10bde12020-08-12 11:29:21 -0700159 rm -f $(TARGET_DIR)/usr/bin/master_vol
cheng tong7d907882020-09-04 18:53:04 +0800160 rm -f $(TARGET_DIR)/usr/bin/effect_tool
Tim Yaoe8c0d4a2019-11-27 14:47:35 -0800161 rm -f $(TARGET_DIR)/usr/lib/libaudio_client.so
162 rm -f $(STAGING_DIR)/usr/lib/libaudio_client.so
163 rm -f $(STAGING_DIR)/usr/include/audio_if_client.h
cheng tong7d907882020-09-04 18:53:04 +0800164 rm -f $(STAGING_DIR)/usr/include/audio_effect_if.h
cheng tongf46f27d2020-11-03 16:07:34 +0800165 rm -f $(STAGING_DIR)/usr/include/audio_effect_params.h
Tim Yaoe8c0d4a2019-11-27 14:47:35 -0800166