xref: /btstack/test/btstack_memory/Makefile (revision 71d52576632fe7d9f24dc827de54333b4a282b5a)
19b8d06a5SMilanka RingwaldCC = g++
29b8d06a5SMilanka Ringwald
39b8d06a5SMilanka Ringwald# Requirements: cpputest.github.io
49b8d06a5SMilanka Ringwald
59b8d06a5SMilanka RingwaldBTSTACK_ROOT =  ../..
69b8d06a5SMilanka Ringwald
76d34f98eSMatthias RingwaldCFLAGS  = -g -Wall -I${BTSTACK_ROOT}/src
8cd56fb44SMatthias Ringwald
9cd56fb44SMatthias RingwaldCFLAGS_COVERAGE = ${CFLAGS} -fprofile-arcs -ftest-coverage
10*71d52576SMatthias RingwaldCFLAGS_ASAN     = ${CFLAGS} -fsanitize=address -DHAVE_ASSERT
11cd56fb44SMatthias Ringwald
129b8d06a5SMilanka RingwaldLDFLAGS += -lCppUTest -lCppUTestExt
13cd56fb44SMatthias RingwaldLDFLAGS_COVERAGE = ${LDFLAGS} -fprofile-arcs -ftest-coverage
14cd56fb44SMatthias RingwaldLDFLAGS_ASAN     = ${LDFLAGS} -fsanitize=address
159b8d06a5SMilanka Ringwald
169b8d06a5SMilanka RingwaldVPATH += ${BTSTACK_ROOT}/src
179b8d06a5SMilanka RingwaldVPATH += ${BTSTACK_ROOT}/src/classic
189b8d06a5SMilanka RingwaldVPATH += ${BTSTACK_ROOT}/platform/posix
199b8d06a5SMilanka Ringwald
209b8d06a5SMilanka RingwaldCOMMON = \
219b8d06a5SMilanka Ringwald	btstack_util.c		    \
229b8d06a5SMilanka Ringwald	hci_dump.c    			\
239b8d06a5SMilanka Ringwald	btstack_memory_pool.c 	\
249b8d06a5SMilanka Ringwald
25cd56fb44SMatthias RingwaldCOMMON_OBJ_COVERAGE = $(addprefix build-coverage/,$(COMMON:.c=.o))
26cd56fb44SMatthias RingwaldCOMMON_OBJ_ASAN     = $(addprefix build-asan/,    $(COMMON:.c=.o))
279b8d06a5SMilanka Ringwald
286d34f98eSMatthias Ringwaldall: build-coverage/btstack_memory_pool_test \
296d34f98eSMatthias Ringwald	 build-coverage-none/btstack_memory_test \
306d34f98eSMatthias Ringwald	 build-coverage-single/btstack_memory_test \
316d34f98eSMatthias Ringwald	 build-coverage-malloc/btstack_memory_test \
326d34f98eSMatthias Ringwald	 build-asan/btstack_memory_pool_test \
336d34f98eSMatthias Ringwald	 build-asan/btstack_memory_test
349b8d06a5SMilanka Ringwald
35cd56fb44SMatthias Ringwaldbuild-%:
36cd56fb44SMatthias Ringwald	mkdir -p $@
373d87570fSMatthias Ringwald
386d34f98eSMatthias Ringwald
39cd56fb44SMatthias Ringwaldbuild-coverage/%.o: %.c | build-coverage
406d34f98eSMatthias Ringwald	${CC} -c $(CFLAGS_COVERAGE) -I config_single $< -o $@
416d34f98eSMatthias Ringwald
426d34f98eSMatthias Ringwaldbuild-coverage-none/%.o: %.c | build-coverage-none
436d34f98eSMatthias Ringwald	${CC} -c $(CFLAGS_COVERAGE) -I config_none $< -o $@
446d34f98eSMatthias Ringwald
456d34f98eSMatthias Ringwaldbuild-coverage-single/%.o: %.c | build-coverage-single
466d34f98eSMatthias Ringwald	${CC} -c $(CFLAGS_COVERAGE) -I config_single $< -o $@
476d34f98eSMatthias Ringwald
486d34f98eSMatthias Ringwaldbuild-coverage-malloc/%.o: %.c | build-coverage-malloc
496d34f98eSMatthias Ringwald	${CC} -c $(CFLAGS_COVERAGE) -I config_malloc $< -o $@
509b8d06a5SMilanka Ringwald
51cd56fb44SMatthias Ringwaldbuild-asan/%.o: %.c | build-asan
526d34f98eSMatthias Ringwald	${CC} -c $(CFLAGS_ASAN) $< -I config_single -o $@
53cd56fb44SMatthias Ringwald
54cd56fb44SMatthias Ringwald
556d34f98eSMatthias Ringwaldbuild-coverage/btstack_memory_pool_test: ${COMMON_OBJ_COVERAGE} build-coverage/btstack_memory.o build-coverage/btstack_memory_pool_test.o | build-coverage
56cd56fb44SMatthias Ringwald	${CC} $^ ${LDFLAGS_COVERAGE} -o $@
57cd56fb44SMatthias Ringwald
586d34f98eSMatthias Ringwaldbuild-coverage-none/btstack_memory_test: ${COMMON_OBJ_COVERAGE} build-coverage-none/btstack_memory.o build-coverage-none/btstack_memory_test.o | build-coverage-none
59cd56fb44SMatthias Ringwald	${CC} $^ ${LDFLAGS_COVERAGE} -o $@
60cd56fb44SMatthias Ringwald
616d34f98eSMatthias Ringwaldbuild-coverage-single/btstack_memory_test: ${COMMON_OBJ_COVERAGE} build-coverage-single/btstack_memory.o build-coverage-single/btstack_memory_test.o | build-coverage-single
626d34f98eSMatthias Ringwald	${CC} $^ ${LDFLAGS_COVERAGE} -o $@
636d34f98eSMatthias Ringwald
646d34f98eSMatthias Ringwaldbuild-coverage-malloc/btstack_memory_test: ${COMMON_OBJ_COVERAGE} build-coverage-malloc/btstack_memory.o build-coverage-malloc/btstack_memory_test.o | build-coverage-malloc
656d34f98eSMatthias Ringwald	${CC} $^ ${LDFLAGS_COVERAGE} -o $@
666d34f98eSMatthias Ringwald
676d34f98eSMatthias Ringwaldbuild-asan/btstack_memory_pool_test: ${COMMON_OBJ_ASAN} build-asan/btstack_memory.o build-asan/btstack_memory_pool_test.o | build-asan
68cd56fb44SMatthias Ringwald	${CC} $^ ${LDFLAGS_ASAN} -o $@
69cd56fb44SMatthias Ringwald
706d34f98eSMatthias Ringwaldbuild-asan/btstack_memory_test: ${COMMON_OBJ_ASAN} build-asan/btstack_memory.o build-asan/btstack_memory_test.o | build-asan
71cd56fb44SMatthias Ringwald	${CC} $^ ${LDFLAGS_ASAN} -o $@
729b8d06a5SMilanka Ringwald
736d34f98eSMatthias Ringwald
749b8d06a5SMilanka Ringwaldtest: all
75cd56fb44SMatthias Ringwald	build-asan/btstack_memory_pool_test
76cd56fb44SMatthias Ringwald	build-asan/btstack_memory_test
773d87570fSMatthias Ringwald
783d87570fSMatthias Ringwaldcoverage: all
79cd56fb44SMatthias Ringwald	rm -f build-coverage/*.gcda
803d87570fSMatthias Ringwald	build-coverage/btstack_memory_pool_test
816d34f98eSMatthias Ringwald	build-coverage-none/btstack_memory_test
826d34f98eSMatthias Ringwald	build-coverage-single/btstack_memory_test
836d34f98eSMatthias Ringwald	build-coverage-malloc/btstack_memory_test
849b8d06a5SMilanka Ringwald
859b8d06a5SMilanka Ringwaldclean:
866d34f98eSMatthias Ringwald	rm -rf build-*
87