Make coverage support package 81/270281/1 accepted/tizen/unified/20220201.130315 submit/tizen/20220128.081318
authorAmritanshu <a.pandia1@samsung.com>
Thu, 27 Jan 2022 10:26:51 +0000 (15:56 +0530)
committerAmritanshu <a.pandia1@samsung.com>
Thu, 27 Jan 2022 10:26:51 +0000 (15:56 +0530)
Change-Id: I0d47b360284ff601c10202fcd05d332516841582
Signed-off-by: Amritanshu <a.pandia1@samsung.com>
packaging/attach-panel.spec

index de882987f5b65094ff633c81c2a5a40f2ffc7e7a..0ac4f909c451f882532c5c2d0a466822dae2ee3e 100755 (executable)
@@ -35,6 +35,16 @@ BuildRequires: pkgconfig(capi-appfw-app-manager)
 %description
 Description: Attach Panel
 
+# gcov
+%if 0%{?gcov:1}
+%package gcov
+Summary:    Attach panel coverage tool(gcov)
+Group:      Application
+
+%description gcov
+Attach panel gcov objects
+%endif
+
 %prep
 %setup -q
 
@@ -51,13 +61,29 @@ export CFLAGS="$CFLAGS -DTIZEN_DEBUG_ENABLE"
 export CXXFLAGS="$CXXFLAGS -DTIZEN_DEBUG_ENABLE"
 export FFLAGS="$FFLAGS -DTIZEN_DEBUG_ENABLE"
 
+%if 0%{?gcov:1}
+export CFLAGS+=" -fprofile-arcs -ftest-coverage"
+export CXXFLAGS+=" -fprofile-arcs -ftest-coverage"
+export FFLAGS+=" -fprofile-arcs -ftest-coverage"
+%endif
+
 %cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix}
 make %{?jobs:-j%jobs}
 
+%if 0%{?gcov:1}
+mkdir -p gcov-obj
+find . -name '*.gcno' -exec cp '{}' gcov-obj ';'
+%endif
+
 %install
 rm -rf %{buildroot}
 %make_install
 
+%if 0%{?gcov:1}
+mkdir -p %{buildroot}%{_datadir}/gcov/obj/%{name}
+install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj/%{name}
+%endif
+
 %post
 
 %files
@@ -72,3 +98,8 @@ rm -rf %{buildroot}
 %{_includedir}/attach-panel/attach_panel.h
 %{_libdir}/pkgconfig/%{name}.pc
 %{_libdir}/*.so
+
+%if 0%{?gcov:1}
+%files gcov
+%{_datadir}/gcov/obj/*
+%endif
\ No newline at end of file