Add metrics to the framework
[ric-plt/xapp-frame-cpp.git] / test / Makefile
1
2 coverage_opts = -ftest-coverage -fprofile-arcs
3
4 binaries = unit_test
5
6 tests:: unit_test jhash_test metrics_test
7
8 include_list = -I ../src/metrics -I ../src/alarm -I ../src/messaging
9
10 # RMR emulation
11 rmr_em.o::      rmr_em.c
12         cc -g rmr_em.c -c
13
14 # include the emulated rmr stuff, but we still need the rmr lib for symtab things which we cannot hope to
15 # emulate (and don't need to)
16 #
17 unit_test:: unit_test.cpp rmr_em.o
18         g++ -g $(coverage_opts) $(include_list) unit_test.cpp -o unit_test -L../.build -lricxfcpp rmr_em.o  -lrmr_si -lpthread
19
20 # build a special jwrapper object with coverage settings
21 jwrapper_test.o:: ../src/json/jwrapper.c ../src/json/jwrapper.h
22         cc $(coverage_opts)  -g -I  ../src/json -I ../ext/jsmn  ../src/json/jwrapper.c -c -o jwrapper_test.o
23
24 jhash_test:: jwrapper_test.o jhash_test.cpp
25         # do NOT link the xapp lib; we include all modules in the test programme
26         g++ -g $(coverage_opts) -I ../src/json -I ../ext/jsmn jhash_test.cpp -o jhash_test jwrapper_test.o -lrmr_si -lpthread
27
28 metrics_test:: metrics_test.cpp rmr_em.o
29         # do NOT link the xapp lib; we include all modules in the test programme
30         g++ -g $(coverage_opts) $(include_list) metrics_test.cpp -o metrics_test -L../.build -lricxfcpp rmr_em.o -l rmr_si -lpthread
31
32 # prune gcov files generated by system include files
33 clean::
34         rm -f *.h.gcov *.c.gcov
35
36 # ditch anything that can be rebuilt
37 nuke::
38         rm -f *.a *.o *.gcov *.gcda *.gcno core a.out $(binaries)
39