diff options
author | hyunho <hhstark.kang@samsung.com> | 2020-09-08 10:49:38 +0900 |
---|---|---|
committer | hyunho <hhstark.kang@samsung.com> | 2020-09-08 10:49:38 +0900 |
commit | 505027f2f8eadd1aeeb917ea5277a53821db9e88 (patch) | |
tree | 69a8cf73af50ac15d66abd7e7e5ff02ba80d420c /packaging/libscreen_connector.spec | |
parent | 9a462a4ea6746dc5354e75420bf1e0ea5af76043 (diff) | |
download | screen-connector-505027f2f8eadd1aeeb917ea5277a53821db9e88.tar.gz screen-connector-505027f2f8eadd1aeeb917ea5277a53821db9e88.tar.bz2 screen-connector-505027f2f8eadd1aeeb917ea5277a53821db9e88.zip |
Add gcov build options
Enable coverage check option
--define 'gcov 1'
Change-Id: Ibb2920d0a4e94f3ddb5b2bceafeecc3d13cecbb7
Signed-off-by: hyunho <hhstark.kang@samsung.com>
Diffstat (limited to 'packaging/libscreen_connector.spec')
-rw-r--r-- | packaging/libscreen_connector.spec | 51 |
1 files changed, 48 insertions, 3 deletions
diff --git a/packaging/libscreen_connector.spec b/packaging/libscreen_connector.spec index 8cfb896..e780641 100644 --- a/packaging/libscreen_connector.spec +++ b/packaging/libscreen_connector.spec @@ -26,6 +26,11 @@ BuildRequires: pkgconfig(gmock) BuildRequires: pkgconfig(tzsh-launcher-service) BuildRequires: pkgconfig(libtbm) +%if 0%{?gcov:1} +BuildRequires: lcov +BuildRequires: zip +%endif + %description API for creating a new instance of the widget and managing its life-cycle. @@ -37,6 +42,15 @@ Requires: %{name} = %{version}-%{release} %description devel Header and package configuration files for the widget viewer development +%if 0%{?gcov:1} +%package gcov +Summary: Screen Connector(gcov) +Group: Application Framework/Libraries + +%description gcov +gcov objects of a screen-connector library +%endif + %prep %setup -q cp %{SOURCE1001} . @@ -49,17 +63,48 @@ cp %{SOURCE1007} . cp %{SOURCE1008} . %build - -export CFLAGS+=" -DEFL_BETA_API_SUPPORT " -export CXXFLAGS+=" -DEFL_BETA_API_SUPPORT " +%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+=" -DEFL_BETA_API_SUPPORT" +export CXXFLAGS+=" -DEFL_BETA_API_SUPPORT" MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'` %cmake . -DTZ_SYS_SHARE=/usr/share -DMAJORVER=${MAJORVER} -DFULLVER=%{version} 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 + +%check +export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:%{buildroot}/usr/lib/ +ctest -V + +%if 0%{?gcov:1} +lcov -c --ignore-errors graph --no-external -q -d . -o screen-connector.info +genhtml screen-connector.info -o screen-connector.out +zip -r screen-connector.zip screen-connector.out +install -m 0644 screen-connector.zip %{buildroot}%{_datadir}/gcov/ +%endif + +%if 0%{?gcov:1} +%files gcov +%{_datadir}/gcov/* +%endif ################################################# # libscreen_connector_watcher |