xref: /btstack/test/tlv_posix/Makefile (revision cd5f23a3250874824c01a2b3326a9522fea3f99f)
1CC=g++
2
3BTSTACK_ROOT = ../..
4CPPUTEST_HOME = ${BTSTACK_ROOT}/test/cpputest
5
6COMMON = \
7	btstack_tlv_posix.c \
8	btstack_util.c \
9	btstack_linked_list.c \
10	hci_dump.c \
11
12VPATH = \
13	${BTSTACK_ROOT}/src \
14	${BTSTACK_ROOT}/src/classic \
15	${BTSTACK_ROOT}/src/ble \
16	${BTSTACK_ROOT}/platform/posix \
17
18CFLAGS  = \
19    -DBTSTACK_TEST \
20    -g \
21    -Wall \
22    -Wnarrowing \
23    -I. \
24    -I.. \
25    -I${BTSTACK_ROOT}/src \
26    -I${BTSTACK_ROOT}/platform/posix \
27
28LDFLAGS += -lCppUTest -lCppUTestExt
29
30CFLAGS_COVERAGE = ${CFLAGS} -fprofile-arcs -ftest-coverage
31CFLAGS_ASAN     = ${CFLAGS} -fsanitize=address -DHAVE_ASSERT
32
33LDFLAGS += -lCppUTest -lCppUTestExt
34LDFLAGS_COVERAGE = ${LDFLAGS} -fprofile-arcs -ftest-coverage
35LDFLAGS_ASAN     = ${LDFLAGS} -fsanitize=address
36
37COMMON_OBJ_COVERAGE = $(addprefix build-coverage/,$(COMMON:.c=.o))
38COMMON_OBJ_ASAN     = $(addprefix build-asan/,    $(COMMON:.c=.o))
39
40all: build-coverage/tlv_test build-asan/tlv_test
41
42build-%:
43	mkdir -p $@
44
45build-coverage/%.o: %.c | build-coverage
46	${CC} -c $(CFLAGS_COVERAGE) $< -o $@
47
48build-asan/%.o: %.c | build-asan
49	${CC} -c $(CFLAGS_ASAN) $< -o $@
50
51
52build-coverage/tlv_test: ${COMMON_OBJ_COVERAGE} build-coverage/tlv_test.o | build-coverage
53	${CC} $^ ${LDFLAGS_COVERAGE} -o $@
54
55build-asan/tlv_test: ${COMMON_OBJ_ASAN} build-asan/tlv_test.o | build-asan
56	${CC} $^ ${LDFLAGS_ASAN} -o $@
57
58
59test: all
60	build-asan/tlv_test
61
62coverage: all
63	rm -f build-coverage/*.gcda
64	build-coverage/tlv_test
65
66clean:
67	rm -rf build-coverage build-asan
68