xref: /btstack/test/obex/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../
11
12LDFLAGS += -lCppUTest -lCppUTestExt
13
14VPATH += ${BTSTACK_ROOT}/src/ble
15VPATH += ${BTSTACK_ROOT}/src
16VPATH += ${BTSTACK_ROOT}/src/classic
17VPATH += ${BTSTACK_ROOT}/platform/posix
18
19COMMON = \
20    btstack_util.c \
21    hci_dump.c \
22    obex_message_builder.c \
23
24CFLAGS_COVERAGE = ${CFLAGS} -fprofile-arcs -ftest-coverage
25CFLAGS_ASAN     = ${CFLAGS} -fsanitize=address -DHAVE_ASSERT
26
27LDFLAGS += -lCppUTest -lCppUTestExt
28LDFLAGS_COVERAGE = ${LDFLAGS} -fprofile-arcs -ftest-coverage
29LDFLAGS_ASAN     = ${LDFLAGS} -fsanitize=address
30
31COMMON_OBJ_COVERAGE = $(addprefix build-coverage/,$(COMMON:.c=.o))
32COMMON_OBJ_ASAN     = $(addprefix build-asan/,    $(COMMON:.c=.o))
33
34all: build-coverage/obex_message_builder_test build-asan/obex_message_builder_test
35
36build-%:
37	mkdir -p $@
38
39build-coverage/%.o: %.c | build-coverage
40	${CC} -c $(CFLAGS_COVERAGE) $< -o $@
41
42build-asan/%.o: %.c | build-asan
43	${CC} -c $(CFLAGS_ASAN) $< -o $@
44
45
46build-coverage/obex_message_builder_test: ${COMMON_OBJ_COVERAGE} build-coverage/obex_message_builder_test.o | build-coverage
47	${CC} $^ ${LDFLAGS_COVERAGE} -o $@
48
49build-asan/obex_message_builder_test: ${COMMON_OBJ_ASAN} build-asan/obex_message_builder_test.o | build-asan
50	${CC} $^ ${LDFLAGS_ASAN} -o $@
51
52test: all
53	build-asan/obex_message_builder_test
54
55coverage: all
56	rm -f build-coverage/*.gcda
57	build-coverage/obex_message_builder_test
58
59clean:
60	rm -rf build-coverage build-asan
61
62