xref: /btstack/test/hfp/Makefile (revision 98e87e7776ef9a7fe55135aea8cddc761fe3a7a5)
135ffcaaeSMilanka Ringwald# Makefile for libusb based PTS tests
21d3bd1e5SMatthias Ringwald
335ffcaaeSMilanka RingwaldBTSTACK_ROOT = ../..
43edc84c5SMatthias RingwaldPOSIX_ROOT= ${BTSTACK_ROOT}/platform/posix
5*98e87e77SMatthias Ringwald
6*98e87e77SMatthias Ringwald# CppuTest from pkg-config
7*98e87e77SMatthias RingwaldCFLAGS  += ${shell pkg-config --cflags CppuTest}
8*98e87e77SMatthias RingwaldLDFLAGS += ${shell pkg-config --libs   CppuTest}
935ffcaaeSMilanka Ringwald
10bcf00d8fSMatthias Ringwaldinclude ${BTSTACK_ROOT}/example/Makefile.inc
110c3fa310SMilanka Ringwald
1235ffcaaeSMilanka RingwaldCOMMON = \
1349232d5cSMatthias Ringwald	ad_parser.c 				 \
14746ccb7eSMatthias Ringwald	sdp_server.c			     \
15efda0b48SMatthias Ringwald	sdp_client_rfcomm.c		     \
16c5b64319SMatthias Ringwald    btstack_link_key_db_memory.c \
174fd23d47SMatthias Ringwald    btstack_linked_list.c	     \
1835ffcaaeSMilanka Ringwald    btstack_memory.c             \
19f032a441SMatthias Ringwald    btstack_memory_pool.c        \
20f032a441SMatthias Ringwald    btstack_run_loop.c		     \
21f032a441SMatthias Ringwald    btstack_run_loop_posix.c     \
22f032a441SMatthias Ringwald    btstack_util.c			     \
2335ffcaaeSMilanka Ringwald    hci.c			             \
2456042629SMatthias Ringwald    hci_cmd.c		             \
2535ffcaaeSMilanka Ringwald    hci_dump.c		             \
2635ffcaaeSMilanka Ringwald    l2cap.c			             \
2735ffcaaeSMilanka Ringwald    l2cap_signaling.c 			 \
28a484130cSMatthias Ringwald    rfcomm.c			         \
2935ffcaaeSMilanka Ringwald    sdp_client.c		         \
30a484130cSMatthias Ringwald    sdp_util.c	                 \
3135ffcaaeSMilanka Ringwald
3235ffcaaeSMilanka Ringwald
3312381011SMilanka RingwaldMOCK = \
3412381011SMilanka Ringwald	mock.c 						\
35dc5611fdSMilanka Ringwald	test_sequences.c            \
36c5b64319SMatthias Ringwald    btstack_link_key_db_memory.c \
374fd23d47SMatthias Ringwald    btstack_linked_list.c	    \
38a484130cSMatthias Ringwald    btstack_memory.c            \
39c5b64319SMatthias Ringwald    btstack_memory_pool.c       \
40c5b64319SMatthias Ringwald    btstack_util.c			    \
4156042629SMatthias Ringwald    hci_cmd.c					\
42a484130cSMatthias Ringwald    hci_dump.c     				\
43a484130cSMatthias Ringwald    sdp_util.c	                \
4412381011SMilanka Ringwald
45*98e87e77SMatthias RingwaldCFLAGS  += -DUNIT_TEST -g -Wall -Wnarrowing -Wconversion-null
46e0ff5d41SMatthias RingwaldCFLAGS  += -I. -I../
47e0ff5d41SMatthias RingwaldCFLAGS  += -I${BTSTACK_ROOT}/src
48e0ff5d41SMatthias RingwaldCFLAGS  += -I${BTSTACK_ROOT}/src/classic
49e0ff5d41SMatthias RingwaldCFLAGS  += -I${BTSTACK_ROOT}/platform/posix
50cd56fb44SMatthias Ringwald# CFLAGS  += -D OCTAVE_OUTPUT
51cd56fb44SMatthias Ringwald
52cd56fb44SMatthias RingwaldCFLAGS_COVERAGE = ${CFLAGS} -fprofile-arcs -ftest-coverage
5371d52576SMatthias RingwaldCFLAGS_ASAN     = ${CFLAGS} -fsanitize=address -DHAVE_ASSERT
54cd56fb44SMatthias Ringwald
55cd56fb44SMatthias RingwaldLDFLAGS += -lCppUTest -lCppUTestExt
56cd56fb44SMatthias RingwaldLDFLAGS_COVERAGE = ${LDFLAGS} -fprofile-arcs -ftest-coverage
57cd56fb44SMatthias RingwaldLDFLAGS_ASAN     = ${LDFLAGS} -fsanitize=address
58cd56fb44SMatthias Ringwald
59cd56fb44SMatthias RingwaldCOMMON_OBJ_COVERAGE = $(addprefix build-coverage/,$(COMMON:.c=.o))
60cd56fb44SMatthias RingwaldCOMMON_OBJ_ASAN     = $(addprefix build-asan/,    $(COMMON:.c=.o))
61cd56fb44SMatthias RingwaldMOCK_OBJ_COVERAGE   = $(addprefix build-coverage/,$(MOCK:.c=.o))
62cd56fb44SMatthias RingwaldMOCK_OBJ_ASAN       = $(addprefix build-asan/,    $(MOCK:.c=.o))
63cd56fb44SMatthias Ringwald
6435ffcaaeSMilanka Ringwald
6535ffcaaeSMilanka Ringwald# CC = gcc-fsf-4.9
6635ffcaaeSMilanka RingwaldVPATH += ${BTSTACK_ROOT}/src
673edc84c5SMatthias RingwaldVPATH += ${BTSTACK_ROOT}/src/classic
68dd9e275cSMatthias RingwaldVPATH += ${BTSTACK_ROOT}/platform/posix
6935ffcaaeSMilanka Ringwald
703d87570fSMatthias RingwaldEXAMPLES = hfp_at_parser_test hfp_ag_client_test hfp_hf_client_test cvsd_plc_test hfp_link_settings_test
7135ffcaaeSMilanka Ringwald
72cd56fb44SMatthias Ringwaldall:  $(addprefix build-coverage/,${EXAMPLES}) $(addprefix build-asan/,${EXAMPLES}) build-asan/pklg_cvsd_test
733d87570fSMatthias Ringwald
74cd56fb44SMatthias Ringwaldbuild-%:
75cd56fb44SMatthias Ringwald	mkdir -p $@
7635ffcaaeSMilanka Ringwald
7735ffcaaeSMilanka Ringwald
783d87570fSMatthias Ringwaldbuild-coverage/%.o: %.c | build-coverage
79cd56fb44SMatthias Ringwald	${CC} -c $(CFLAGS_COVERAGE) $< -o $@
803d87570fSMatthias Ringwald
811d3bd1e5SMatthias Ringwaldbuild-coverage/%.o: %.cpp | build-coverage
821d3bd1e5SMatthias Ringwald	${CXX} -c $(CFLAGS_COVERAGE) $< -o $@
831d3bd1e5SMatthias Ringwald
84cd56fb44SMatthias Ringwaldbuild-asan/%.o: %.c | build-asan
85cd56fb44SMatthias Ringwald	${CC} -c $(CFLAGS_ASAN) $< -o $@
8694818a3bSMatthias Ringwald
871d3bd1e5SMatthias Ringwaldbuild-asan/%.o: %.cpp | build-asan
881d3bd1e5SMatthias Ringwald	${CXX} -c $(CFLAGS_ASAN) $< -o $@
891d3bd1e5SMatthias Ringwald
90cd56fb44SMatthias Ringwaldbuild-coverage/hfp_at_parser_test: ${COMMON_OBJ_COVERAGE} build-coverage/hfp_gsm_model.o build-coverage/hfp_ag.o build-coverage/hfp.o build-coverage/hfp_at_parser_test.o | build-coverage
911d3bd1e5SMatthias Ringwald	${CXX} $^ ${LDFLAGS_COVERAGE} -o $@
9212381011SMilanka Ringwald
93cd56fb44SMatthias Ringwaldbuild-coverage/hfp_hf_client_test: ${MOCK_OBJ_COVERAGE} build-coverage/hfp_hf.o build-coverage/hfp.o build-coverage/hfp_hf_client_test.o | build-coverage
941d3bd1e5SMatthias Ringwald	${CXX} $^ ${LDFLAGS_COVERAGE} -o $@
95dc5611fdSMilanka Ringwald
96cd56fb44SMatthias Ringwaldbuild-coverage/hfp_ag_client_test: ${MOCK_OBJ_COVERAGE} build-coverage/hfp_gsm_model.o build-coverage/hfp_ag.o build-coverage/hfp.o build-coverage/hfp_ag_client_test.o | build-coverage
971d3bd1e5SMatthias Ringwald	${CXX} $^ ${LDFLAGS_COVERAGE} -o $@
98c774f3a0SMilanka Ringwald
99cd56fb44SMatthias Ringwaldbuild-coverage/cvsd_plc_test: ${COMMON_OBJ_COVERAGE} build-coverage/btstack_cvsd_plc.o build-coverage/wav_util.o build-coverage/cvsd_plc_test.o | build-coverage
1001d3bd1e5SMatthias Ringwald	${CXX} $^ ${LDFLAGS_COVERAGE} -o $@
1013d87570fSMatthias Ringwald
102cd56fb44SMatthias Ringwaldbuild-coverage/hfp_link_settings_test: ${MOCK_OBJ_COVERAGE} build-coverage/hfp_hf.o build-coverage/hfp.o build-coverage/hfp_link_settings_test.o | build-coverage
1031d3bd1e5SMatthias Ringwald	${CXX} $^ ${LDFLAGS_COVERAGE} -o $@
104cd56fb44SMatthias Ringwald
105cd56fb44SMatthias Ringwald
106cd56fb44SMatthias Ringwaldbuild-asan/hfp_at_parser_test: ${COMMON_OBJ_ASAN} build-asan/hfp_gsm_model.o build-asan/hfp_ag.o build-asan/hfp.o build-asan/hfp_at_parser_test.o | build-asan
1071d3bd1e5SMatthias Ringwald	${CXX} $^ ${LDFLAGS_ASAN} -o $@
108cd56fb44SMatthias Ringwald
109cd56fb44SMatthias Ringwaldbuild-asan/hfp_hf_client_test: ${MOCK_OBJ_ASAN} build-asan/hfp_hf.o build-asan/hfp.o build-asan/hfp_hf_client_test.o | build-asan
1101d3bd1e5SMatthias Ringwald	${CXX} $^ ${LDFLAGS_ASAN} -o $@
111cd56fb44SMatthias Ringwald
112cd56fb44SMatthias Ringwaldbuild-asan/hfp_ag_client_test: ${MOCK_OBJ_ASAN} build-asan/hfp_gsm_model.o build-asan/hfp_ag.o build-asan/hfp.o build-asan/hfp_ag_client_test.o | build-asan
1131d3bd1e5SMatthias Ringwald	${CXX} $^ ${LDFLAGS_ASAN} -o $@
114cd56fb44SMatthias Ringwald
115cd56fb44SMatthias Ringwaldbuild-asan/cvsd_plc_test: ${COMMON_OBJ_ASAN} build-asan/btstack_cvsd_plc.o build-asan/wav_util.o build-asan/cvsd_plc_test.o | build-asan
1161d3bd1e5SMatthias Ringwald	${CXX} $^ ${LDFLAGS_ASAN} -o $@
117cd56fb44SMatthias Ringwald
118cd56fb44SMatthias Ringwaldbuild-asan/hfp_link_settings_test: ${MOCK_OBJ_ASAN} build-asan/hfp_hf.o build-asan/hfp.o build-asan/hfp_link_settings_test.o | build-asan
1191d3bd1e5SMatthias Ringwald	${CXX} $^ ${LDFLAGS_ASAN} -o $@
120cd56fb44SMatthias Ringwald
121cd56fb44SMatthias Ringwaldbuild-asan/pklg_cvsd_test: build-asan/hci_dump.o build-asan/btstack_util.o build-asan/btstack_cvsd_plc.o build-asan/wav_util.o build-asan/pklg_cvsd_test.o | build-asan
1221d3bd1e5SMatthias Ringwald	${CXX} $^ ${LDFLAGS_ASAN} -o $@
123e2cf2490SMatthias Ringwald
12494818a3bSMatthias Ringwaldtest: all
1256f91db60SMilanka Ringwald	mkdir -p results
126cd56fb44SMatthias Ringwald	build-asan/hfp_at_parser_test
127cd56fb44SMatthias Ringwald	build-asan/hfp_ag_client_test
128cd56fb44SMatthias Ringwald	build-asan/hfp_hf_client_test
129cd56fb44SMatthias Ringwald	build-asan/cvsd_plc_test
130cd56fb44SMatthias Ringwald	build-asan/hfp_link_settings_test
131e2cf2490SMatthias Ringwald
1323d87570fSMatthias Ringwaldcoverage: all
1333d87570fSMatthias Ringwald	mkdir -p results
1343d87570fSMatthias Ringwald	build-coverage/hfp_at_parser_test
1353d87570fSMatthias Ringwald	build-coverage/hfp_ag_client_test
1363d87570fSMatthias Ringwald	build-coverage/hfp_hf_client_test
1373d87570fSMatthias Ringwald	build-coverage/cvsd_plc_test
1383d87570fSMatthias Ringwald	build-coverage/hfp_link_settings_test
1393d87570fSMatthias Ringwald
140cd56fb44SMatthias Ringwaldpklg-test: build-asan/pklg_cvsd_test
141cd56fb44SMatthias Ringwald	build-asan/pklg_cvsd_test pklg/test1
142cd56fb44SMatthias Ringwald	build-asan/pklg_cvsd_test pklg/test2
143cd56fb44SMatthias Ringwald	build-asan/pklg_cvsd_test pklg/test3
144cd56fb44SMatthias Ringwald	build-asan/pklg_cvsd_test pklg/test4
145cd56fb44SMatthias Ringwald	build-asan/pklg_cvsd_test pklg/test5
146cd56fb44SMatthias Ringwald
147cd56fb44SMatthias Ringwaldclean:
148cd56fb44SMatthias Ringwald	rm -rf build-coverage build-asan
149cd56fb44SMatthias Ringwald	rm -rf *.wav results/* pklg/*.wav
150