Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 1 | PROTO_SRCS=src/audio_service.grpc.pb.cc src/audio_service.pb.cc |
| 2 | PROTO_OBJS+=$(PROTO_SRCS:.cc=.o) |
| 3 | |
| 4 | SERVER_OBJS=src/audio_server.o src/audio_if.o |
| 5 | CLIENT_OBJS=src/audio_client.o src/audio_if_client.o |
wei.du | 7a45bfd | 2022-10-27 11:48:27 +0800 | [diff] [blame^] | 6 | HAL_APLUG_OBJS = hal_aplug/hal_aplug.o |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 7 | |
| 8 | SERVER_OBJS+=$(COMMON_OBJS) $(PROTO_OBJS) |
| 9 | CLIENT_OBJS+=$(COMMON_OBJS) $(PROTO_OBJS) |
| 10 | |
| 11 | TEST_PCM_OBJS=src/test.o |
| 12 | TEST_DOLBY_OBJS=src/test_ac3.o |
Tim Yao | 5351d70 | 2020-01-20 16:56:42 -0800 | [diff] [blame] | 13 | TEST_HALPLAY_OBJS=src/halplay.o |
shu.zhang | f2bd59c | 2021-07-13 04:55:34 -0400 | [diff] [blame] | 14 | TEST_HALCAPTURE_OBJS=src/hal_capture.o |
Tim Yao | 14cb94e | 2020-05-12 10:28:05 -0700 | [diff] [blame] | 15 | TEST_MS12_OBJS=src/dap_setting.o |
| 16 | TEST_SPEAKER_DELAY_OBJS=src/speaker_delay.o |
| 17 | TEST_DIGITAL_MODE_OBJS=src/digital_mode.o |
| 18 | TEST_ARC_TEST_OBJS=src/test_arc.o |
| 19 | TEST_START_ARC_OBJS=src/start_arc.o |
Tim Yao | ef03924 | 2020-07-21 21:59:22 -0700 | [diff] [blame] | 20 | TEST_HAL_PARAM_OBJS=src/hal_param.o |
Tim Yao | ab2a3a6 | 2020-10-29 15:33:55 -0700 | [diff] [blame] | 21 | TEST_HAL_DUMP_OBJS=src/hal_dump.o |
Tim Yao | b312db5 | 2020-11-03 13:08:32 -0800 | [diff] [blame] | 22 | TEST_HAL_PATCH_OBJS=src/hal_patch.o |
Tim Yao | e10bde1 | 2020-08-12 11:29:21 -0700 | [diff] [blame] | 23 | TEST_MASTER_VOL_OBJS=src/master_vol.o |
cheng tong | 7d90788 | 2020-09-04 18:53:04 +0800 | [diff] [blame] | 24 | EFFECT_TOOL_OBJS=src/effect_tool.o |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 25 | |
| 26 | PROTOC=$(HOST_DIR)/bin/protoc |
| 27 | PROTOC_INC=$(HOST_DIR)/include |
| 28 | GRPC_CPP_PLUGIN_PATH=$(HOST_DIR)/bin/grpc_cpp_plugin |
| 29 | |
| 30 | CFLAGS+=-fPIC -O2 -I$(PROTOC_INC) -I./include -I. -I./src |
wei.du | 7a45bfd | 2022-10-27 11:48:27 +0800 | [diff] [blame^] | 31 | ifeq ($(aplugin),y) |
| 32 | CFLAGS+= -DPIC |
| 33 | endif |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 34 | CXXFLAGS+=-std=c++14 |
Tim Yao | aaa3bc5 | 2020-12-30 17:40:14 -0800 | [diff] [blame] | 35 | SC_LDFLAGS+=-Wl,--no-as-needed -lgrpc++_unsecure -lprotobuf -lboost_system -lamaudioutils -llog -ldl -lrt -lpthread -lstdc++ -pthread |
Terrence Pu | 6008d88 | 2020-06-21 12:30:54 -0700 | [diff] [blame] | 36 | LDFLAGS+= -Wl,--no-as-needed -llog -ldl -lrt -lpthread -lstdc++ -pthread |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 37 | |
Tim Yao | c02f75d | 2021-01-14 22:39:40 -0800 | [diff] [blame] | 38 | %.grpc.pb.cc %.grpc.pb.h: %.proto |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 39 | $(PROTOC) -I=. -I=$(PROTOC_INC) --grpc_out=. --plugin=protoc-gen-grpc=$(GRPC_CPP_PLUGIN_PATH) $< |
| 40 | |
Tim Yao | c02f75d | 2021-01-14 22:39:40 -0800 | [diff] [blame] | 41 | %.pb.cc %.pb.h: %.proto |
Tim Yao | 704dd98 | 2020-12-09 17:06:45 -0800 | [diff] [blame] | 42 | $(PROTOC) -I=. -I=$(PROTOC_INC) --cpp_out=. --plugin=protoc-gen-grpc=$(GRPC_CPP_PLUGIN_PATH) $< |
| 43 | |
Tim Yao | c02f75d | 2021-01-14 22:39:40 -0800 | [diff] [blame] | 44 | %.pb.o: %.pb.cc %.pb.h |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 45 | $(CC) -c $(CFLAGS) $(CXXFLAGS) -o $@ $< |
| 46 | |
Tim Yao | c02f75d | 2021-01-14 22:39:40 -0800 | [diff] [blame] | 47 | %.o: %.cpp |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 48 | $(CC) -c $(CFLAGS) $(CXXFLAGS) -o $@ $< |
| 49 | |
| 50 | %.o: %.c |
| 51 | $(CC) -c $(CFLAGS) -o $@ $< |
| 52 | |
Blance Tang | db9f675 | 2020-12-27 02:54:04 +0000 | [diff] [blame] | 53 | src/audio_service.grpc.pb.cc: src/audio_service.pb.h |
| 54 | src/audio_server.cpp: src/audio_service.pb.h src/audio_service.grpc.pb.cc |
| 55 | src/audio_client.cpp: src/audio_service.pb.h src/audio_service.grpc.pb.cc |
| 56 | src/audio_if_client.cpp: src/audio_service.pb.h src/audio_service.grpc.pb.cc |
| 57 | |
wei.du | 7a45bfd | 2022-10-27 11:48:27 +0800 | [diff] [blame^] | 58 | obj= audio_server libaudio_client.so audio_client_test audio_client_test_ac3 halplay hal_capture dap_setting speaker_delay digital_mode test_arc start_arc hal_param hal_dump hal_patch master_vol effect_tool |
| 59 | ifeq ($(aplugin),y) |
| 60 | obj+= libasound_module_pcm_ahal.so |
| 61 | endif |
| 62 | |
| 63 | all:$(obj) |
| 64 | |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 65 | |
| 66 | audio_server: $(SERVER_OBJS) |
Tim Yao | 3e3b091 | 2020-08-13 09:47:28 -0700 | [diff] [blame] | 67 | $(CC) $(CFLAGS) $(SC_LDFLAGS) -o $@ $^ |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 68 | |
| 69 | libaudio_client.so: $(CLIENT_OBJS) |
Tim Yao | 3e3b091 | 2020-08-13 09:47:28 -0700 | [diff] [blame] | 70 | $(CC) $(CFLAGS) $(SC_LDFLAGS) -shared -o $@ $^ |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 71 | |
wei.du | 7a45bfd | 2022-10-27 11:48:27 +0800 | [diff] [blame^] | 72 | libasound_module_pcm_ahal.so: $(HAL_APLUG_OBJS) libaudio_client.so |
| 73 | $(CC) $(CFLAGS) $(SC_LDFLAGS) -lasound -shared -o $@ $^ |
| 74 | |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 75 | audio_client_test: $(TEST_PCM_OBJS) libaudio_client.so |
| 76 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 77 | |
| 78 | audio_client_test_ac3: $(TEST_DOLBY_OBJS) libaudio_client.so |
| 79 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 80 | |
Tim Yao | 5351d70 | 2020-01-20 16:56:42 -0800 | [diff] [blame] | 81 | halplay: $(TEST_HALPLAY_OBJS) libaudio_client.so |
| 82 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 83 | |
shu.zhang | f2bd59c | 2021-07-13 04:55:34 -0400 | [diff] [blame] | 84 | hal_capture: $(TEST_HALCAPTURE_OBJS) libaudio_client.so |
| 85 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 86 | |
Tim Yao | 14cb94e | 2020-05-12 10:28:05 -0700 | [diff] [blame] | 87 | dap_setting: $(TEST_MS12_OBJS) libaudio_client.so |
| 88 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 89 | |
| 90 | speaker_delay: $(TEST_SPEAKER_DELAY_OBJS) libaudio_client.so |
| 91 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 92 | |
| 93 | digital_mode: $(TEST_DIGITAL_MODE_OBJS) libaudio_client.so |
| 94 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 95 | |
| 96 | test_arc: $(TEST_ARC_TEST_OBJS) libaudio_client.so |
| 97 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 98 | |
| 99 | start_arc: $(TEST_START_ARC_OBJS) |
| 100 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 101 | |
Tim Yao | ef03924 | 2020-07-21 21:59:22 -0700 | [diff] [blame] | 102 | hal_param: $(TEST_HAL_PARAM_OBJS) libaudio_client.so |
| 103 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 104 | |
Tim Yao | ab2a3a6 | 2020-10-29 15:33:55 -0700 | [diff] [blame] | 105 | hal_dump: $(TEST_HAL_DUMP_OBJS) libaudio_client.so |
| 106 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 107 | |
Tim Yao | b312db5 | 2020-11-03 13:08:32 -0800 | [diff] [blame] | 108 | hal_patch: $(TEST_HAL_PATCH_OBJS) libaudio_client.so |
| 109 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 110 | |
Tim Yao | e10bde1 | 2020-08-12 11:29:21 -0700 | [diff] [blame] | 111 | master_vol: $(TEST_MASTER_VOL_OBJS) libaudio_client.so |
| 112 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 113 | |
cheng tong | 7d90788 | 2020-09-04 18:53:04 +0800 | [diff] [blame] | 114 | effect_tool: $(EFFECT_TOOL_OBJS) libaudio_client.so |
| 115 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 116 | |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 117 | .PHONY: install |
| 118 | install: |
| 119 | install -m 755 -D audio_server -t $(TARGET_DIR)/usr/bin/ |
| 120 | install -m 755 -D audio_client_test -t $(TARGET_DIR)/usr/bin/ |
| 121 | install -m 755 -D audio_client_test_ac3 $(TARGET_DIR)/usr/bin/ |
Tim Yao | 5351d70 | 2020-01-20 16:56:42 -0800 | [diff] [blame] | 122 | install -m 755 -D halplay $(TARGET_DIR)/usr/bin/ |
shu.zhang | f2bd59c | 2021-07-13 04:55:34 -0400 | [diff] [blame] | 123 | install -m 755 -D hal_capture $(TARGET_DIR)/usr/bin/ |
Tim Yao | 14cb94e | 2020-05-12 10:28:05 -0700 | [diff] [blame] | 124 | install -m 755 -D dap_setting $(TARGET_DIR)/usr/bin/ |
| 125 | install -m 755 -D speaker_delay $(TARGET_DIR)/usr/bin/ |
| 126 | install -m 755 -D digital_mode $(TARGET_DIR)/usr/bin/ |
| 127 | install -m 755 -D test_arc $(TARGET_DIR)/usr/bin/ |
| 128 | install -m 755 -D start_arc $(TARGET_DIR)/usr/bin/ |
Tim Yao | ef03924 | 2020-07-21 21:59:22 -0700 | [diff] [blame] | 129 | install -m 755 -D hal_param $(TARGET_DIR)/usr/bin/ |
Tim Yao | ab2a3a6 | 2020-10-29 15:33:55 -0700 | [diff] [blame] | 130 | install -m 755 -D hal_dump $(TARGET_DIR)/usr/bin/ |
Tim Yao | b312db5 | 2020-11-03 13:08:32 -0800 | [diff] [blame] | 131 | install -m 755 -D hal_patch $(TARGET_DIR)/usr/bin/ |
Tim Yao | e10bde1 | 2020-08-12 11:29:21 -0700 | [diff] [blame] | 132 | install -m 755 -D master_vol $(TARGET_DIR)/usr/bin/ |
cheng tong | 7d90788 | 2020-09-04 18:53:04 +0800 | [diff] [blame] | 133 | install -m 755 -D effect_tool $(TARGET_DIR)/usr/bin/ |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 134 | install -m 644 -D libaudio_client.so -t $(TARGET_DIR)/usr/lib/ |
Pradeep Sriram | 4797eb5 | 2019-12-19 16:26:53 -0800 | [diff] [blame] | 135 | install -m 644 -D libaudio_client.so -t $(STAGING_DIR)/usr/lib/ |
wei.du | 7a45bfd | 2022-10-27 11:48:27 +0800 | [diff] [blame^] | 136 | ifeq ($(aplugin),y) |
| 137 | install -m 644 -D libasound_module_pcm_ahal.so -t $(TARGET_DIR)/usr/lib/alsa-lib/ |
| 138 | endif |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 139 | install -m 644 -D include/audio_if_client.h -t $(STAGING_DIR)/usr/include |
Pradeep Sriram | 4797eb5 | 2019-12-19 16:26:53 -0800 | [diff] [blame] | 140 | install -m 644 -D include/audio_if.h -t $(STAGING_DIR)/usr/include |
cheng tong | 7d90788 | 2020-09-04 18:53:04 +0800 | [diff] [blame] | 141 | install -m 644 -D include/audio_effect_if.h -t $(STAGING_DIR)/usr/include |
cheng tong | f46f27d | 2020-11-03 16:07:34 +0800 | [diff] [blame] | 142 | install -m 644 -D include/audio_effect_params.h -t $(STAGING_DIR)/usr/include |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 143 | for f in $(@D)/include/hardware/*.h; do \ |
| 144 | install -m 644 -D $${f} -t $(STAGING_DIR)/usr/include/hardware; \ |
| 145 | done |
| 146 | for f in $(@D)/include/system/*.h; do \ |
| 147 | install -m 644 -D $${f} -t $(STAGING_DIR)/usr/include/system; \ |
| 148 | done |
| 149 | |
| 150 | .PHONY: clean |
| 151 | clean: |
| 152 | rm -f audio_server |
| 153 | rm -f audio_client_test |
| 154 | rm -f audio_client_test_ac3 |
Tim Yao | 5351d70 | 2020-01-20 16:56:42 -0800 | [diff] [blame] | 155 | rm -f halplay |
shu.zhang | f2bd59c | 2021-07-13 04:55:34 -0400 | [diff] [blame] | 156 | rm -f hal_capture |
Tim Yao | 14cb94e | 2020-05-12 10:28:05 -0700 | [diff] [blame] | 157 | rm -f test_arc |
| 158 | rm -f start_arc |
Tim Yao | ef03924 | 2020-07-21 21:59:22 -0700 | [diff] [blame] | 159 | rm -f hal_param |
Tim Yao | ab2a3a6 | 2020-10-29 15:33:55 -0700 | [diff] [blame] | 160 | rm -f hal_dump |
Tim Yao | b312db5 | 2020-11-03 13:08:32 -0800 | [diff] [blame] | 161 | rm -f hal_patch |
Tim Yao | e10bde1 | 2020-08-12 11:29:21 -0700 | [diff] [blame] | 162 | rm -f master_vol |
cheng tong | 7d90788 | 2020-09-04 18:53:04 +0800 | [diff] [blame] | 163 | rm -f effect_tool |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 164 | rm -rf $(STAGING_DIR)/usr/include/hardware |
| 165 | rm -rf $(STAGING_DIR)/usr/include/system |
| 166 | rm -f libaudio_client.so |
| 167 | rm -f $(TARGET_DIR)/usr/bin/audio_server |
| 168 | rm -f $(TARGET_DIR)/usr/bin/audio_client_test |
| 169 | rm -f $(TARGET_DIR)/usr/bin/audio_client_test_ac3 |
Tim Yao | 5351d70 | 2020-01-20 16:56:42 -0800 | [diff] [blame] | 170 | rm -f $(TARGET_DIR)/usr/bin/halplay |
shu.zhang | f2bd59c | 2021-07-13 04:55:34 -0400 | [diff] [blame] | 171 | rm -f $(TARGET_DIR)/usr/bin/hal_capture |
Tim Yao | 14cb94e | 2020-05-12 10:28:05 -0700 | [diff] [blame] | 172 | rm -f $(TARGET_DIR)/usr/bin/speaker_delay |
| 173 | rm -f $(TARGET_DIR)/usr/bin/digital_mode |
| 174 | rm -f $(TARGET_DIR)/usr/bin/test_arc |
| 175 | rm -f $(TARGET_DIR)/usr/bin/start_arc |
Tim Yao | ef03924 | 2020-07-21 21:59:22 -0700 | [diff] [blame] | 176 | rm -f $(TARGET_DIR)/usr/bin/hal_param |
Tim Yao | ab2a3a6 | 2020-10-29 15:33:55 -0700 | [diff] [blame] | 177 | rm -f $(TARGET_DIR)/usr/bin/hal_dump |
Tim Yao | b312db5 | 2020-11-03 13:08:32 -0800 | [diff] [blame] | 178 | rm -f $(TARGET_DIR)/usr/bin/hal_patch |
Tim Yao | e10bde1 | 2020-08-12 11:29:21 -0700 | [diff] [blame] | 179 | rm -f $(TARGET_DIR)/usr/bin/master_vol |
cheng tong | 7d90788 | 2020-09-04 18:53:04 +0800 | [diff] [blame] | 180 | rm -f $(TARGET_DIR)/usr/bin/effect_tool |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 181 | rm -f $(TARGET_DIR)/usr/lib/libaudio_client.so |
| 182 | rm -f $(STAGING_DIR)/usr/lib/libaudio_client.so |
| 183 | rm -f $(STAGING_DIR)/usr/include/audio_if_client.h |
cheng tong | 7d90788 | 2020-09-04 18:53:04 +0800 | [diff] [blame] | 184 | rm -f $(STAGING_DIR)/usr/include/audio_effect_if.h |
cheng tong | f46f27d | 2020-11-03 16:07:34 +0800 | [diff] [blame] | 185 | rm -f $(STAGING_DIR)/usr/include/audio_effect_params.h |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 186 | |