add gcov package for getting coverage
authorYoungjae Shin <yj99.shin@samsung.com>
Fri, 24 Apr 2020 01:19:22 +0000 (10:19 +0900)
committerYoungjae Shin <yj99.shin@samsung.com>
Fri, 24 Apr 2020 01:58:53 +0000 (10:58 +0900)
packaging/modes-plugins.spec

index efd45bc..f5d6f71 100644 (file)
@@ -30,6 +30,9 @@ BuildRequires: pkgconfig(pkgmgr-info)
 BuildRequires: pkgconfig(ecore)
 BuildRequires: pkgconfig(ecore-wl2)
 BuildRequires: pkgconfig(capi-ui-efl-util)
+%if 0%{?gcov:1}
+BuildRequires: lcov
+%endif
 
 %description
 Plugin Libraries for Mode Supervisor
@@ -42,6 +45,15 @@ Requires: %{name} = %{version}
 %description unittests
 The %{name}-unittests pacakge contains programs for checking quality the %{name}.
 
+%if 0%{?gcov:1}
+%package gcov
+Summary: Coverage Data of %{name}
+Group: System/Testing
+
+%description gcov
+The %{name}-gcov package contains gcov objects
+%endif
+
 %define modes_plugin_dir %{_libdir}/%{name}
 %define modes_plugin_test_dir %{_bindir}/%{name}
 %define modes_ro_dir %{_datadir}/modes
@@ -72,6 +84,11 @@ make %{?_smp_mflags}
 
 %install
 %make_install
+%if 0%{?gcov:1}
+find .. -name '*.gcno' | tar cf %{name}-gcov.tar -T -
+install -d -m 755 %{buildroot}%{_datadir}/gcov/obj
+tar xf %{name}-gcov.tar -C %{buildroot}%{_datadir}/gcov/obj
+%endif
 
 %check
 xmllint --noout --schema %{modes_ro_dir}/schema/tizen_action_rule.xsd %{buildroot}%{modes_ro_dir}/rule/tizen_*_rule.xml
@@ -109,3 +126,8 @@ systemctl restart modes.service
 %{modes_plugin_test_dir}/*
 %{modes_ro_dir}/mode/*.xml
 %license LICENSE.APLv2
+
+%if 0%{?gcov:1}
+%files gcov
+%{_datadir}/gcov/*
+%endif