Make a gcov package for coverage 10/219110/1 accepted/tizen/unified/20191203.121742 submit/tizen/20191202.061003
authorsinikang <sinikang@samsung.com>
Mon, 2 Dec 2019 06:02:04 +0000 (15:02 +0900)
committersinikang <sinikang@samsung.com>
Mon, 2 Dec 2019 06:02:04 +0000 (15:02 +0900)
Change-Id: Ice072f43560ff40748740206e9f177d4a4611028
Signed-off-by: sinikang <sinikang@samsung.com>
packaging/libtapi.spec

index dd25625e8b0d232ea52d61f1561f4005d89abf3f..b1022148dddf9cb7e0b14b5fb89e02f67ae5ddb4 100644 (file)
@@ -1,6 +1,6 @@
 %define major 0
 %define minor 8
-%define patchlevel 37
+%define patchlevel 38
 
 Name:           libtapi
 Version:        %{major}.%{minor}.%{patchlevel}
@@ -18,6 +18,10 @@ BuildRequires:  pkgconfig(gmock)
 Requires(post): /sbin/ldconfig
 Requires(postun): /sbin/ldconfig
 
+%if 0%{?gcov:1}
+BuildRequires: lcov
+%endif
+
 %description
 Telephony client API library
 
@@ -35,6 +39,14 @@ Requires:       %{name} = %{version}-%{release}
 %description haltests
 libtcore extension for HAL test.
 
+%if 0%{?gcov:1}
+%package gcov
+Summary:  tapi client API library(gcov)
+Group:    Developement/Libraries
+%description gcov
+gcov objects for coverage test
+%endif
+
 %prep
 %setup -q
 
@@ -49,6 +61,12 @@ 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 . -DCMAKE_INSTALL_PREFIX=%{_prefix} \
        -DLIB_INSTALL_DIR=%{_libdir} \
@@ -57,9 +75,19 @@ cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} \
 
 make %{?_smp_mflags}
 
+%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
+
 rm -rf %{buildroot}%{_includedir}/telephony/tapi/.gitignore
 
 %post -p /sbin/ldconfig
@@ -85,3 +113,8 @@ rm -rf %{buildroot}%{_includedir}/telephony/tapi/.gitignore
 %manifest libtapi.manifest
 %{_bindir}/tapi_haltests
 %{_libdir}/*.so
+
+%if 0%{?gcov:1}
+%files gcov
+%{_datadir}/gcov/obj/*
+%endif
\ No newline at end of file