add gcno data for gcov 29/209329/1
authorJunkyeong Kim <jk0430.kim@samsung.com>
Fri, 5 Jul 2019 02:21:41 +0000 (11:21 +0900)
committerJunkyeong Kim <jk0430.kim@samsung.com>
Fri, 5 Jul 2019 02:21:48 +0000 (11:21 +0900)
Change-Id: Ieb4a411e1efc01495264d8eadb72753d45a3dd4c
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
packaging/libeom.spec

index 4dfffed7d8b5cfb60b143eab6a6b22b594f5ec7c..1113d436e600648117ef11bf997bd6d837465393 100644 (file)
@@ -49,6 +49,15 @@ Requires: libeom-server = %{version}
 %description -n libeom-server-devel
 External Output Manager Server Library development package
 
+%if 0%{?gcov:1}
+%package gcov
+Summary: EOM gcov data package
+Group: Development/Libraries
+
+%description gcov
+EOM gcno data for gcov
+%endif
+
 %global TZ_SYS_RO_SHARE  %{?TZ_SYS_RO_SHARE:%TZ_SYS_RO_SHARE}%{!?TZ_SYS_RO_SHARE:/usr/share}
 
 %prep
@@ -58,6 +67,10 @@ cp %{SOURCE1001} .
 %build
 export CFLAGS="$CFLAGS -g -Wall -Werror -Wno-error=deprecated-declarations"
 export LDFLAGS="$LDFLAGS -Wl,--hash-style=both -Wl,--as-needed"
+%if 0%{?gcov:1}
+CFLAGS+=" -fprofile-arcs -ftest-coverage"
+LDFLAGS+=" -lgcov"
+%endif
 UTEST="no"
 
 %if %{with utest}
@@ -72,12 +85,22 @@ make %{?_smp_mflags}
 make -C ut check
 %endif
 
+%if 0%{?gcov:1}
+mkdir -p gcov-obj
+find . -name '*.gcno' -exec cp '{}' gcov-obj ';'
+%endif
+
 %install
 rm -rf %{buildroot}
 mkdir -p %{buildroot}/usr/include
 cp src/eom-server-protocol.h %{buildroot}/usr/include
 %make_install
 
+%if 0%{?gcov:1}
+mkdir -p %{buildroot}%{_datadir}/gcov/obj
+install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj
+%endif
+
 %remove_docs
 
 %post -p /sbin/ldconfig
@@ -117,3 +140,8 @@ cp src/eom-server-protocol.h %{buildroot}/usr/include
 %{_includedir}/eom/eom.h
 %{_libdir}/libeom-server-protocol.so
 %{_libdir}/pkgconfig/eom-server.pc
+
+%if 0%{?gcov:1}
+%files gcov
+%{_datadir}/gcov/obj/*
+%endif