From 22577cf0e430d01a18149b753da82be10be65925 Mon Sep 17 00:00:00 2001 From: Seonah Moon Date: Mon, 1 Jul 2019 10:38:58 +0900 Subject: [PATCH] Make a gcov package for coverage Change-Id: Ia4e30b43d9ecc21713d0d2359c637537f35e9e4b --- CMakeLists.txt | 1 - packaging/capi-network-tethering.spec | 33 ++++++++++++++++++++++++++++++--- 2 files changed, 30 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 94b11b0..27fdf76 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -26,7 +26,6 @@ FOREACH(flag ${${fw_name}_CFLAGS}) ENDFOREACH(flag) SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIC -Wall -Werror -fvisibility=hidden") -#SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIC -Wall -Werror -fvisibility=hidden -fprofile-arcs -ftest-coverage") SET(CMAKE_C_FLAGS_DEBUG "-O0 -g") IF("${ARCH}" STREQUAL "arm") diff --git a/packaging/capi-network-tethering.spec b/packaging/capi-network-tethering.spec index 6985b20..43e3458 100644 --- a/packaging/capi-network-tethering.spec +++ b/packaging/capi-network-tethering.spec @@ -15,6 +15,9 @@ BuildRequires: pkgconfig(key-manager) BuildRequires: pkgconfig(capi-system-info) BuildRequires: pkgconfig(libtzplatform-config) BuildRequires: cmake +%if 0%{?gcov:1} +BuildRequires: lcov +%endif Requires(post): /sbin/ldconfig Requires(postun): /sbin/ldconfig @@ -33,23 +36,42 @@ Summary: Test application for Tethering %description tool Test application for Tethering +%if 0%{?gcov:1} +%package gcov +Summary: Tethering Library(gcov) +Group: Network/Testing +%description gcov +gcov objects for coverage test +%endif %prep %setup -q %build -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" +export LDFLAGS+=" -lgcov" +%endif %cmake . make %{?_smp_mflags} +%if 0%{?gcov:1} +mkdir -p gcov-obj +find . -name '*.gcno' -exec cp '{}' gcov-obj ';' +%endif %install %make_install +%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 @@ -70,3 +92,8 @@ make %{?_smp_mflags} %files tool %{_bindir}/tethering_test + +%if 0%{?gcov:1} +%files gcov +%{_datadir}/gcov/obj/* +%endif -- 2.7.4