Adding Tizen Coverage Automation 32/219232/1
authorAbhimanyu Swami <abhimanyu1.s@samsung.com>
Tue, 3 Dec 2019 12:15:35 +0000 (17:45 +0530)
committerAbhimanyu Swami <abhimanyu1.s@samsung.com>
Tue, 3 Dec 2019 12:15:35 +0000 (17:45 +0530)
Change-Id: I404f6877a8646f0d7210324ffc98fe7f6c90ab74
Signed-off-by: Abhimanyu Swami <abhimanyu1.s@samsung.com>
packaging/fido-client.spec

index 7843263..d7c4f13 100755 (executable)
@@ -51,6 +51,10 @@ Requires(post): /sbin/ldconfig
 Requires(post): /usr/bin/sqlite3
 Requires(postun): /sbin/ldconfig
 
+%if 0%{?gcov:1}
+BuildRequires:  lcov
+%endif
+
 %description
 Tizen FIDO Client provides FIDO UAF spec compliant APIs.
 
@@ -71,10 +75,27 @@ Development files for %{name}
 %define _icon_dir               %{TZ_SYS_RO_ICONS}/default/small
 %endif
 
+#################################################
+# gcov
+#################################################
+%if 0%{?gcov:1}
+%package gcov
+Summary:    Tizen FIDO Client (gcov)
+Group:      Service Framework/Testing
+%description gcov
+gcov objects for coverage test
+%endif
+
 %prep
 %setup -q
 
 %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
 %if 0%{?sec_build_binary_debug_enable}
 export CFLAGS="$CFLAGS -DTIZEN_DEBUG_ENABLE"
 export CXXFLAGS="$CXXFLAGS -DTIZEN_DEBUG_ENABLE"
@@ -111,11 +132,20 @@ cmake . \
 
 make %{?_smp_mflags}
 
+%if 0%{?gcov:1}
+mkdir -p gcov-obj
+find . -name '*.gcno' -exec cp '{}' gcov-obj ';'
+%endif
+
 %if 0%{?tizen_version_major} >= 3
 %install
 rm -rf %{buildroot}
 
 %make_install
+%if 0%{?gcov:1}
+mkdir -p %{buildroot}%{_datadir}/gcov/obj
+install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj
+%endif
 
 mkdir -p %{buildroot}/usr/share/dbus-1/system-services
 install -m 0644 %SOURCE1 %{buildroot}/usr/share/dbus-1/system-services/org.tizen.fido.service
@@ -315,3 +345,8 @@ This is a program to test the Fido service internally.
 /opt/share/packages/org.tizen.FidoSample.xml
 ##/opt/share/icons/default/small/org.tizen.FidoSample.png
 %endif
+
+%if 0%{?gcov:1}
+%files gcov
+%{_datadir}/gcov/obj/*
+%endif