ON Semiconductor / mbed-os

Dependents:   mbed-TFT-example-NCS36510 mbed-Accelerometer-example-NCS36510 mbed-Accelerometer-example-NCS36510

Committer:
group-onsemi
Date:
Wed Jan 25 20:34:15 2017 +0000
Revision:
0:098463de4c5d
Initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
group-onsemi 0:098463de4c5d 1 #
group-onsemi 0:098463de4c5d 2 # Makefile.test for combined NSDL+COAP library unit tests
group-onsemi 0:098463de4c5d 3 #
group-onsemi 0:098463de4c5d 4
group-onsemi 0:098463de4c5d 5
group-onsemi 0:098463de4c5d 6 # List of subdirectories to build
group-onsemi 0:098463de4c5d 7 TEST_FOLDER := ./test/
group-onsemi 0:098463de4c5d 8 # List of unit test directories for libraries
group-onsemi 0:098463de4c5d 9 UNITTESTS := $(sort $(dir $(wildcard $(TEST_FOLDER)*/unittest/*)))
group-onsemi 0:098463de4c5d 10 TESTDIRS := $(UNITTESTS:%=build-%)
group-onsemi 0:098463de4c5d 11 CLEANTESTDIRS := $(UNITTESTS:%=clean-%)
group-onsemi 0:098463de4c5d 12 COVERAGEFILE := ./lcov/coverage.info
group-onsemi 0:098463de4c5d 13
group-onsemi 0:098463de4c5d 14 .PHONY: test
group-onsemi 0:098463de4c5d 15 test: $(TESTDIRS)
group-onsemi 0:098463de4c5d 16 @rm -rf ./lcov
group-onsemi 0:098463de4c5d 17 @rm -rf ./coverage
group-onsemi 0:098463de4c5d 18 @mkdir -p lcov
group-onsemi 0:098463de4c5d 19 @mkdir -p lcov/results
group-onsemi 0:098463de4c5d 20 @mkdir coverage
group-onsemi 0:098463de4c5d 21 @find ./test -name '*.xml' | xargs cp -t ./lcov/results/
group-onsemi 0:098463de4c5d 22 @rm -f lcov/index.xml
group-onsemi 0:098463de4c5d 23 @./xsl_script.sh
group-onsemi 0:098463de4c5d 24 @cp junit_xsl.xslt lcov/.
group-onsemi 0:098463de4c5d 25 @xsltproc -o lcov/testresults.html lcov/junit_xsl.xslt lcov/index.xml
group-onsemi 0:098463de4c5d 26 @rm -f lcov/junit_xsl.xslt
group-onsemi 0:098463de4c5d 27 @rm -f lcov/index.xml
group-onsemi 0:098463de4c5d 28 @find ./ -name '*.gcno' | xargs cp --backup=numbered -t ./coverage/
group-onsemi 0:098463de4c5d 29 @find ./ -name '*.gcda' | xargs cp --backup=numbered -t ./coverage/
group-onsemi 0:098463de4c5d 30 @gcovr --object-directory ./coverage --exclude-unreachable-branches -e '.*/builds/.*' -e '.*/test/.*' -e '.*/yotta_modules/.*' -e '.*/stubs/.*' -e '.*/mbed-client-c/.*' -x -o ./lcov/gcovr.xml
group-onsemi 0:098463de4c5d 31 @lcov -d test/. -c -o $(COVERAGEFILE)
group-onsemi 0:098463de4c5d 32 @lcov -q -r $(COVERAGEFILE) "/usr*" -o $(COVERAGEFILE)
group-onsemi 0:098463de4c5d 33 @lcov -q -r $(COVERAGEFILE) "/test*" -o $(COVERAGEFILE)
group-onsemi 0:098463de4c5d 34 @lcov -q -r $(COVERAGEFILE) "/mbed-client-libservice*" -o $(COVERAGEFILE)
group-onsemi 0:098463de4c5d 35 @genhtml -q $(COVERAGEFILE) --show-details --output-directory lcov/html
group-onsemi 0:098463de4c5d 36 @echo mbed-client-c module unit tests built
group-onsemi 0:098463de4c5d 37
group-onsemi 0:098463de4c5d 38 $(TESTDIRS):
group-onsemi 0:098463de4c5d 39 @make -C $(@:build-%=%)
group-onsemi 0:098463de4c5d 40
group-onsemi 0:098463de4c5d 41 $(CLEANDIRS):
group-onsemi 0:098463de4c5d 42 @make -C $(@:clean-%=%) clean
group-onsemi 0:098463de4c5d 43
group-onsemi 0:098463de4c5d 44 $(CLEANTESTDIRS):
group-onsemi 0:098463de4c5d 45 @make -C $(@:clean-%=%) clean
group-onsemi 0:098463de4c5d 46
group-onsemi 0:098463de4c5d 47 # Extend default clean rule
group-onsemi 0:098463de4c5d 48 clean: clean-extra
group-onsemi 0:098463de4c5d 49
group-onsemi 0:098463de4c5d 50 clean-extra: $(CLEANDIRS) \
group-onsemi 0:098463de4c5d 51 $(CLEANTESTDIRS)