Kenji Arai / mbed-os_TYBLE16

Dependents:   TYBLE16_simple_data_logger TYBLE16_MP3_Air

Committer:
kenjiArai
Date:
Tue Dec 31 06:02:27 2019 +0000
Revision:
1:9db0e321a9f4
Parent:
0:5b88d5760320
updated based on mbed-os5.15.0

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kenjiArai 0:5b88d5760320 1 #
kenjiArai 0:5b88d5760320 2 # Makefile.test for combined COAP library unit tests
kenjiArai 0:5b88d5760320 3 #
kenjiArai 0:5b88d5760320 4
kenjiArai 0:5b88d5760320 5
kenjiArai 0:5b88d5760320 6 # List of subdirectories to build
kenjiArai 0:5b88d5760320 7 TEST_FOLDER := ./test/
kenjiArai 0:5b88d5760320 8 # List of unit test directories for libraries
kenjiArai 0:5b88d5760320 9 UNITTESTS := $(sort $(dir $(wildcard $(TEST_FOLDER)*/unittest/*)))
kenjiArai 0:5b88d5760320 10 TESTDIRS := $(UNITTESTS:%=build-%)
kenjiArai 0:5b88d5760320 11 CLEANTESTDIRS := $(UNITTESTS:%=clean-%)
kenjiArai 0:5b88d5760320 12 COVERAGEFILE := ./lcov/coverage.info
kenjiArai 0:5b88d5760320 13
kenjiArai 0:5b88d5760320 14 TEST_MODULES = ./test_modules
kenjiArai 0:5b88d5760320 15 TEST_MODULE_MBED_TRACE = $(TEST_MODULES)/mbed-trace
kenjiArai 0:5b88d5760320 16 TEST_MODULE_NANOSTACK = $(TEST_MODULES)/nanostack-libservice
kenjiArai 0:5b88d5760320 17 TEST_MODULE_RANDLIB = $(TEST_MODULES)/mbed-client-randlib
kenjiArai 0:5b88d5760320 18
kenjiArai 0:5b88d5760320 19 .PHONY: clone
kenjiArai 0:5b88d5760320 20 clone:
kenjiArai 0:5b88d5760320 21 if [ ! -d $(TEST_MODULES) ]; \
kenjiArai 0:5b88d5760320 22 then mkdir $(TEST_MODULES); \
kenjiArai 0:5b88d5760320 23 fi;
kenjiArai 0:5b88d5760320 24
kenjiArai 0:5b88d5760320 25 if [ ! -d $(TEST_MODULE_MBED_TRACE) ]; \
kenjiArai 0:5b88d5760320 26 then git clone --depth 1 git@github.com:ARMmbed/mbed-trace.git $(TEST_MODULE_MBED_TRACE); \
kenjiArai 0:5b88d5760320 27 fi;
kenjiArai 0:5b88d5760320 28
kenjiArai 0:5b88d5760320 29 if [ ! -d $(TEST_MODULE_NANOSTACK) ]; \
kenjiArai 0:5b88d5760320 30 then git clone --depth 1 git@github.com:ARMmbed/nanostack-libservice.git $(TEST_MODULE_NANOSTACK); \
kenjiArai 0:5b88d5760320 31 fi;
kenjiArai 0:5b88d5760320 32
kenjiArai 0:5b88d5760320 33 if [ ! -d $(TEST_MODULE_RANDLIB) ]; \
kenjiArai 0:5b88d5760320 34 then git clone --depth 1 git@github.com:ARMmbed/mbed-client-randlib.git $(TEST_MODULE_RANDLIB); \
kenjiArai 0:5b88d5760320 35 fi;
kenjiArai 0:5b88d5760320 36 .PHONY: test
kenjiArai 0:5b88d5760320 37 test: $(TESTDIRS)
kenjiArai 0:5b88d5760320 38 @rm -rf ./lcov
kenjiArai 0:5b88d5760320 39 @rm -rf ./coverage
kenjiArai 0:5b88d5760320 40 @mkdir -p lcov
kenjiArai 0:5b88d5760320 41 @mkdir -p lcov/results
kenjiArai 0:5b88d5760320 42 @mkdir coverage
kenjiArai 0:5b88d5760320 43 @find ./test -name '*.xml' | xargs cp -t ./lcov/results/
kenjiArai 0:5b88d5760320 44 @rm -f lcov/index.xml
kenjiArai 0:5b88d5760320 45 @./xsl_script.sh
kenjiArai 0:5b88d5760320 46 @cp junit_xsl.xslt lcov/.
kenjiArai 0:5b88d5760320 47 @xsltproc -o lcov/testresults.html lcov/junit_xsl.xslt lcov/index.xml
kenjiArai 0:5b88d5760320 48 @rm -f lcov/junit_xsl.xslt
kenjiArai 0:5b88d5760320 49 @rm -f lcov/index.xml
kenjiArai 0:5b88d5760320 50 @find ./ -name '*.gcno' | xargs cp --backup=numbered -t ./coverage/
kenjiArai 0:5b88d5760320 51 @find ./ -name '*.gcda' | xargs cp --backup=numbered -t ./coverage/
kenjiArai 1:9db0e321a9f4 52 @gcovr --object-directory ./coverage --exclude-unreachable-branches -e '.*/builds/.*' -e '.*/CppUTest/.*' -e '.*/mbed-client-libservice/.*' -e '.*/test/.*' -e '.*/stubs/.*' -e '.*/mbed-coap/.*' -x -o ./lcov/gcovr.xml
kenjiArai 0:5b88d5760320 53 @lcov -d test/. -c -o $(COVERAGEFILE)
kenjiArai 0:5b88d5760320 54 @lcov -q -r $(COVERAGEFILE) "/usr*" -o $(COVERAGEFILE)
kenjiArai 0:5b88d5760320 55 @lcov -q -r $(COVERAGEFILE) "/test*" -o $(COVERAGEFILE)
kenjiArai 0:5b88d5760320 56 @lcov -q -r $(COVERAGEFILE) "/mbed-client-libservice*" -o $(COVERAGEFILE)
kenjiArai 0:5b88d5760320 57 @genhtml -q $(COVERAGEFILE) --show-details --output-directory lcov/html
kenjiArai 0:5b88d5760320 58 @echo mbed-coap module unit tests built
kenjiArai 0:5b88d5760320 59
kenjiArai 0:5b88d5760320 60 $(TESTDIRS):
kenjiArai 0:5b88d5760320 61 @make -C $(@:build-%=%)
kenjiArai 0:5b88d5760320 62
kenjiArai 0:5b88d5760320 63 $(CLEANDIRS):
kenjiArai 0:5b88d5760320 64 @make -C $(@:clean-%=%) clean
kenjiArai 0:5b88d5760320 65
kenjiArai 0:5b88d5760320 66 $(CLEANTESTDIRS):
kenjiArai 0:5b88d5760320 67 @make -C $(@:clean-%=%) clean
kenjiArai 0:5b88d5760320 68
kenjiArai 0:5b88d5760320 69 # Extend default clean rule
kenjiArai 0:5b88d5760320 70 clean: clean-extra
kenjiArai 0:5b88d5760320 71
kenjiArai 0:5b88d5760320 72 clean-extra: $(CLEANDIRS) \
kenjiArai 0:5b88d5760320 73 $(CLEANTESTDIRS)