2019-09-23 11:12:35 +00:00
|
|
|
CC = g++
|
|
|
|
|
|
|
|
# Requirements: cpputest.github.io
|
|
|
|
|
|
|
|
BTSTACK_ROOT = ../..
|
|
|
|
|
2021-06-12 10:03:02 +00:00
|
|
|
CFLAGS = -DUNIT_TEST -x c++ -g -Wall -Wnarrowing -Wconversion-null
|
|
|
|
CFLAGS += -I${BTSTACK_ROOT}/src
|
|
|
|
CFLAGS += -I${BTSTACK_ROOT}/platform/embedded
|
|
|
|
CFLAGS += -I.
|
2019-09-23 11:12:35 +00:00
|
|
|
|
2019-09-23 11:52:33 +00:00
|
|
|
CFLAGS += -DHAVE_HAL_AUDIO
|
|
|
|
|
2020-12-01 21:13:09 +00:00
|
|
|
CFLAGS_COVERAGE = ${CFLAGS} -fprofile-arcs -ftest-coverage
|
2021-01-29 20:47:15 +00:00
|
|
|
CFLAGS_ASAN = ${CFLAGS} -fsanitize=address -DHAVE_ASSERT
|
2020-12-01 21:13:09 +00:00
|
|
|
|
|
|
|
LDFLAGS += -lCppUTest -lCppUTestExt
|
|
|
|
LDFLAGS_COVERAGE = ${LDFLAGS} -fprofile-arcs -ftest-coverage
|
|
|
|
LDFLAGS_ASAN = ${LDFLAGS} -fsanitize=address
|
2019-09-23 11:12:35 +00:00
|
|
|
|
|
|
|
VPATH += ${BTSTACK_ROOT}/src
|
|
|
|
VPATH += ${BTSTACK_ROOT}/src/ble
|
|
|
|
VPATH += ${BTSTACK_ROOT}/platform/embedded
|
2019-09-23 11:52:33 +00:00
|
|
|
VPATH += ${BTSTACK_ROOT}/platform/freertos
|
2019-09-23 11:12:35 +00:00
|
|
|
|
|
|
|
COMMON = \
|
2021-01-28 18:21:15 +00:00
|
|
|
btstack_linked_list.c \
|
2020-10-30 13:22:37 +00:00
|
|
|
btstack_memory.c \
|
2019-09-23 14:05:08 +00:00
|
|
|
btstack_run_loop.c \
|
|
|
|
btstack_util.c \
|
2019-09-23 11:12:35 +00:00
|
|
|
hci_dump.c \
|
2021-06-16 10:59:32 +00:00
|
|
|
l2cap_signaling.c \
|
2021-01-28 18:21:15 +00:00
|
|
|
|
|
|
|
# not used yet
|
|
|
|
# btstack_em9304_spi_embedded.c \
|
|
|
|
# btstack_stdin_embedded.c \
|
|
|
|
# btstack_tlv_flash_bank.c \
|
|
|
|
# btstack_uart_block_embedded.c \
|
|
|
|
# hal_flash_bank_memory.c \
|
|
|
|
# btstack_audio.c \
|
|
|
|
# btstack_audio_embedded.c \
|
|
|
|
# btstack_resample.c \
|
|
|
|
# btstack_ring_buffer.c \
|
|
|
|
# btstack_slip.c \
|
|
|
|
# hci_transport_em9304_spi.c \
|
|
|
|
# hci_transport_h4.c \
|
|
|
|
# hci_transport_h5.c \
|
|
|
|
|
2020-12-01 21:13:09 +00:00
|
|
|
FREERTOS = \
|
|
|
|
btstack_run_loop_freertos.c \
|
2021-01-28 18:21:15 +00:00
|
|
|
# btstack_uart_block_freertos.c \
|
2020-12-01 21:13:09 +00:00
|
|
|
|
|
|
|
COMMON_OBJ_COVERAGE = $(addprefix build-coverage/,$(COMMON:.c=.o))
|
|
|
|
COMMON_OBJ_ASAN = $(addprefix build-asan/, $(COMMON:.c=.o))
|
|
|
|
|
|
|
|
FREERTOS_OBJ_COVERAGE = $(addprefix build-coverage/,$(FREERTOS:.c=.o))
|
|
|
|
FREERTOS_OBJ_ASAN = $(addprefix build-asan/, $(FREERTOS:.c=.o))
|
|
|
|
|
2021-06-17 08:21:45 +00:00
|
|
|
all: build-coverage/embedded_test build-asan/embedded_test \
|
|
|
|
build-coverage/run_loop_base_test build-asan/run_loop_base_test \
|
|
|
|
build-coverage/btstack_util_test build-asan/btstack_util_test \
|
|
|
|
build-coverage/l2cap_le_signaling_test build-asan/l2cap_le_signaling_test \
|
|
|
|
build-coverage/hci_cmd_test build-asan/hci_cmd_test \
|
|
|
|
build-coverage/freertos_test build-asan/freertos_test \
|
2020-12-01 21:13:09 +00:00
|
|
|
|
|
|
|
build-%:
|
|
|
|
mkdir -p $@
|
2019-09-23 11:12:35 +00:00
|
|
|
|
2020-12-01 21:13:09 +00:00
|
|
|
build-coverage/%.o: %.c | build-coverage
|
|
|
|
${CC} -c $(CFLAGS_COVERAGE) $< -o $@
|
2019-09-23 11:52:33 +00:00
|
|
|
|
2020-12-01 21:13:09 +00:00
|
|
|
build-asan/%.o: %.c | build-asan
|
|
|
|
${CC} -c $(CFLAGS_ASAN) $< -o $@
|
2019-09-23 11:12:35 +00:00
|
|
|
|
2020-11-30 20:35:42 +00:00
|
|
|
|
2021-06-17 08:21:45 +00:00
|
|
|
build-coverage/embedded_test: ${COMMON_OBJ_COVERAGE} build-coverage/btstack_run_loop_embedded.o build-coverage/embedded_test.o | build-coverage
|
2020-12-01 21:13:09 +00:00
|
|
|
${CC} $^ ${LDFLAGS_COVERAGE} -o $@
|
2019-09-23 11:12:35 +00:00
|
|
|
|
2021-06-17 08:21:45 +00:00
|
|
|
build-asan/embedded_test: ${COMMON_OBJ_ASAN} build-asan/embedded_test.o build-asan/btstack_run_loop_embedded.o | build-asan
|
|
|
|
${CC} $^ ${LDFLAGS_ASAN} -o $@
|
|
|
|
|
|
|
|
|
2020-12-10 14:13:13 +00:00
|
|
|
build-coverage/freertos_test: ${COMMON_OBJ_COVERAGE} ${FREERTOS_OBJS} build-coverage/freertos_test.o | build-coverage
|
2020-12-01 21:13:09 +00:00
|
|
|
${CC} $^ ${LDFLAGS_COVERAGE} -o $@
|
|
|
|
|
2021-06-17 08:21:45 +00:00
|
|
|
build-asan/freertos_test: ${COMMON_OBJ_ASAN} ${FREERTOS_OBJS} build-asan/freertos_test.o | build-asan
|
2020-12-01 21:13:09 +00:00
|
|
|
${CC} $^ ${LDFLAGS_ASAN} -o $@
|
|
|
|
|
2021-06-17 08:21:45 +00:00
|
|
|
|
|
|
|
build-coverage/run_loop_base_test: ${COMMON_OBJ_COVERAGE} build-coverage/run_loop_base_test.o | build-coverage
|
|
|
|
${CC} $^ ${LDFLAGS_COVERAGE} -o $@
|
|
|
|
|
|
|
|
build-asan/run_loop_base_test: ${COMMON_OBJ_ASAN} build-asan/run_loop_base_test.o | build-asan
|
|
|
|
${CC} $^ ${LDFLAGS_ASAN} -o $@
|
|
|
|
|
|
|
|
|
|
|
|
build-coverage/btstack_util_test: ${COMMON_OBJ_COVERAGE} build-coverage/btstack_util_test.o | build-coverage
|
|
|
|
${CC} $^ ${LDFLAGS_COVERAGE} -o $@
|
|
|
|
|
|
|
|
build-asan/btstack_util_test: ${COMMON_OBJ_ASAN} build-asan/btstack_util_test.o | build-asan
|
|
|
|
${CC} $^ ${LDFLAGS_ASAN} -o $@
|
|
|
|
|
|
|
|
|
|
|
|
build-coverage/l2cap_le_signaling_test: ${COMMON_OBJ_COVERAGE} build-coverage/l2cap_le_signaling_test.o | build-coverage
|
|
|
|
${CC} $^ ${LDFLAGS_COVERAGE} -o $@
|
|
|
|
|
|
|
|
build-asan/l2cap_le_signaling_test: ${COMMON_OBJ_ASAN} build-asan/l2cap_le_signaling_test.o | build-asan
|
2020-12-01 21:13:09 +00:00
|
|
|
${CC} $^ ${LDFLAGS_ASAN} -o $@
|
2019-09-23 11:52:33 +00:00
|
|
|
|
2021-06-17 08:21:45 +00:00
|
|
|
|
|
|
|
build-coverage/hci_cmd_test: ${COMMON_OBJ_COVERAGE} build-coverage/hci_cmd_test.o | build-coverage
|
|
|
|
${CC} $^ ${LDFLAGS_COVERAGE} -o $@
|
|
|
|
|
|
|
|
build-asan/hci_cmd_test: ${COMMON_OBJ_ASAN} build-asan/hci_cmd_test.o | build-asan
|
|
|
|
${CC} $^ ${LDFLAGS_ASAN} -o $@
|
|
|
|
|
|
|
|
|
2019-09-23 11:12:35 +00:00
|
|
|
test: all
|
2020-12-01 21:13:09 +00:00
|
|
|
build-asan/embedded_test
|
|
|
|
build-asan/freertos_test
|
2021-06-17 08:21:45 +00:00
|
|
|
build-asan/run_loop_base_test
|
|
|
|
build-asan/btstack_util_test
|
|
|
|
build-asan/l2cap_le_signaling_test
|
|
|
|
build-asan/hci_cmd_test
|
2020-11-30 20:35:42 +00:00
|
|
|
|
|
|
|
coverage: all
|
2020-12-01 21:13:09 +00:00
|
|
|
rm -f build-coverage/*.gcda
|
2020-11-30 20:35:42 +00:00
|
|
|
build-coverage/embedded_test
|
|
|
|
build-coverage/freertos_test
|
2021-06-17 08:21:45 +00:00
|
|
|
build-coverage/run_loop_base_test
|
|
|
|
build-coverage/btstack_util_test
|
|
|
|
build-coverage/l2cap_le_signaling_test
|
|
|
|
build-coverage/hci_cmd_test
|
2019-09-23 11:12:35 +00:00
|
|
|
|
|
|
|
clean:
|
2021-06-17 08:21:45 +00:00
|
|
|
rm -rf build-coverage build-asan *.dSYM
|