xref: /btstack/test/gatt_service_server/Makefile (revision c435f47b63025db89c42b8ffaaa28b0cfbdcce6e)
176181014SMilanka Ringwald# Requirements: cpputest.github.io
276181014SMilanka Ringwald
376181014SMilanka RingwaldBTSTACK_ROOT =  ../..
476181014SMilanka Ringwald
576181014SMilanka RingwaldCFLAGS  = -DUNIT_TEST -x c++ -g -Wall -Wnarrowing -Wconversion-null
676181014SMilanka RingwaldCFLAGS += -I../
776181014SMilanka Ringwald
876181014SMilanka RingwaldCFLAGS += -I${BTSTACK_ROOT}/src
976181014SMilanka RingwaldCFLAGS += -I${BTSTACK_ROOT}/test/mock
1076181014SMilanka RingwaldCFLAGS += -I${BTSTACK_ROOT}/3rd-party/rijndael
1176181014SMilanka Ringwald
1276181014SMilanka RingwaldVPATH += ${BTSTACK_ROOT}/src
1376181014SMilanka RingwaldVPATH += ${BTSTACK_ROOT}/src/ble
1476181014SMilanka RingwaldVPATH += ${BTSTACK_ROOT}/src/ble/gatt-service
1576181014SMilanka RingwaldVPATH += ${BTSTACK_ROOT}/platform/posix
1676181014SMilanka RingwaldVPATH += ${BTSTACK_ROOT}/3rd-party/rijndael
1776181014SMilanka RingwaldVPATH += ${BTSTACK_ROOT}/test/mock
1876181014SMilanka Ringwald
1976181014SMilanka RingwaldCOMMON = 										\
2076181014SMilanka Ringwald	ad_parser.c                 				\
2176181014SMilanka Ringwald	att_db.c 				 	    			\
2276181014SMilanka Ringwald	audio_input_control_service_server.c 		\
2376181014SMilanka Ringwald	battery_service_server.c 					\
2476181014SMilanka Ringwald	btstack_linked_list.c       				\
2576181014SMilanka Ringwald	btstack_memory.c            				\
2676181014SMilanka Ringwald	btstack_memory_pool.c       				\
2776181014SMilanka Ringwald	btstack_util.c              				\
2876181014SMilanka Ringwald	cycling_power_service_server.c 				\
2976181014SMilanka Ringwald	cycling_speed_and_cadence_service_server.c 	\
3076181014SMilanka Ringwald	device_information_service_server.c 		\
3176181014SMilanka Ringwald	hci_dump.c                  				\
3276181014SMilanka Ringwald	heart_rate_service_server.c 				\
3376181014SMilanka Ringwald	hids_device.c 								\
3476181014SMilanka Ringwald	microphone_control_service_server.c 		\
3576181014SMilanka Ringwald	mock_att_server.c           				\
3676181014SMilanka Ringwald	nordic_spp_service_server.c 				\
3776181014SMilanka Ringwald	tx_power_service_server.c 					\
3876181014SMilanka Ringwald	ublox_spp_service_server.c 					\
3976181014SMilanka Ringwald
4076181014SMilanka Ringwald
4176181014SMilanka RingwaldCFLAGS_COVERAGE = ${CFLAGS} -Ibuild-coverage -fprofile-arcs -ftest-coverage
4276181014SMilanka RingwaldCFLAGS_ASAN     = ${CFLAGS} -Ibuild-asan     -fsanitize=address -DHAVE_ASSERT
4376181014SMilanka Ringwald
4476181014SMilanka RingwaldLDFLAGS += -lCppUTest -lCppUTestExt
4576181014SMilanka RingwaldLDFLAGS_COVERAGE = ${LDFLAGS} -fprofile-arcs -ftest-coverage
4676181014SMilanka RingwaldLDFLAGS_ASAN     = ${LDFLAGS} -fsanitize=address
4776181014SMilanka Ringwald
4876181014SMilanka RingwaldCOMMON_OBJ_COVERAGE = $(addprefix build-coverage/,$(COMMON:.c=.o))
4976181014SMilanka RingwaldCOMMON_OBJ_ASAN     = $(addprefix build-asan/,    $(COMMON:.c=.o))
5076181014SMilanka Ringwald
5176181014SMilanka Ringwald
5276181014SMilanka Ringwaldall: build-coverage/battery_service_server_test 			build-asan/battery_service_server_test 				\
5376181014SMilanka Ringwald	 build-coverage/device_information_service_server_test 	build-asan/device_information_service_server_test 	\
5476181014SMilanka Ringwald	 build-coverage/tx_power_service_server_test 			build-asan/tx_power_service_server_test 			\
5576181014SMilanka Ringwald	 build-coverage/bond_management_service_server_test 	build-asan/bond_management_service_server_test 		\
5676181014SMilanka Ringwald	 build-coverage/microphone_control_service_server_test 	build-asan/microphone_control_service_server_test 	\
57*c435f47bSMilanka Ringwald	 build-coverage/heart_rate_service_server_test 			build-asan/heart_rate_service_server_test 			\
5876181014SMilanka Ringwald
5976181014SMilanka Ringwaldbuild-%:
6076181014SMilanka Ringwald	mkdir -p $@
6176181014SMilanka Ringwald
6276181014SMilanka Ringwaldbuild-%/battery_service_server_test.h: battery_service_server_test.gatt | build-%
6376181014SMilanka Ringwald	python3 ${BTSTACK_ROOT}/tool/compile_gatt.py $< $@
6476181014SMilanka Ringwald
6576181014SMilanka Ringwaldbuild-%/device_information_service_server_test.h: device_information_service_server_test.gatt| build-%
6676181014SMilanka Ringwald	python3 ${BTSTACK_ROOT}/tool/compile_gatt.py $< $@
6776181014SMilanka Ringwald
6876181014SMilanka Ringwaldbuild-%/tx_power_service_server_test.h: tx_power_service_server_test.gatt| build-%
6976181014SMilanka Ringwald	python3 ${BTSTACK_ROOT}/tool/compile_gatt.py $< $@
7076181014SMilanka Ringwald
7176181014SMilanka Ringwaldbuild-%/bond_management_service_server_test.h: bond_management_service_server_test.gatt| build-%
7276181014SMilanka Ringwald	python3 ${BTSTACK_ROOT}/tool/compile_gatt.py $< $@
7376181014SMilanka Ringwald
7476181014SMilanka Ringwaldbuild-%/microphone_control_service_server_test.h: microphone_control_service_server_test.gatt| build-%
7576181014SMilanka Ringwald	python3 ${BTSTACK_ROOT}/tool/compile_gatt.py $< $@
7676181014SMilanka Ringwald
77*c435f47bSMilanka Ringwaldbuild-%/heart_rate_service_server_test.h: heart_rate_service_server_test.gatt| build-%
78*c435f47bSMilanka Ringwald	python3 ${BTSTACK_ROOT}/tool/compile_gatt.py $< $@
79*c435f47bSMilanka Ringwald
8076181014SMilanka Ringwaldbuild-coverage/%.o: %.c | build-coverage
8176181014SMilanka Ringwald	${CC} -c $(CFLAGS_COVERAGE) $< -o $@
8276181014SMilanka Ringwald
8376181014SMilanka Ringwaldbuild-coverage/%.o: %.cpp | build-coverage
8476181014SMilanka Ringwald	${CXX} -c $(CFLAGS_COVERAGE) $< -o $@
8576181014SMilanka Ringwald
8676181014SMilanka Ringwaldbuild-asan/%.o: %.c | build-asan
8776181014SMilanka Ringwald	${CC} -c $(CFLAGS_ASAN) $< -o $@
8876181014SMilanka Ringwald
8976181014SMilanka Ringwaldbuild-asan/%.o: %.cpp | build-asan
9076181014SMilanka Ringwald	${CXX} -c $(CFLAGS_ASAN) $< -o $@
9176181014SMilanka Ringwald
9276181014SMilanka Ringwaldbuild-coverage/battery_service_server_test: build-coverage/battery_service_server_test.h ${COMMON_OBJ_COVERAGE} build-coverage/battery_service_server_test.o | build-coverage
9376181014SMilanka Ringwald	${CXX} $(filter-out build-coverage/battery_service_server_test.h,$^) ${LDFLAGS_COVERAGE} -o $@
9476181014SMilanka Ringwald
9576181014SMilanka Ringwaldbuild-asan/battery_service_server_test: build-asan/battery_service_server_test.h ${COMMON_OBJ_ASAN} build-asan/battery_service_server_test.o | build-asan
9676181014SMilanka Ringwald	${CXX} $(filter-out build-asan/battery_service_server_test.h,$^) ${LDFLAGS_ASAN} -o $@
9776181014SMilanka Ringwald
9876181014SMilanka Ringwaldbuild-coverage/device_information_service_server_test: build-coverage/device_information_service_server_test.h ${COMMON_OBJ_COVERAGE} build-coverage/device_information_service_server_test.o  | build-coverage
9976181014SMilanka Ringwald	${CXX} $(filter-out build-coverage/device_information_service_server_test.h,$^) ${LDFLAGS_COVERAGE} -o $@
10076181014SMilanka Ringwald
10176181014SMilanka Ringwaldbuild-asan/device_information_service_server_test: build-asan/device_information_service_server_test.h ${COMMON_OBJ_ASAN} build-asan/device_information_service_server_test.o  | build-asan
10276181014SMilanka Ringwald	${CXX} $(filter-out build-asan/device_information_service_server_test.h,$^) ${LDFLAGS_ASAN} -o $@
10376181014SMilanka Ringwald
10476181014SMilanka Ringwaldbuild-coverage/tx_power_service_server_test: build-coverage/tx_power_service_server_test.h ${COMMON_OBJ_COVERAGE} build-coverage/tx_power_service_server_test.o  | build-coverage
10576181014SMilanka Ringwald	${CXX} $(filter-out build-coverage/tx_power_service_server_test.h,$^) ${LDFLAGS_COVERAGE} -o $@
10676181014SMilanka Ringwald
10776181014SMilanka Ringwaldbuild-asan/tx_power_service_server_test: build-asan/tx_power_service_server_test.h ${COMMON_OBJ_ASAN} build-asan/tx_power_service_server_test.o  | build-asan
10876181014SMilanka Ringwald	${CXX} $(filter-out build-asan/tx_power_service_server_test.h,$^) ${LDFLAGS_ASAN} -o $@
10976181014SMilanka Ringwald
11076181014SMilanka Ringwaldbuild-coverage/bond_management_service_server_test: build-coverage/bond_management_service_server_test.h ${COMMON_OBJ_COVERAGE} build-coverage/bond_management_service_server.o build-coverage/bond_management_service_server_test.o  | build-coverage
11176181014SMilanka Ringwald	${CXX} $(filter-out build-coverage/bond_management_service_server_test.h,$^) ${LDFLAGS_COVERAGE} -o $@
11276181014SMilanka Ringwald
11376181014SMilanka Ringwaldbuild-asan/bond_management_service_server_test: build-asan/bond_management_service_server_test.h ${COMMON_OBJ_ASAN} build-asan/bond_management_service_server.o  build-asan/bond_management_service_server_test.o  | build-asan
11476181014SMilanka Ringwald	${CXX} $(filter-out build-asan/bond_management_service_server_test.h,$^) ${LDFLAGS_ASAN} -o $@
11576181014SMilanka Ringwald
11676181014SMilanka Ringwaldbuild-coverage/microphone_control_service_server_test: build-coverage/microphone_control_service_server_test.h ${COMMON_OBJ_COVERAGE} build-coverage/microphone_control_service_server.o build-coverage/microphone_control_service_server_test.o  | build-coverage
11776181014SMilanka Ringwald	${CXX} $(filter-out build-coverage/microphone_control_service_server_test.h,$^) ${LDFLAGS_COVERAGE} -o $@
11876181014SMilanka Ringwald
11976181014SMilanka Ringwaldbuild-asan/microphone_control_service_server_test: build-asan/microphone_control_service_server_test.h ${COMMON_OBJ_ASAN} build-asan/microphone_control_service_server.o  build-asan/microphone_control_service_server_test.o  | build-asan
12076181014SMilanka Ringwald	${CXX} $(filter-out build-asan/microphone_control_service_server_test.h,$^) ${LDFLAGS_ASAN} -o $@
12176181014SMilanka Ringwald
122*c435f47bSMilanka Ringwaldbuild-coverage/heart_rate_service_server_test: build-coverage/heart_rate_service_server_test.h ${COMMON_OBJ_COVERAGE} build-coverage/heart_rate_service_server.o build-coverage/heart_rate_service_server_test.o  | build-coverage
123*c435f47bSMilanka Ringwald	${CXX} $(filter-out build-coverage/heart_rate_service_server_test.h,$^) ${LDFLAGS_COVERAGE} -o $@
124*c435f47bSMilanka Ringwald
125*c435f47bSMilanka Ringwaldbuild-asan/heart_rate_service_server_test: build-asan/heart_rate_service_server_test.h ${COMMON_OBJ_ASAN} build-asan/heart_rate_service_server.o  build-asan/heart_rate_service_server_test.o  | build-asan
126*c435f47bSMilanka Ringwald	${CXX} $(filter-out build-asan/heart_rate_service_server_test.h,$^) ${LDFLAGS_ASAN} -o $@
127*c435f47bSMilanka Ringwald
12876181014SMilanka Ringwaldtest: all
12976181014SMilanka Ringwald	build-asan/battery_service_server_test
13076181014SMilanka Ringwald	build-asan/device_information_service_server_test
13176181014SMilanka Ringwald	build-asan/tx_power_service_server_test
13276181014SMilanka Ringwald	build-asan/bond_management_service_server_test
13376181014SMilanka Ringwald	build-asan/microphone_control_service_server_test
134*c435f47bSMilanka Ringwald	build-asan/heart_rate_service_server_test
13576181014SMilanka Ringwald
13676181014SMilanka Ringwaldcoverage: all
13776181014SMilanka Ringwald	rm -f build-coverage/*.gcda
13876181014SMilanka Ringwald	build-coverage/battery_service_server_test
13976181014SMilanka Ringwald	build-coverage/device_information_service_server_test
14076181014SMilanka Ringwald	build-coverage/tx_power_service_server_test
14176181014SMilanka Ringwald	build-coverage/bond_management_service_server_test
14276181014SMilanka Ringwald	build-coverage/microphone_control_service_server_test
143*c435f47bSMilanka Ringwald	build-coverage/heart_rate_service_server_test
14476181014SMilanka Ringwald
14576181014SMilanka Ringwaldclean:
14676181014SMilanka Ringwald	rm -rf build-coverage build-asan
14776181014SMilanka Ringwald
148