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