xref: /btstack/test/btstack_link_key_db/Makefile (revision f0e9886bf1825249aaea7e15f4fe6fb8d065bffb)
1CC=g++
2
3# Requirements: cpputest.github.io
4
5BTSTACK_ROOT =  ../..
6CPPUTEST_HOME = ${BTSTACK_ROOT}/test/cpputest
7
8CFLAGS  = -DUNIT_TEST -x c++ -g -Wall -Wnarrowing -Wconversion-null
9CFLAGS += -I${BTSTACK_ROOT}/src
10CFLAGS += -I${BTSTACK_ROOT}/platform/posix
11CFLAGS += -I${BTSTACK_ROOT}/3rd-party/tinydir
12CFLAGS += -I.
13
14CFLAGS_COVERAGE = ${CFLAGS} -fprofile-arcs -ftest-coverage
15CFLAGS_ASAN     = ${CFLAGS} -fsanitize=address -DHAVE_ASSERT
16
17LDFLAGS += -lCppUTest -lCppUTestExt
18LDFLAGS_COVERAGE = ${LDFLAGS} -fprofile-arcs -ftest-coverage
19LDFLAGS_ASAN     = ${LDFLAGS} -fsanitize=address
20
21VPATH += ${BTSTACK_ROOT}/src/classic
22VPATH += ${BTSTACK_ROOT}/src
23VPATH += ${BTSTACK_ROOT}/platform/posix
24
25FS = \
26    btstack_util.c                   \
27    hci_dump.c                \
28	btstack_link_key_db_fs.c
29
30
31MEMORY = \
32	btstack_util.c               \
33	btstack_memory_pool.c	     \
34    btstack_memory.c		     \
35    hci_dump.c                   \
36    btstack_link_key_db_memory.c \
37    btstack_linked_list.c
38
39FS_OBJ_COVERAGE = $(addprefix build-coverage/,$(FS:.c=.o))
40FS_OBJ_ASAN     = $(addprefix build-asan/,    $(FS:.c=.o))
41
42MEMORY_OBJ_COVERAGE = $(addprefix build-coverage/,$(MEMORY:.c=.o))
43MEMORY_OBJ_ASAN     = $(addprefix build-asan/,    $(MEMORY:.c=.o))
44
45all:  build-coverage/btstack_link_key_db_memory_test build-coverage/btstack_link_key_db_fs_test build-asan/btstack_link_key_db_memory_test build-asan/btstack_link_key_db_fs_test
46
47build-%:
48	mkdir -p $@
49
50build-coverage/%.o: %.c | build-coverage
51	${CC} -c $(CFLAGS_COVERAGE) $< -o $@
52
53build-asan/%.o: %.c | build-asan
54	${CC} -c $(CFLAGS_ASAN) $< -o $@
55
56build-coverage/btstack_link_key_db_fs_test: ${FS_OBJ_COVERAGE} build-coverage/btstack_link_key_db_fs_test.o | build-coverage
57	${CC} $^ ${LDFLAGS_COVERAGE} -o $@
58
59build-coverage/btstack_link_key_db_memory_test: ${MEMORY_OBJ_COVERAGE} build-coverage/btstack_link_key_db_memory_test.o | build-coverage
60	${CC} $^ ${LDFLAGS_COVERAGE} -o $@
61
62build-asan/btstack_link_key_db_fs_test: ${FS_OBJ_ASAN} build-asan/btstack_link_key_db_fs_test.o | build-asan
63	${CC} $^ ${LDFLAGS_ASAN} -o $@
64
65build-asan/btstack_link_key_db_memory_test: ${MEMORY_OBJ_ASAN} build-asan/btstack_link_key_db_memory_test.o | build-asan
66	${CC} $^ ${LDFLAGS_ASAN} -o $@
67
68
69test: all
70	build-asan/btstack_link_key_db_memory_test
71	build-asan/btstack_link_key_db_fs_test
72
73coverage: all
74	rm -f build-coverage/*.gcda
75	build-coverage/btstack_link_key_db_memory_test
76	build-coverage/btstack_link_key_db_fs_test
77
78clean:
79	rm -rf build-coverage build-asan
80
81