From 3a0c86d3b343a7ed2113de6460f10d215088f839 Mon Sep 17 00:00:00 2001 From: Ilho Kim Date: Tue, 19 Nov 2019 16:19:36 +0900 Subject: [PATCH] Make a gcov package for measuring coverage easier Change-Id: I92804adca5b016a9d7cbb0ea8b193ead2b672ccb Signed-off-by: Ilho Kim --- packaging/capi-appfw-package-manager.spec | 35 +++++++++++++++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) diff --git a/packaging/capi-appfw-package-manager.spec b/packaging/capi-appfw-package-manager.spec index e8c1b18..2bbc723 100644 --- a/packaging/capi-appfw-package-manager.spec +++ b/packaging/capi-appfw-package-manager.spec @@ -26,7 +26,7 @@ and also privides event listening function. %package devel Summary: Package Manager API (Development) Group: System/API -Requires: %{name} = %{version}-%{release} +Requires: %{name} = %{version} %description devel The Package Manager API provides functions to install, uninstall the package, @@ -35,26 +35,52 @@ and also privides event listening function. (DEV) %package test Summary: Package Manager API (Test Tool) Group: System/API -Requires: %{name} = %{version}-%{release} +Requires: %{name} = %{version} %description test This package includes test tool for package manager apis. +%if 0%{?gcov:1} +%package gcov +Summary: Package Manager API (gcov) +Group: System/API + +%description gcov +gcov objects for a package manager library +%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 + MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'` %cmake . -DFULLVER=%{version} -DMAJORVER=${MAJORVER} 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 +install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj +%endif + %post -p /sbin/ldconfig %postun -p /sbin/ldconfig @@ -74,3 +100,8 @@ rm -rf %{buildroot} %files test %manifest %{name}.manifest %{_bindir}/pkgmgr_tool + +%if 0%{?gcov:1} +%files gcov +%{_datadir}/gcov/obj/* +%endif -- 2.7.4