Release version 1.8.7
[platform/core/appfw/widget-viewer.git] / packaging / libwidget_viewer.spec
1 %bcond_with wayland
2
3 Name: libwidget_viewer
4 Summary: Library for developing the application
5 Version: 1.8.7
6 Release: 1
7 Group: Applications/Core Applications
8 License: Flora-1.1 and Apache-2.0
9 Source0: %{name}-%{version}.tar.gz
10 Source1001: %{name}_evas.manifest
11 Source1003: org.tizen.widget_viewer_sdk.manifest
12 Source1004: watch-control.manifest
13 Source1005: frame-broker.manifest
14 Source1006: frame-provider.manifest
15 Source1007: watch-holder.manifest
16 Source1008: ambient-viewer.manifest
17 BuildRequires: cmake, gettext-tools, coreutils, edje-bin
18 BuildRequires: pkgconfig(dlog)
19 BuildRequires: pkgconfig(aul)
20 BuildRequires: pkgconfig(glib-2.0)
21 BuildRequires: pkgconfig(gio-2.0)
22 BuildRequires: pkgconfig(sqlite3)
23 BuildRequires: pkgconfig(db-util)
24 BuildRequires: pkgconfig(widget_service)
25 BuildRequires: pkgconfig(vconf)
26 BuildRequires: pkgconfig(elementary)
27 BuildRequires: pkgconfig(pkgmgr-info)
28 BuildRequires: pkgconfig(capi-appfw-application)
29 BuildRequires: pkgconfig(appcore-efl)
30 BuildRequires: pkgconfig(capi-system-info)
31 BuildRequires: pkgconfig(efl-extension)
32 BuildRequires: pkgconfig(wayland-client)
33 BuildRequires: pkgconfig(libtbm)
34 BuildRequires: pkgconfig(libtzplatform-config)
35 BuildRequires: pkgconfig(cynara-client)
36 BuildRequires: pkgconfig(appsvc)
37 BuildRequires: pkgconfig(ecore-wl2)
38 BuildRequires: pkgconfig(wayland-tbm-client)
39 BuildRequires: pkgconfig(screen_connector_watcher_evas)
40 BuildRequires: pkgconfig(capi-system-device)
41 BuildRequires: pkgconfig(gmock)
42 BuildRequires: pkgconfig(screen_connector_launcher_service)
43 BuildRequires: pkgconfig(screen_connector_shared_widget_launch)
44 BuildRequires: pkgconfig(libsmack)
45 BuildRequires: pkgconfig(screen_connector_remote_surface_evas_mock)
46 BuildRequires: pkgconfig(uuid)
47 %if 0%{?gcov:1}
48 BuildRequires:  lcov
49 BuildRequires:  zip
50 %endif
51
52 %description
53 API for creating a new instance of the widget and managing its life-cycle.
54
55 %prep
56 %setup -q
57 cp %{SOURCE1001} .
58 cp %{SOURCE1003} .
59 cp %{SOURCE1004} .
60 cp %{SOURCE1005} .
61 cp %{SOURCE1006} .
62 cp %{SOURCE1007} .
63 cp %{SOURCE1008} .
64
65 %build
66 export CFLAGS+=" -DEFL_BETA_API_SUPPORT "
67 export CXXFLAGS+=" -DEFL_BETA_API_SUPPORT "
68 %if 0%{?gcov:1}
69 export CFLAGS+=" -fprofile-arcs -ftest-coverage"
70 export CXXFLAGS+=" -fprofile-arcs -ftest-coverage"
71 export FFLAGS+=" -fprofile-arcs -ftest-coverage"
72 export LDFLAGS+=" -lgcov"
73 %endif
74
75 MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
76 %cmake -DWIDGET_ENABLED=On \
77         -DTZ_SYS_SHARE=/usr/share \
78         -DFULLVER=%{version} \
79         -DMAJORVER=${MAJORVER} \
80         .
81 make %{?jobs:-j%jobs}
82
83 %if 0%{?gcov:1}
84 mkdir -p gcov-obj
85 find . -name '*.gcno' -exec cp '{}' gcov-obj ';'
86 %endif
87
88 %check
89 ctest -V
90 %if 0%{?gcov:1}
91 lcov -c --ignore-errors graph --no-external -q -d . -o widget-viewer.info
92 genhtml widget-viewer.info -o widget-viewer.out
93 zip -r widget-viewer.zip widget-viewer.out
94 install -m 0644 widget-viewer.zip %{buildroot}%{_datadir}/gcov/
95 %endif
96
97 %install
98 rm -rf %{buildroot}
99 %make_install
100
101 %if 0%{?gcov:1}
102 mkdir -p %{buildroot}%{_datadir}/gcov/obj
103 install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj
104 %endif
105
106 %post -n %{name} -p /sbin/ldconfig
107 %postun -n %{name} -p /sbin/ldconfig
108
109 #################################################
110 # libwidget_viewer_evas
111 %package -n %{name}_evas
112 Summary: Library for developing the widget viewer evas
113 Group: Applications/Core Applications
114 License: Flora-1.1
115
116 %description -n %{name}_evas
117 Provider APIs to develop the widget viewer EFL application.
118
119 %package -n %{name}_evas-devel
120 Summary: Widget provider application development library (dev) (EFL version)
121 Group: Development/Libraries
122 Requires: %{name}_evas
123
124 %description -n %{name}_evas-devel
125 Header & package configuration files to support development of the widget viewer applications. (for EFL app)
126
127 %post -n %{name}_evas -p /sbin/ldconfig
128 %postun -n %{name}_evas -p /sbin/ldconfig
129
130 #################################################
131 # org.tizen.widget_viewer_sdk
132 %package -n org.tizen.widget_viewer_sdk
133 Summary: The widget viewer for development using SDK(IDE)
134 Version: 0.0.1
135 Group: Development/Tools
136 License: Flora-1.1
137 Requires: %{name}_evas
138
139 %description -n org.tizen.widget_viewer_sdk
140 While developing the widget applications, this viewer will load it and execute it to help you to see it on the screen.
141
142 %post -n org.tizen.widget_viewer_sdk -p /sbin/ldconfig
143 %postun -n org.tizen.widget_viewer_sdk -p /sbin/ldconfig
144
145 #################################################
146 # widget-viewer_unittests
147 #################################################
148 %package -n widget-viewer_unittests
149 Summary:    GTest for widget-viewer
150 Group:      Development/Libraries
151
152 %description -n widget-viewer_unittests
153 GTest for widget-viewer
154
155 %files -n widget-viewer_unittests
156 %{_bindir}/widget-viewer_unittests
157
158 #################################################
159 # widget-viewer-gcov
160 #################################################
161 %if 0%{?gcov:1}
162 %package gcov
163 Summary:    Simple string key-val dictionary ADT (gcov)
164 Group:      Application Framework/Testing
165
166 %description gcov
167 Simple string key-val dictionary ADT gcov objects
168 %endif
169
170 %if 0%{?gcov:1}
171 %files gcov
172 %{_datadir}/gcov/*
173 %endif
174
175 ################################################
176 # libwatch_control
177 %package -n watch-control
178 Summary: APIs to control watch applications
179 Version: 0.0.1
180 License: Flora-1.1
181 Group: Applications/Core Applications
182
183 %description -n watch-control
184 A set of APIs to control watch applications
185
186 %package -n watch-control-devel
187 Summary: APIs to control watch applications
188 Group: Development/Libraries
189 Requires: watch-control
190
191 %description -n watch-control-devel
192 Header & package configuration of watch-control
193
194 %post -n watch-control -p /sbin/ldconfig
195 %postun -n watch-control -p /sbin/ldconfig
196
197 ################################################
198 # libwatch_holder
199 %package -n watch-holder
200 Summary: APIs to control watch applications
201 Version: 0.0.1
202 License: Flora-1.1
203 Group: Applications/Core Applications
204
205 %description -n watch-holder
206 A set of APIs to control watch applications
207
208 %package -n watch-holder-devel
209 Summary: APIs to control watch applications
210 Group: Development/Libraries
211 Requires: watch-holder
212
213 %description -n watch-holder-devel
214 Header & package configuration of watch-holder
215
216 %post -n watch-holder -p /sbin/ldconfig
217 %postun -n watch-holder -p /sbin/ldconfig
218
219
220 ################################################
221 # libframe-broker
222 ################################################
223 %package -n frame-broker
224 Summary: APIs to handle launching images for the launcher
225 License: Apache-2.0
226 Group: Applications/Core Applications
227
228 %description -n frame-broker
229 A set of APIs to handle launching images for the launcher
230
231 %package -n frame-broker-devel
232 Summary: APIs to handle launching images for the launcher
233 Group: Development/Libraries
234 Requires: frame-broker
235
236 %description -n frame-broker-devel
237 Header & package configuration of launcher service
238
239 %post -n frame-broker -p /sbin/ldconfig
240 %postun -n frame-broker -p /sbin/ldconfig
241
242 ################################################
243 # libframe-provider
244 ################################################
245 %package -n frame-provider
246 Summary: APIs to handle launching images for the callee
247 License: Apache-2.0
248 Group: Applications/Core Applications
249
250 %description -n frame-provider
251 A set of APIs to handle launching images for the callee
252
253 %package -n frame-provider-devel
254 Summary: APIs to handle launching images for the callee (devel)
255 Group: Development/Libraries
256 Requires: frame-provider
257
258 %description -n frame-provider-devel
259 Header & package configuration for the callee (devel)
260
261 %post -n frame-provider -p /sbin/ldconfig
262 %postun -n frame-provider -p /sbin/ldconfig
263
264 ################################################
265 # libambient-viewer
266 ################################################
267 %package -n ambient-viewer
268 Summary: APIs to control ambient viewer
269 Version: 0.0.1
270 License: apache-2.0
271 Group: Applications/Core Applications
272
273 %description -n ambient-viewer
274 A set of APIs to control viewer applications
275
276 %package -n ambient-viewer-devel
277 Summary: APIs to control watch applications
278 Group: Development/Libraries
279 Requires: ambient-viewer
280
281 %description -n ambient-viewer-devel
282 Header & package configuration of ambient-viewer
283
284 %post -n ambient-viewer -p /sbin/ldconfig
285 %postun -n ambient-viewer -p /sbin/ldconfig
286
287 ################################################
288 # files
289 ################################################
290 %files -n %{name}_evas
291 %manifest %{name}_evas.manifest
292 %attr(0644,root,root) %{_libdir}/%{name}_evas.so.*
293 %license LICENSE.Flora-1.1 LICENSE.Apache-2.0
294 /usr/share/widget_viewer_evas/res/edje/widget_viewer_evas.edj
295 /usr/share/widget_viewer_evas/res/image/*.png
296 /usr/share/widget_viewer_evas/res/locale/*/LC_MESSAGES/*
297 %{_bindir}/widget-mgr
298
299 %files -n %{name}_evas-devel
300 %{_includedir}/widget_viewer_evas/widget_viewer_evas.h
301 %{_includedir}/widget_viewer_evas/widget_viewer_evas_extension.h
302 %{_libdir}/pkgconfig/widget_viewer_evas.pc
303 %attr(0644,root,root) %{_libdir}/%{name}_evas.so
304
305 %files -n org.tizen.widget_viewer_sdk
306 %manifest org.tizen.widget_viewer_sdk.manifest
307 %{_datarootdir}/packages/org.tizen.widget_viewer_sdk.xml
308 %license LICENSE.Flora-1.1 LICENSE.Apache-2.0
309 %{_prefix}/apps/org.tizen.widget_viewer_sdk/*
310
311 %files -n watch-control
312 %manifest watch-control.manifest
313 %license LICENSE.Flora-1.1 LICENSE.Apache-2.0
314 %{_libdir}/libwatch-control.so.*
315
316 %files -n watch-control-devel
317 %{_includedir}/watch-control/*.h
318 %{_libdir}/pkgconfig/watch-control.pc
319 %{_libdir}/libwatch-control.so
320
321 %files -n watch-holder
322 %manifest watch-holder.manifest
323 %license LICENSE.Flora-1.1 LICENSE.Apache-2.0
324 %{_libdir}/libwatch-holder.so.*
325
326 %files -n watch-holder-devel
327 %{_includedir}/watch-holder/*.h
328 %{_includedir}/watch-holder/*.hh
329 %{_libdir}/pkgconfig/watch-holder.pc
330 %{_libdir}/libwatch-holder.so
331
332
333 %files -n frame-broker
334 %manifest frame-broker.manifest
335 %{_libdir}/libframe-broker.so.*
336
337 %files -n frame-broker-devel
338 %{_includedir}/frame-broker/*.h
339 %{_libdir}/pkgconfig/frame-broker.pc
340 %{_libdir}/libframe-broker.so
341
342 %files -n frame-provider
343 %manifest frame-provider.manifest
344 %{_libdir}/libframe-provider.so.*
345
346 %files -n frame-provider-devel
347 %{_includedir}/frame-provider/*.h
348 %{_libdir}/pkgconfig/frame-provider.pc
349 %{_libdir}/libframe-provider.so
350
351 %files -n ambient-viewer
352 %manifest ambient-viewer.manifest
353 %{_libdir}/libambient-viewer.so.*
354
355 %files -n ambient-viewer-devel
356 %{_includedir}/ambient-viewer/*.h
357 %{_includedir}/ambient-viewer/*.hh
358 %{_libdir}/pkgconfig/ambient-viewer.pc
359 %{_libdir}/libambient-viewer.so
360 # End of a file