Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 1 | COMMON_OBJS=src/CircularBuffer.o |
| 2 | |
| 3 | PROTO_SRCS=src/audio_service.grpc.pb.cc src/audio_service.pb.cc |
| 4 | PROTO_OBJS+=$(PROTO_SRCS:.cc=.o) |
| 5 | |
| 6 | SERVER_OBJS=src/audio_server.o src/audio_if.o |
| 7 | CLIENT_OBJS=src/audio_client.o src/audio_if_client.o |
| 8 | |
| 9 | SERVER_OBJS+=$(COMMON_OBJS) $(PROTO_OBJS) |
| 10 | CLIENT_OBJS+=$(COMMON_OBJS) $(PROTO_OBJS) |
| 11 | |
| 12 | TEST_PCM_OBJS=src/test.o |
| 13 | TEST_DOLBY_OBJS=src/test_ac3.o |
Tim Yao | 5351d70 | 2020-01-20 16:56:42 -0800 | [diff] [blame] | 14 | TEST_HALPLAY_OBJS=src/halplay.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 | e10bde1 | 2020-08-12 11:29:21 -0700 | [diff] [blame^] | 21 | TEST_MASTER_VOL_OBJS=src/master_vol.o |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 22 | |
| 23 | PROTOC=$(HOST_DIR)/bin/protoc |
| 24 | PROTOC_INC=$(HOST_DIR)/include |
| 25 | GRPC_CPP_PLUGIN_PATH=$(HOST_DIR)/bin/grpc_cpp_plugin |
| 26 | |
| 27 | CFLAGS+=-fPIC -O2 -I$(PROTOC_INC) -I./include -I. -I./src |
| 28 | CXXFLAGS+=-std=c++14 |
| 29 | LDFLAGS+=-lgrpc++_unsecure -lprotobuf -lboost_system -llog -ldl -lrt -lpthread -lstdc++ |
| 30 | |
| 31 | %.grpc.pb.cc: %.proto |
| 32 | $(PROTOC) -I=. -I=$(PROTOC_INC) --grpc_out=. --plugin=protoc-gen-grpc=$(GRPC_CPP_PLUGIN_PATH) $< |
| 33 | |
| 34 | %.pb.cc: %.proto |
| 35 | $(PROTOC) -I=. -I=$(PROTOC_INC) --cpp_out=. --plugin=protoc-gen-grpc=$(GRPC_CPP_PLUGIN_PATH) $< |
| 36 | |
| 37 | %.o: %.cpp |
| 38 | $(CC) -c $(CFLAGS) $(CXXFLAGS) -o $@ $< |
| 39 | |
| 40 | %.o: %.cc |
| 41 | $(CC) -c $(CFLAGS) $(CXXFLAGS) -o $@ $< |
| 42 | |
| 43 | %.o: %.c |
| 44 | $(CC) -c $(CFLAGS) -o $@ $< |
| 45 | |
Tim Yao | e10bde1 | 2020-08-12 11:29:21 -0700 | [diff] [blame^] | 46 | all: 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 master_vol |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 47 | |
| 48 | audio_server: $(SERVER_OBJS) |
| 49 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 50 | |
| 51 | libaudio_client.so: $(CLIENT_OBJS) |
| 52 | $(CC) $(CFLAGS) $(LDFLAGS) -shared -o $@ $^ |
| 53 | |
| 54 | audio_client_test: $(TEST_PCM_OBJS) libaudio_client.so |
| 55 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 56 | |
| 57 | audio_client_test_ac3: $(TEST_DOLBY_OBJS) libaudio_client.so |
| 58 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 59 | |
Tim Yao | 5351d70 | 2020-01-20 16:56:42 -0800 | [diff] [blame] | 60 | halplay: $(TEST_HALPLAY_OBJS) libaudio_client.so |
| 61 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 62 | |
Tim Yao | 14cb94e | 2020-05-12 10:28:05 -0700 | [diff] [blame] | 63 | dap_setting: $(TEST_MS12_OBJS) libaudio_client.so |
| 64 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 65 | |
| 66 | speaker_delay: $(TEST_SPEAKER_DELAY_OBJS) libaudio_client.so |
| 67 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 68 | |
| 69 | digital_mode: $(TEST_DIGITAL_MODE_OBJS) libaudio_client.so |
| 70 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 71 | |
| 72 | test_arc: $(TEST_ARC_TEST_OBJS) libaudio_client.so |
| 73 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 74 | |
| 75 | start_arc: $(TEST_START_ARC_OBJS) |
| 76 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 77 | |
Tim Yao | ef03924 | 2020-07-21 21:59:22 -0700 | [diff] [blame] | 78 | hal_param: $(TEST_HAL_PARAM_OBJS) libaudio_client.so |
| 79 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 80 | |
Tim Yao | e10bde1 | 2020-08-12 11:29:21 -0700 | [diff] [blame^] | 81 | master_vol: $(TEST_MASTER_VOL_OBJS) libaudio_client.so |
| 82 | $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ |
| 83 | |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 84 | .PHONY: install |
| 85 | install: |
| 86 | install -m 755 -D audio_server -t $(TARGET_DIR)/usr/bin/ |
| 87 | install -m 755 -D audio_client_test -t $(TARGET_DIR)/usr/bin/ |
| 88 | install -m 755 -D audio_client_test_ac3 $(TARGET_DIR)/usr/bin/ |
Tim Yao | 5351d70 | 2020-01-20 16:56:42 -0800 | [diff] [blame] | 89 | install -m 755 -D halplay $(TARGET_DIR)/usr/bin/ |
Tim Yao | 14cb94e | 2020-05-12 10:28:05 -0700 | [diff] [blame] | 90 | install -m 755 -D dap_setting $(TARGET_DIR)/usr/bin/ |
| 91 | install -m 755 -D speaker_delay $(TARGET_DIR)/usr/bin/ |
| 92 | install -m 755 -D digital_mode $(TARGET_DIR)/usr/bin/ |
| 93 | install -m 755 -D test_arc $(TARGET_DIR)/usr/bin/ |
| 94 | install -m 755 -D start_arc $(TARGET_DIR)/usr/bin/ |
Tim Yao | ef03924 | 2020-07-21 21:59:22 -0700 | [diff] [blame] | 95 | install -m 755 -D hal_param $(TARGET_DIR)/usr/bin/ |
Tim Yao | e10bde1 | 2020-08-12 11:29:21 -0700 | [diff] [blame^] | 96 | install -m 755 -D master_vol $(TARGET_DIR)/usr/bin/ |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 97 | install -m 644 -D libaudio_client.so -t $(TARGET_DIR)/usr/lib/ |
Pradeep Sriram | 4797eb5 | 2019-12-19 16:26:53 -0800 | [diff] [blame] | 98 | install -m 644 -D libaudio_client.so -t $(STAGING_DIR)/usr/lib/ |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 99 | 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] | 100 | install -m 644 -D include/audio_if.h -t $(STAGING_DIR)/usr/include |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 101 | for f in $(@D)/include/hardware/*.h; do \ |
| 102 | install -m 644 -D $${f} -t $(STAGING_DIR)/usr/include/hardware; \ |
| 103 | done |
| 104 | for f in $(@D)/include/system/*.h; do \ |
| 105 | install -m 644 -D $${f} -t $(STAGING_DIR)/usr/include/system; \ |
| 106 | done |
| 107 | |
| 108 | .PHONY: clean |
| 109 | clean: |
| 110 | rm -f audio_server |
| 111 | rm -f audio_client_test |
| 112 | rm -f audio_client_test_ac3 |
Tim Yao | 5351d70 | 2020-01-20 16:56:42 -0800 | [diff] [blame] | 113 | rm -f halplay |
Tim Yao | 14cb94e | 2020-05-12 10:28:05 -0700 | [diff] [blame] | 114 | rm -f test_arc |
| 115 | rm -f start_arc |
Tim Yao | ef03924 | 2020-07-21 21:59:22 -0700 | [diff] [blame] | 116 | rm -f hal_param |
Tim Yao | e10bde1 | 2020-08-12 11:29:21 -0700 | [diff] [blame^] | 117 | rm -f master_vol |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 118 | rm -rf $(STAGING_DIR)/usr/include/hardware |
| 119 | rm -rf $(STAGING_DIR)/usr/include/system |
| 120 | rm -f libaudio_client.so |
| 121 | rm -f $(TARGET_DIR)/usr/bin/audio_server |
| 122 | rm -f $(TARGET_DIR)/usr/bin/audio_client_test |
| 123 | rm -f $(TARGET_DIR)/usr/bin/audio_client_test_ac3 |
Tim Yao | 5351d70 | 2020-01-20 16:56:42 -0800 | [diff] [blame] | 124 | rm -f $(TARGET_DIR)/usr/bin/halplay |
Tim Yao | 14cb94e | 2020-05-12 10:28:05 -0700 | [diff] [blame] | 125 | rm -f $(TARGET_DIR)/usr/bin/speaker_delay |
| 126 | rm -f $(TARGET_DIR)/usr/bin/digital_mode |
| 127 | rm -f $(TARGET_DIR)/usr/bin/test_arc |
| 128 | rm -f $(TARGET_DIR)/usr/bin/start_arc |
Tim Yao | ef03924 | 2020-07-21 21:59:22 -0700 | [diff] [blame] | 129 | rm -f $(TARGET_DIR)/usr/bin/hal_param |
Tim Yao | e10bde1 | 2020-08-12 11:29:21 -0700 | [diff] [blame^] | 130 | rm -f $(TARGET_DIR)/usr/bin/master_vol |
Tim Yao | e8c0d4a | 2019-11-27 14:47:35 -0800 | [diff] [blame] | 131 | rm -f $(TARGET_DIR)/usr/lib/libaudio_client.so |
| 132 | rm -f $(STAGING_DIR)/usr/lib/libaudio_client.so |
| 133 | rm -f $(STAGING_DIR)/usr/include/audio_if_client.h |
| 134 | |