1CC = g++ 2 3# Requirements: cpputest.github.io 4 5BTSTACK_ROOT = ../.. 6 7CFLAGS = -DUNIT_TEST -g 8CPPFLAGS = -x c++ -Wall -Wno-unused 9CFLAGS += -I. -I.. -I${BTSTACK_ROOT}/src 10#CFLAGS += -I${BTSTACK_ROOT}/platform/posix 11CFLAGS += -I${BTSTACK_ROOT}/platform/embedded 12CFLAGS += -I${BTSTACK_ROOT}/3rd-party/mbedtls/include 13CFLAGS += -I${BTSTACK_ROOT}/3rd-party/micro-ecc 14CFLAGS += -I${BTSTACK_ROOT}/3rd-party/rijndael 15CFLAGS += -fprofile-arcs -ftest-coverage 16LDFLAGS += -lCppUTest -lCppUTestExt 17 18VPATH += ${BTSTACK_ROOT}/src 19VPATH += ${BTSTACK_ROOT}/src/ble 20VPATH += ${BTSTACK_ROOT}/platform/embedded 21# VPATH += ${BTSTACK_ROOT}/platform/posix 22VPATH += ${BTSTACK_ROOT}/3rd-party/micro-ecc 23VPATH += ${BTSTACK_ROOT}/3rd-party/rijndael 24 25COMMON = \ 26 btstack_crypto.c \ 27 btstack_linked_list.c \ 28 btstack_memory.c \ 29 btstack_memory_pool.c \ 30 btstack_run_loop.c \ 31 btstack_run_loop_embedded.c \ 32 hci_cmd.c \ 33 hci_dump.c \ 34 le_device_db_memory.c \ 35 mock.c \ 36 rijndael.c \ 37 sm.c \ 38 btstack_util.c \ 39 btstack_tlv.c \ 40 41COMMON_OBJ = $(addprefix build-coverage/,$(COMMON:.c=.o)) 42CORE_OBJ = $(addprefix build-coverage/,$(CORE:.c=.o)) 43 44all: build-coverage/security_manager 45 46build-coverage: 47 mkdir -p build-coverage 48 49build-coverage/%.o: %.c | build-coverage 50 ${CC} -c $(CFLAGS) ${CPPFLAGS} $< -o $@ 51 52build-coverage/security_manager: ${CORE_OBJ} ${COMMON_OBJ} build-coverage/security_manager.o | build-coverage 53 ${CC} ${CORE_OBJ} ${COMMON_OBJ} security_manager.c ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -o $@ 54 55test: all 56 build-coverage/security_manager 57 58coverage: all 59 build-coverage/security_manager 60 61clean: 62 rm -f *.o 63 rm -rf *.dSYM build-coverage 64 rm -f *.gcno *.gcda 65 66