diff options
author | Hwankyu Jhun <h.jhun@samsung.com> | 2019-07-11 08:46:34 +0900 |
---|---|---|
committer | Hwankyu Jhun <h.jhun@samsung.com> | 2019-07-11 08:46:56 +0900 |
commit | ce7d18a00f9d0d7b9eccc2abf5e43a69e5d6862b (patch) | |
tree | 4ccbc6410eb4d60524a89a97a66edd2445e1e449 | |
parent | 7159bea64c2f38c21d662552928f4c296b5cfe5f (diff) | |
download | minicontrol-ce7d18a00f9d0d7b9eccc2abf5e43a69e5d6862b.tar.gz minicontrol-ce7d18a00f9d0d7b9eccc2abf5e43a69e5d6862b.tar.bz2 minicontrol-ce7d18a00f9d0d7b9eccc2abf5e43a69e5d6862b.zip |
Make a gcov package for measuring coverage easier
Change-Id: I22c2d078a3ab0da2f0469c10099924c156d21dbc
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
-rw-r--r-- | packaging/minicontrol.spec | 35 |
1 files changed, 33 insertions, 2 deletions
diff --git a/packaging/minicontrol.spec b/packaging/minicontrol.spec index d2390a7..d8bf43c 100644 --- a/packaging/minicontrol.spec +++ b/packaging/minicontrol.spec @@ -25,14 +25,30 @@ Minicontrol is a small control panel on notification panel or lock screen. This %package devel Summary: Minicontrol library (devel) Group: Development/Libraries -Requires: %{name} = %{version}-%{release} +Requires: %{name} = %{version} %description devel Minicontrol library (devel). +%if 0%{?gcov:1} +%package gcov +Summary: Minicontrol Library(gcov) +Group: Application Framework/Other + +%description gcov +gcov objects of Minicontrol Library +%endif + %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+=" -fPIC " -export LDFLAGS+="-Wl,--rpath=%{_prefix}/lib -Wl,--as-needed" +export LDFLAGS+=" -Wl,--rpath=%{_prefix}/lib -Wl,--as-needed" LDFLAGS="$LDFLAGS" MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'` @@ -43,9 +59,19 @@ MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'` %endif make %{?jobs:-j%jobs} +%if 0%{?gcov:1} +mkdir -p gcov-obj +find . -name '*.gcno' -exec cp '{}' gcov-obj ';' +%endif + %install %make_install +%if 0%{?gcov:1} +mkdir -p %{buildroot}%{_datadir}/gcov/obj +install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj +%endif + %post /sbin/ldconfig @@ -68,3 +94,8 @@ make %{?jobs:-j%jobs} %{_libdir}/libminicontrol-provider.so %{_libdir}/libminicontrol-viewer.so %{_libdir}/libminicontrol-monitor.so + +%if 0%{?gcov:1} +%files gcov +%{_datadir}/gcov/obj/* +%endif |