xref: /btstack/test/sdp/Makefile (revision 98e87e7776ef9a7fe55135aea8cddc761fe3a7a5)
1# Requirements: cpputest.github.io
2
3BTSTACK_ROOT =  ../..
4
5# CppuTest from pkg-config
6CFLAGS  += ${shell pkg-config --cflags CppuTest}
7LDFLAGS += ${shell pkg-config --libs   CppuTest}
8
9CFLAGS += -DUNIT_TEST -g -Wall -Wnarrowing -Wconversion-null
10CFLAGS += -I${BTSTACK_ROOT}/src
11CFLAGS += -I..
12
13LDFLAGS += -lCppUTest -lCppUTestExt
14
15VPATH += ${BTSTACK_ROOT}/src
16VPATH += ${BTSTACK_ROOT}/src/classic
17
18COMMON = \
19	btstack_util.c		  \
20	hci_dump.c    \
21	hci.c \
22	hci_cmd.c \
23	btstack_run_loop.c \
24	rfcomm.c \
25	ad_parser.c \
26	sdp_client.c \
27	sdp_client_rfcomm.c \
28	l2cap.c \
29	l2cap_signaling.c \
30	btstack_linked_list.c \
31	btstack_memory.c \
32	btstack_memory_pool.c \
33	device_id_server.c \
34	avdtp.c \
35	a2dp.c \
36	a2dp_source.c \
37	a2dp_sink.c \
38	avdtp.c \
39	avdtp_util.c \
40	avdtp_sink.c \
41	avdtp_source.c \
42	avdtp_acceptor.c \
43	avdtp_initiator.c \
44	avrcp.c \
45	avrcp_controller.c \
46	avrcp_target.c \
47	hfp.c \
48	hfp_gsm_model.c \
49	hfp_ag.c \
50	hfp_hf.c \
51	hsp_hs.c \
52	hsp_ag.c \
53	hid_device.c \
54	pan.c \
55	sdp_util.c \
56	spp_server.c \
57	btstack_hid_parser.c \
58
59CFLAGS_COVERAGE = ${CFLAGS} -fprofile-arcs -ftest-coverage
60CFLAGS_ASAN     = ${CFLAGS} -fsanitize=address -DHAVE_ASSERT
61
62LDFLAGS += -lCppUTest -lCppUTestExt
63LDFLAGS_COVERAGE = ${LDFLAGS} -fprofile-arcs -ftest-coverage
64LDFLAGS_ASAN     = ${LDFLAGS} -fsanitize=address
65
66COMMON_OBJ_COVERAGE = $(addprefix build-coverage/,$(COMMON:.c=.o))
67COMMON_OBJ_ASAN     = $(addprefix build-asan/,    $(COMMON:.c=.o))
68
69
70all: build-coverage/sdp_record_builder build-asan/sdp_record_builder
71
72build-%:
73	mkdir -p $@
74
75build-coverage/%.o: %.c | build-coverage
76	${CC} -c $(CFLAGS_COVERAGE) $< -o $@
77
78build-coverage/%.o: %.cpp | build-coverage
79	${CXX} -c $(CFLAGS_COVERAGE) $< -o $@
80
81build-asan/%.o: %.c | build-asan
82	${CC} -c $(CFLAGS_ASAN) $< -o $@
83
84build-asan/%.o: %.cpp | build-asan
85	${CXX} -c $(CFLAGS_ASAN) $< -o $@
86
87build-coverage/sdp_record_builder: ${COMMON_OBJ_COVERAGE} build-coverage/sdp_record_builder.o | build-coverage
88	${CXX} $^ ${LDFLAGS_COVERAGE} -o $@
89
90build-asan/sdp_record_builder: ${COMMON_OBJ_ASAN} build-asan/sdp_record_builder.o | build-asan
91	${CXX} $^ ${LDFLAGS_ASAN} -o $@
92
93
94test: all
95	build-asan/sdp_record_builder
96
97coverage: all
98	rm -f build-coverage/*.gcda
99	build-coverage/sdp_record_builder
100
101clean:
102	rm -rf build-coverage build-asan
103
104