blob: 951eb3361a8bfb8333a0c1dddd406ae37c2008dd (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
|
Name: libslp-db-util
Version: 0.1.2
Release: 0
License: Apache-2.0
Summary: DB Utility
Group: Application Framework/Database
Source0: %{name}-%{version}.tar.gz
Source1001: %{name}.manifest
BuildRequires: cmake
BuildRequires: pkgconfig(dlog)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(icu-i18n)
BuildRequires: pkgconfig(sqlite3)
BuildRequires: pkgconfig(vconf)
BuildRequires: gtest-devel
%if 0%{?gcov:1}
BuildRequires: lcov
%endif
%description
DB Utility.
%package devel
Summary: Devel package for libslp-db-util (devel)
Requires: %{name} = %{version}
%description devel
Devel package for libslp-db-util (devel)
%if 0%{?gcov:1}
%package gcov
Summary: DB Utility(gcov)
%description gcov
libslp-db-util gcov objects
%endif
%package unittests
Summary: %{name} unittests binary
%description unittests
unittests binary
%prep
%setup -q
cp %{SOURCE1001} ./%{name}.manifest
%build
%if 0%{?gcov:1}
export CFLAGS+=" -fprofile-arcs -ftest-coverage"
export CXXFLAGS+=" -fprofile-arcs -ftest-coverage"
export LDFLAGS+=" -lgcov"
%endif
MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
%cmake . -DMAJORVER=${MAJORVER} -DFULLVER=%{version} \
-DCMAKE_VERBOSE_MAKEFILE=OFF \
-DBUILD_GCOV=%{?gcov:1}%{!?gcov:0}
make %{?_smp_mflags}
%install
%make_install
%if 0%{?gcov:1}
builddir=$(basename $PWD)
gcno_obj_dir=%{buildroot}%{_datadir}/gcov/obj/%{name}/"$builddir"
mkdir -p "$gcno_obj_dir"
find . -name '*.gcno' -exec cp --parents '{}' "$gcno_obj_dir" ';'
%endif
cat << EOF > run-unittest.sh
#!/bin/sh
setup() {
echo "setup start"
}
test_main() {
echo "test_main start"
/usr/bin/db-util-gtest
}
teardown() {
echo "teardown start"
}
main() {
setup
test_main
teardown
}
main "\$*"
EOF
mkdir -p %{buildroot}%{_bindir}/tizen-unittests/%{name}
install -m 0755 run-unittest.sh %{buildroot}%{_bindir}/tizen-unittests/%{name}/
install -m 0755 ./tests/db-util-gtest %{buildroot}%{_bindir}
%check
%if 0%{?gcov:1}
pushd tests
./test-collation-db.sh
LD_PRELOAD=./libvconf-mock.so LD_LIBRARY_PATH=.. ./db-util-gtest
popd
lcov -c --ignore-errors mismatch --ignore-errors graph --no-external -b . -d . -o %{name}.info
genhtml %{name}.info -o out --legend --show-details
%endif
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%manifest %{name}.manifest
%{_libdir}/libSLP-db-util.so.*
%license LICENSE.APLv2
%files devel
%{_libdir}/libSLP-db-util.so
%{_libdir}/pkgconfig/db-util.pc
%{_includedir}/db-util/*.h
%if 0%{?gcov:1}
%files gcov
%{_datadir}/gcov/*
%endif
%files unittests
%{_bindir}/db-util-gtest
%{_bindir}/tizen-unittests/%{name}/run-unittest.sh
|