Release version 1.0.12
[platform/core/appfw/event-system.git] / packaging / esd.spec
index e8d92e7..f549fb7 100644 (file)
@@ -1,6 +1,6 @@
 Name:       esd
 Summary:    Event system daemon
-Version:    1.0.3
+Version:    1.0.12
 Release:    1
 Group:      Application Framework/Service
 License:    Apache-2.0
@@ -33,6 +33,10 @@ BuildRequires:  pkgconfig(capi-system-info)
 BuildRequires:  pkgconfig(tizen-database)
 BuildRequires:  pkgconfig(gmock)
 
+%if 0%{?gcov:1}
+BuildRequires:  lcov
+%endif
+
 Requires(post): /sbin/ldconfig
 Requires(postun): /sbin/ldconfig
 
@@ -74,11 +78,27 @@ Requires:   %{name}
 %description -n %{name}-unittests
 GTest for API
 
+%if 0%{?gcov:1}
+%package gcov
+Summary:  Event system daemon(gcov)
+Group:    Application Framework/Service
+
+%description gcov
+gcov objects of a Event System
+%endif
+
 %prep
 %setup -q
 cp %{SOURCE1001} .
 
 %build
+%if 0%{?gcov:1}
+export CFLAGS+=" -fprofile-arcs -ftest-coverage"
+export CXXFLAGS+=" -fprofile-arcs -ftest-coverage"
+export FFLAGS+=" -fprofile-arcs -ftest-coverage"
+export LDFLAGS+=" -lgcov"
+%endif
+
 export CFLAGS="$CFLAGS -DTIZEN_DEBUG_ENABLE"
 export CXXFLAGS="$CXXFLAGS -DTIZEN_DEBUG_ENABLE"
 export FFLAGS="$FFLAGS -DTIZEN_DEBUG_ENABLE"
@@ -95,6 +115,11 @@ make %{?jobs:-j%jobs}
 %check
 ctest -V
 
+%if 0%{?gcov:1}
+lcov -c --ignore-errors graph --no-external -b . -d . -o %{name}.info
+genhtml %{name}.info -o out --legend --show-details
+%endif
+
 %install
 rm -rf %{buildroot}
 %make_install
@@ -106,7 +131,8 @@ setup() {
 
 test_main() {
     echo "test_main start"
-    /usr/bin/%{name}-unittests
+    /usr/bin/esd-mod-cion-unittests
+    /usr/bin/esd-mod-dbus_event-unittests
 }
 
 teardown() {
@@ -129,6 +155,13 @@ mkdir -p %{buildroot}%{_unitdir}/multi-user.target.wants
 install -m 0644 %SOURCE1 %{buildroot}%{_unitdir}/esd.service
 ln -sf ../esd.service %{buildroot}%{_unitdir}/multi-user.target.wants/esd.service
 
+%if 0%{?gcov:1}
+builddir=$(basename $PWD)
+gcno_obj_dir=%{buildroot}%{_datadir}/gcov/obj/%{name}/"$builddir"
+mkdir -p "$gcno_obj_dir"
+find . -name '*.gcno' -exec cp --parents '{}' "$gcno_obj_dir" ';'
+%endif
+
 %post -p /sbin/ldconfig
 
 %postun -p /sbin/ldconfig
@@ -163,5 +196,10 @@ ln -sf ../esd.service %{buildroot}%{_unitdir}/multi-user.target.wants/esd.servic
 # unittests
 #################################################
 %files -n %{name}-unittests
-%{_bindir}/%{name}-unittests
+%{_bindir}/esd-*-unittests
 %{_bindir}/tizen-unittests/%{name}/run-unittest.sh
+
+%if 0%{?gcov:1}
+%files gcov
+%{_datadir}/gcov/*
+%endif