summaryrefslogtreecommitdiff
path: root/packaging
diff options
context:
space:
mode:
authorhyunho <hhstark.kang@samsung.com>2020-09-16 16:34:31 +0900
committerhyunho <hhstark.kang@samsung.com>2020-10-12 11:21:23 +0900
commit2c9f7e5472f2b06aac13d04ceb60611b39c5dabb (patch)
tree12f3c64f7ca2daea0e1643ac45c849432d77550a /packaging
parent45da5f3fe133bb17a53282c0b1b7e2f9b1f3a75a (diff)
downloadbuxton2-2c9f7e5472f2b06aac13d04ceb60611b39c5dabb.tar.gz
buxton2-2c9f7e5472f2b06aac13d04ceb60611b39c5dabb.tar.bz2
buxton2-2c9f7e5472f2b06aac13d04ceb60611b39c5dabb.zip
Add gtests
Change-Id: I96373bc02f800c112dee3345289559586256b69d Signed-off-by: hyunho <hhstark.kang@samsung.com>
Diffstat (limited to 'packaging')
-rw-r--r--packaging/buxton2.spec30
1 files changed, 24 insertions, 6 deletions
diff --git a/packaging/buxton2.spec b/packaging/buxton2.spec
index 8d5587a..a310d7b 100644
--- a/packaging/buxton2.spec
+++ b/packaging/buxton2.spec
@@ -22,6 +22,7 @@ BuildRequires: pkgconfig(cynara-client-async)
BuildRequires: pkgconfig(dlog)
BuildRequires: pkgconfig(sqlite3)
BuildRequires: pkgconfig(libtzplatform-config)
+BuildRequires: pkgconfig(gmock)
Requires: security-config
Requires(post): /usr/bin/getent
Requires(post): /usr/bin/chown
@@ -33,6 +34,11 @@ Requires(posttrans): /usr/bin/chmod
Obsoletes: buxton
Provides: buxton
+%if 0%{?gcov:1}
+BuildRequires: lcov
+BuildRequires: zip
+%endif
+
%description
Buxton is a security-enabled configuration management system. It
features a layered approach to configuration storage, with each
@@ -109,17 +115,17 @@ gcov objects for a buxton2 library
cp %{SOURCE1001} .
%build
+
+# for Address space layout randomization
+export CFLAGS="$CFLAGS -fPIE "
+export LDFLAGS="$LDFLAGS -pie"
+
%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
-# for Address space layout randomization
-export CFLAGS="$CFLAGS -fPIE"
-export LDFLAGS="$LDFLAGS -pie"
-
%cmake -DVERSION=%{version} \
-DCONFPATH:PATH=%{_sysconfdir}/%{name}.conf \
-DMODULE_DIR:PATH=%{_libdir}/%{name} \
@@ -138,6 +144,7 @@ mkdir -p gcov-obj
find . -name '*.gcno' -exec cp '{}' gcov-obj ';'
%endif
+
%install
%make_install
@@ -171,6 +178,17 @@ mkdir -p %{buildroot}%{_datadir}/gcov/obj
install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj
%endif
+%check
+export LD_LIBRARY_PATH=../../vconf-compat:../../lib
+ctest -V
+
+%if 0%{?gcov:1}
+lcov -c --ignore-errors graph --no-external -q -d . -o buxton2.info
+genhtml buxton2.info -o buxton2.out
+zip -r buxton2.zip buxton2.out
+install -m 0644 buxton2.zip %{buildroot}%{_datadir}/gcov/
+%endif
+
%post
/sbin/ldconfig
@@ -245,5 +263,5 @@ chsmack -a System %{dbdir}/*
%if 0%{?gcov:1}
%files gcov
-%{_datadir}/gcov/obj/*
+%{_datadir}/gcov/*
%endif