-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile.cpputest
More file actions
59 lines (46 loc) · 2.21 KB
/
Makefile.cpputest
File metadata and controls
59 lines (46 loc) · 2.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#
# Copyright 2024 (C) Alexey Dynda
# This file is part of uProfiler.
#
# GNU General Public License Usage
# Protocol Library is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# Protocol Library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with Protocol Library. If not, see <http://www.gnu.org/licenses/>.
# Commercial License Usage
# Licensees holding valid commercial uProfiler licenses may use this file in
# accordance with the commercial license agreement provided in accordance with
# the terms contained in a written agreement between you and Alexey Dynda.
# For further information contact via email on github account.
#
.PHONY: unittest check clean_unittest
CPPUTEST_HOME=/usr/local
CXXFLAGS += -I$(CPPUTEST_HOME)/include
OBJ_UNIT_TEST = \
unittest/main.o \
unittest/base_tests.o \
unittest: $(OBJ_UNIT_TEST) library
$(CXX) $(CPPFLAGS) -o $(BLD)/unit_test $(OBJ_UNIT_TEST) \
-L$(BLD) -L$(CPPUTEST_HOME)/lib \
-lm -pthread -luprofiler -lCppUTest -lCppUTestExt
check: unittest
$(BLD)/unit_test
clean: clean_unittest
clean_unittest:
rm -rf $(OBJ_UNIT_TEST) $(OBJ_UNIT_TEST:.o=.gcno) $(OBJ_UNIT_TEST:.o=.gcda) $(OBJ_UNIT_TEST:.o=.*.gcov)
coverage:
$(MAKE) ARCH=linux EXTRA_CPPFLAGS="--coverage" check
COVERALLS_REPO_TOKEN=TBD coveralls -b . \
--exclude docs --exclude extra --exclude unittest --exclude bld --exclude tools --exclude examples \
--gcov-options '\-lp' --dryrun
lcov --base-directory . --directory . -c -o lcov.info
lcov --remove lcov.info "*unittest*" -o lcov.info # remove output for external libraries
lcov --remove lcov.info "/usr/include*" -o lcov.info # remove output for external libraries
# -rm -rf test_coverage
# genhtml -o test_coverage -t "uprofiler test coverage" --num-spaces 4 lcov.info