From b029e1783c2261b22d0a3906cb5c757e527823cd Mon Sep 17 00:00:00 2001 From: Hwankyu Jhun Date: Wed, 10 Jul 2019 13:43:38 +0900 Subject: [PATCH] Make a gcov package for measuring coverage easier Change-Id: I541144e249430ccdd55503af5e3b6882d5ceb7d5 Signed-off-by: Hwankyu Jhun --- packaging/capi-appfw-job-scheduler.spec | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/packaging/capi-appfw-job-scheduler.spec b/packaging/capi-appfw-job-scheduler.spec index 5b97c65..4d92fe1 100644 --- a/packaging/capi-appfw-job-scheduler.spec +++ b/packaging/capi-appfw-job-scheduler.spec @@ -28,17 +28,32 @@ Job Scheduler library in Tizen C API %package devel Summary: Job Scheduler library in Tizen C API (Development) Group: System/API -Requires: %{name} = %{version}-%{release} +Requires: %{name} = %{version} %description devel An Application library in SLP C API (Development) package. +%if 0%{?gcov:1} +%package gcov +Summary: Job Scheduler library(gcov) +Group: System/API + +%description gcov +gcov objects of a job scheduler 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} \ @@ -46,10 +61,20 @@ MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'` %__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 @@ -63,3 +88,8 @@ rm -rf %{buildroot} %{_includedir}/appfw/*.h %{_libdir}/pkgconfig/capi-appfw-job-scheduler.pc %{_libdir}/libcapi-appfw-job-scheduler.so + +%if 0%{?gcov:1} +%files gcov +%{_datadir}/gcov/obj/* +%endif -- 2.7.4