2 Summary: String key-val dictionary ADT
5 Group: System/Libraries
7 Source0: bundle-%{version}.tar.gz
8 Source1001: bundle.manifest
9 Source1002: parcel.manifest
11 BuildRequires: pkgconfig(glib-2.0)
12 BuildRequires: pkgconfig(dlog)
13 BuildRequires: pkgconfig(capi-base-common)
14 BuildRequires: pkgconfig(json-glib-1.0)
15 BuildRequires: pkgconfig(sqlite3)
16 BuildRequires: pkgconfig(gmock)
24 Simple string key-val dictionary ADT
27 Summary: String key-val dictionary ADT (devel)
28 Group: Development/Libraries
29 Requires: %{name} = %{version}-%{release}
32 Simple string key-val dictionary ADT (devel)
34 #################################################
36 #################################################
38 Summary: GTest for bundle
39 Group: Development/Libraries
41 %description unittests
44 #################################################
46 #################################################
49 Summary: Simple string key-val dictionary ADT (gcov)
50 Group: Application Framework/Testing
53 Simple string key-val dictionary ADT gcov objects
56 #################################################
58 #################################################
60 Summary: Parcel Library
61 Group: Development/Libraries
63 %description -n parcel
66 %package -n parcel-devel
67 Summary: Parcel Library (devel)
68 Group: Development/Libraries
69 Requires: parcel = %{version}-%{release}
71 %description -n parcel-devel
72 Parcel Library (devel)
74 #################################################
76 #################################################
77 %package -n parcel-unittests
78 Summary: GTest for parcel
79 Group: Development/Libraries
81 %description -n parcel-unittests
84 #################################################
85 ## tizen-database-devel
86 #################################################
87 %package -n tizen-database-devel
88 Summary: Tizen-database Library (devel)
89 Group: Development/Libraries
91 %description -n tizen-database-devel
92 Tizen-database Library (devel)
94 #################################################
95 # tizen-database-unittests
96 #################################################
97 %package -n tizen-database-unittests
98 Summary: GTest for tizen-database
99 Group: Development/Libraries
101 %description -n tizen-database-unittests
102 GTest for tizen-database
104 #################################################
105 ## tizen-shared-queue-devel
106 #################################################
107 %package -n tizen-shared-queue-devel
108 Summary: Tizen-shared-queue Library (devel)
109 Group: Development/Libraries
111 %description -n tizen-shared-queue-devel
112 Tizen-Shared-Queue Library (devel)
114 #################################################
115 # tizen-shared-queue-unittests
116 #################################################
117 %package -n tizen-shared-queue-unittests
118 Summary: GTest for tizen-shared-queue
119 Group: Development/Libraries
121 %description -n tizen-shared-queue-unittests
122 GTest for tizen-shared-queue
125 %setup -q -n %{name}-%{version}
131 export CFLAGS+=" -fprofile-arcs -ftest-coverage"
132 export CXXFLAGS+=" -fprofile-arcs -ftest-coverage"
133 export FFLAGS+=" -fprofile-arcs -ftest-coverage"
134 export LDFLAGS+=" -lgcov"
137 MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
138 %cmake . -DFULLVER=%{version} -DMAJORVER=${MAJORVER}
139 %__make %{?_smp_mflags}
142 export LD_LIBRARY_PATH="../../src/bundle:../../src/parcel"
143 ctest --verbose %{?_smp_mflags}
145 lcov -c --ignore-errors mismatch,graph,unused --no-external -b . -d . -o %{name}.info
146 genhtml %{name}.info -o out --legend --show-details
153 builddir=$(basename $PWD)
154 gcno_obj_dir=%{buildroot}%{_datadir}/gcov/obj/%{name}/"$builddir"
155 mkdir -p "$gcno_obj_dir"
156 find . -name '*.gcno' -exec cp --parents '{}' "$gcno_obj_dir" ';'
159 cat << EOF > run-unittest.sh
161 GCOV_PATH="/tmp/home/abuild/rpmbuild/BUILD"
162 PAKCAGE="<NAME>-%{version}"
165 ## Sets the permission for applications
166 /usr/bin/find /tmp/home/ -print | /usr/bin/xargs -n1 /usr/bin/chsmack -a "System::Run" &> /dev/null
167 /usr/bin/find /tmp/home/ -print | /usr/bin/xargs -n1 /usr/bin/chsmack -a "System::Run" -t &> /dev/null
168 /usr/bin/chmod -R 777 /tmp/home/
173 /usr/bin/mkdir -p "${GCOV_PATH}/${PACKAGE}"
178 echo "test_main start"
179 export "GCOV_PREFIX=/tmp"
180 /usr/bin/<NAME>_unittests
184 echo "teardown start"
197 mkdir -p %{buildroot}%{_bindir}/tizen-unittests/%{name}
198 install -m 0755 run-unittest.sh %{buildroot}%{_bindir}/tizen-unittests/%{name}/
199 sed -i -e 's/<NAME>/bundle/g' %{buildroot}%{_bindir}/tizen-unittests/%{name}/run-unittest.sh
201 mkdir -p %{buildroot}%{_bindir}/tizen-unittests/parcel
202 install -m 0755 run-unittest.sh %{buildroot}%{_bindir}/tizen-unittests/parcel/
203 sed -i -e 's/<NAME>/parcel/g' %{buildroot}%{_bindir}/tizen-unittests/parcel/run-unittest.sh
205 mkdir -p %{buildroot}%{_bindir}/tizen-unittests/tizen-database
206 install -m 0755 run-unittest.sh %{buildroot}%{_bindir}/tizen-unittests/tizen-database/
207 sed -i -e 's/<NAME>/tizen-database/g' %{buildroot}%{_bindir}/tizen-unittests/tizen-database/run-unittest.sh
209 mkdir -p %{buildroot}%{_bindir}/tizen-unittests/tizen-shared-queue
210 install -m 0755 run-unittest.sh %{buildroot}%{_bindir}/tizen-unittests/tizen-shared-queue/
211 sed -i -e 's/<NAME>/tizen-shared-queue/g' %{buildroot}%{_bindir}/tizen-unittests/tizen-shared-queue/run-unittest.sh
213 %post -p /sbin/ldconfig
215 %postun -p /sbin/ldconfig
225 %{_bindir}/bundle_unittests
229 %manifest %{name}.manifest
230 %defattr(-,root,root,-)
231 %{_libdir}/libbundle.so.*
235 %manifest %{name}.manifest
236 %defattr(-,root,root,-)
238 %{_libdir}/pkgconfig/bundle.pc
239 %{_libdir}/libbundle.so
241 #################################################
243 #################################################
245 %{_bindir}/bundle_unittests
246 %{_bindir}/tizen-unittests/%{name}/run-unittest.sh
248 #################################################
250 #################################################
253 %{_datadir}/gcov/obj/*
256 #################################################
258 #################################################
260 %manifest parcel.manifest
262 %{_libdir}/libparcel.so.*
264 %files -n parcel-devel
265 %manifest parcel.manifest
266 %{_includedir}/parcel/*
267 %{_libdir}/pkgconfig/parcel.pc
268 %{_libdir}/libparcel.so
270 %files -n parcel-unittests
271 %{_bindir}/parcel_unittests
272 %{_bindir}/tizen-unittests/parcel/run-unittest.sh
274 #################################################
275 # tizen-database-devel
276 #################################################
277 %files -n tizen-database-devel
278 %{_includedir}/tizen-database/*
279 %{_libdir}/pkgconfig/tizen-database.pc
281 %files -n tizen-database-unittests
282 %{_bindir}/tizen-database_unittests
283 %{_bindir}/tizen-unittests/tizen-database/run-unittest.sh
285 #################################################
286 # tizen-shared-queue-devel
287 #################################################
288 %files -n tizen-shared-queue-devel
289 %{_includedir}/tizen-shared-queue/*
290 %{_libdir}/pkgconfig/tizen-shared-queue.pc
292 %files -n tizen-shared-queue-unittests
293 %{_bindir}/tizen-shared-queue_unittests
294 %{_bindir}/tizen-unittests/tizen-shared-queue/run-unittest.sh