[Common] Changed configuration for common profile build
[platform/core/api/webapi-plugins.git] / packaging / webapi-plugins.spec
1 %bcond_with wayland
2
3 %define _manifestdir %{TZ_SYS_RW_PACKAGES}
4 %define _desktop_icondir %{TZ_SYS_SHARE}/icons/default/small
5
6 %define crosswalk_extensions tizen-extensions-crosswalk
7
8 %define crosswalk_extensions_path %{_libdir}/%{crosswalk_extensions}
9 %define tizen_ut_build                                       0
10 %define tizen_ut_build_and_run_in_gbs                        0
11
12 %ifarch aarch64
13 ## for aarch64 there is a dlopen failure during dlopen of libcapi-media-image-util.so (one of its dependency):
14 ## [  127s] Error >>/lib64/libgomp.so.1: cannot allocate memory in static TLS block
15 ## to prevent this kind of error, we need to preload this library during runing desc_gentool program
16 %define ld_preload_library LD_PRELOAD=libcapi-media-image-util.so
17 %endif
18
19
20 Name:       webapi-plugins
21 Version:    2.92
22 Release:    0
23 License:    Apache-2.0 and BSD-3-Clause and MIT
24 Group:      Development/Libraries
25 Summary:    Tizen Web APIs implemented
26 Source0:    %{name}-%{version}.tar.gz
27
28 ####################################################################
29 #       Common Profile : #TODO list devices                        #
30 ####################################################################
31
32 %define tizen_common_privilege_engine                        CYNARA
33
34 %define tizen_common_feature_account_support                 1
35 %define tizen_common_feature_alarm_support                   1
36 %define tizen_common_feature_app_control_settings_support    1
37 %define tizen_common_feature_application_support             1
38 %define tizen_common_feature_archive_support                 1
39 %define tizen_common_feature_badge_support                   1
40 %define tizen_common_feature_bluetooth_support               1
41 %define tizen_common_feature_calendar_support                0
42 %define tizen_common_feature_callhistory_support             0
43 %define tizen_common_feature_contact_support                 0
44 %define tizen_common_feature_content_support                 1
45 %define tizen_common_feature_datacontrol_support             1
46 %define tizen_common_feature_datasync_support                0
47 %define tizen_common_feature_download_support                1
48 %define tizen_common_feature_exif_support                    1
49 %define tizen_common_feature_feedback_support                1
50 %define tizen_common_feature_filesystem_support              1
51 %define tizen_common_feature_fm_radio_support                0
52 %define tizen_common_feature_ham_support                     0
53 %define tizen_common_feature_inputdevice_support             1
54 %define tizen_common_feature_iotcon_support                  1
55 %define tizen_common_feature_key_manager_support             1
56 %define tizen_common_feature_location_batch                  0
57 %define tizen_common_feature_media_controller_support        1
58 %define tizen_common_feature_media_key_support               1
59 %define tizen_common_feature_message_port_support            1
60 %define tizen_common_feature_messaging_support               0
61 %define tizen_common_feature_metadata_support                1
62 %define tizen_common_feature_ml_support                      1
63 %define tizen_common_feature_ml_nntrainer_support            1
64 %define tizen_common_feature_nbs_support                     0
65 %define tizen_common_feature_nfc_support                     0
66 %define tizen_common_feature_nfc_emulation_support           0
67 %define tizen_common_feature_notification_support            1
68 %define tizen_common_feature_package_support                 1
69 %define tizen_common_feature_player_util_support             1
70 %define tizen_common_feature_power_support                   0
71 %define tizen_common_feature_ppm_support                     0
72 %define tizen_common_feature_preference_support              1
73 %define tizen_common_feature_push_support                    1
74 %define tizen_common_feature_se_support                      0
75 %define tizen_common_feature_sensor_support                  1
76 %define tizen_common_feature_sound_support                   1
77 %define tizen_common_feature_system_info_support             1
78 %define tizen_common_feature_system_setting_support          1
79 %define tizen_common_feature_telephony_support               0
80 %define tizen_common_feature_time_support                    1
81 %define tizen_common_feature_tvinputdevice_support           0
82 %define tizen_common_feature_voicecontrol_support            1
83 %define tizen_common_feature_web_setting_support             1
84 %define tizen_common_feature_wi_fi_support                   1
85 %define tizen_common_feature_widget_service_support          1
86
87 ####################################################################
88 #       Mobile Profile :  TM1(32bit), Redwood(SM-Z910F), KIRAN(Z130H)          #
89 #                         TM2(64bit)
90 ####################################################################
91
92 %define tizen_mobile_privilege_engine                        CYNARA
93
94 %define tizen_mobile_feature_account_support                 1
95 %define tizen_mobile_feature_alarm_support                   1
96 %define tizen_mobile_feature_app_control_settings_support    1
97 %define tizen_mobile_feature_application_support             1
98 %define tizen_mobile_feature_archive_support                 1
99 %define tizen_mobile_feature_badge_support                   1
100 %define tizen_mobile_feature_bluetooth_support               1
101 %define tizen_mobile_feature_calendar_support                1
102 %define tizen_mobile_feature_contact_support                 1
103 %define tizen_mobile_feature_content_support                 1
104 %define tizen_mobile_feature_datacontrol_support             1
105 %define tizen_mobile_feature_datasync_support                0
106 %define tizen_mobile_feature_download_support                1
107 %define tizen_mobile_feature_exif_support                    1
108 %define tizen_mobile_feature_feedback_support                1
109 %define tizen_mobile_feature_filesystem_support              1
110
111 %ifarch aarch64
112 %define tizen_mobile_feature_fm_radio_support                0
113 %else
114 %define tizen_mobile_feature_fm_radio_support                1
115 %endif
116
117 %define tizen_mobile_feature_ham_support                     0
118 %define tizen_mobile_feature_inputdevice_support             1
119 %define tizen_mobile_feature_iotcon_support                  1
120 %define tizen_mobile_feature_key_manager_support             1
121 %define tizen_mobile_feature_location_batch                  0
122 %define tizen_mobile_feature_media_controller_support        1
123 %define tizen_mobile_feature_media_key_support               1
124 %define tizen_mobile_feature_message_port_support            1
125 %define tizen_mobile_feature_messaging_support               1
126 %define tizen_mobile_feature_metadata_support                1
127 %define tizen_mobile_feature_ml_support                      1
128 %define tizen_mobile_feature_ml_nntrainer_support            1
129 %define tizen_mobile_feature_nfc_support                     0
130 %define tizen_mobile_feature_nfc_emulation_support           0
131 %define tizen_mobile_feature_notification_support            1
132 %define tizen_mobile_feature_package_support                 1
133 %define tizen_mobile_feature_player_util_support             1
134 %define tizen_mobile_feature_power_support                   1
135 %define tizen_mobile_feature_ppm_support                     1
136 %define tizen_mobile_feature_preference_support              1
137 %define tizen_mobile_feature_push_support                    1
138
139 # secure element feature
140 %ifarch aarch64
141 %define tizen_mobile_feature_se_support                      0
142 %else
143 %define tizen_mobile_feature_se_support                      1
144 %endif
145
146 %define tizen_mobile_feature_sensor_support                  1
147 %define tizen_mobile_feature_sound_support                   1
148 %define tizen_mobile_feature_system_info_support             1
149 %define tizen_mobile_feature_system_setting_support          1
150
151 # telephony feature
152 %ifarch aarch64
153 %define tizen_mobile_feature_telephony_support               0
154 %define tizen_mobile_feature_callhistory_support             0
155 %define tizen_mobile_feature_nbs_support                     0
156 %else
157 %define tizen_mobile_feature_telephony_support               1
158 %define tizen_mobile_feature_callhistory_support             1
159 %define tizen_mobile_feature_nbs_support                     1
160 %endif
161
162 %define tizen_mobile_feature_time_support                    1
163 %define tizen_mobile_feature_tvinputdevice_support           0
164 %define tizen_mobile_feature_voicecontrol_support            1
165 %define tizen_mobile_feature_web_setting_support             1
166 %define tizen_mobile_feature_wi_fi_support                   1
167 %define tizen_mobile_feature_widget_service_support          1
168
169 ## Mobile emulator
170
171 %define tizen_mobile_emulator_feature_bluetooth_support      0
172
173 # FM radio feature
174 %define tizen_mobile_emulator_feature_fm_radio_support       1
175
176 %define tizen_mobile_emulator_feature_ham_support            1
177 %define tizen_mobile_emulator_feature_media_key_support      0
178 %define tizen_mobile_emulator_feature_nfc_support            1
179 %define tizen_mobile_emulator_feature_nfc_emulation_support  0
180
181 # secure element feature
182 %define tizen_mobile_emulator_feature_se_support             0
183
184 # telephony feature
185 %define tizen_mobile_emulator_feature_telephony_support      1
186 %define tizen_mobile_emulator_feature_callhistory_support    1
187 %define tizen_mobile_emulator_feature_nbs_support            1
188
189 %define tizen_mobile_emulator_feature_wi_fi_support          0
190
191 ####################################################################
192 #       Wearable Profile :  B2 / TW2                      #
193 ####################################################################
194
195 %define tizen_wearable_privilege_engine                        CYNARA
196
197 # Account API is optional in Tizen Wearable Profile.
198 %define tizen_wearable_feature_account_support                 1
199
200 %define tizen_wearable_feature_alarm_support                   1
201 %define tizen_wearable_feature_app_control_settings_support    1
202 %define tizen_wearable_feature_application_support             1
203
204 # Archive API is optional in Tizen Wearable Profile.
205 %define tizen_wearable_feature_archive_support                 1
206
207 # Badge API is mandatory in Tizen Wearable Profile.
208 %define tizen_wearable_feature_badge_support                   1
209
210 %define tizen_wearable_feature_bluetooth_support               1
211
212 # Calendar API is mandatory in Tizen Wearable Profile.
213 %define tizen_wearable_feature_calendar_support                1
214 %define tizen_wearable_feature_contact_support                 1
215 %define tizen_wearable_feature_content_support                 1
216 %define tizen_wearable_feature_datacontrol_support             1
217 %define tizen_wearable_feature_datasync_support                0
218 %define tizen_wearable_feature_download_support                1
219 %define tizen_wearable_feature_exif_support                    1
220 %define tizen_wearable_feature_feedback_support                1
221 %define tizen_wearable_feature_filesystem_support              1
222 %define tizen_wearable_feature_fm_radio_support                0
223 %define tizen_wearable_feature_ham_support                     1
224 %define tizen_wearable_feature_inputdevice_support             1
225 %define tizen_wearable_feature_iotcon_support                  1
226 %define tizen_wearable_feature_key_manager_support             1
227 %define tizen_wearable_feature_location_batch                  0
228 %define tizen_wearable_feature_media_controller_support        1
229
230 # MediayKey API is optional in Tizen Wearable Profile.
231 # tizen.org/feature/network.bluetooth.audio.media is required for MediayKey API
232 %define tizen_wearable_feature_media_key_support               1
233 %define tizen_wearable_feature_message_port_support            1
234 %define tizen_wearable_feature_messaging_support               0
235 %define tizen_wearable_feature_metadata_support                1
236 %define tizen_wearable_feature_ml_support                      1
237 %define tizen_wearable_feature_ml_nntrainer_support            1
238 %define tizen_wearable_feature_nfc_support                     1
239 %define tizen_wearable_feature_nfc_emulation_support           0
240 %define tizen_wearable_feature_notification_support            1
241 %define tizen_wearable_feature_package_support                 1
242 %define tizen_wearable_feature_player_util_support             1
243 %define tizen_wearable_feature_power_support                   1
244 %define tizen_wearable_feature_ppm_support                     1
245 %define tizen_wearable_feature_preference_support              1
246 %define tizen_wearable_feature_push_support                    1
247 %define tizen_wearable_feature_se_support                      1
248 %define tizen_wearable_feature_sensor_support                  1
249 %define tizen_wearable_feature_sound_support                   1
250 %define tizen_wearable_feature_system_info_support             1
251 %define tizen_wearable_feature_system_setting_support          1
252
253 #- telephony related APIs
254 # CallHistory API is optional in Tizen Wearable Profile.
255 # NetworkBearerSelection API is optional in Tizen Wearable Profile.
256 %define tizen_wearable_feature_telephony_support               0
257 %define tizen_wearable_feature_callhistory_support             0
258 %define tizen_wearable_feature_nbs_support                     0
259
260 %define tizen_wearable_feature_time_support                    1
261 %define tizen_wearable_feature_tvinputdevice_support           0
262 %define tizen_wearable_feature_voicecontrol_support            1
263 %define tizen_wearable_feature_web_setting_support             0
264 %define tizen_wearable_feature_wi_fi_support                   1
265 %define tizen_wearable_feature_widget_service_support          1
266
267 ## Wearable emulator
268
269 %define tizen_wearable_emulator_feature_bluetooth_support      0
270
271 # MediayKey API is optional in Tizen Wearable Profile.
272 # tizen.org/feature/network.bluetooth.audio.media is required for MediayKey API
273 %define tizen_wearable_emulator_feature_media_key_support      0
274
275 #- telephony related APIs
276 # CallHistory API is optional in Tizen Wearable Profile.
277 # NetworkBearerSelection API is optional in Tizen Wearable Profile.
278 %define tizen_wearable_emulator_feature_telephony_support      1
279 %define tizen_wearable_emulator_feature_callhistory_support    1
280 %define tizen_wearable_emulator_feature_nbs_support            1
281
282 %define tizen_wearable_emulator_feature_se_support             0
283 %define tizen_wearable_emulator_feature_sensor_support         1
284
285 ####################################################################
286 #       TV Profile                                                 #
287 ####################################################################
288
289 %define tizen_tv_privilege_engine                        CYNARA
290
291 %define tizen_tv_feature_account_support                 1
292 %define tizen_tv_feature_alarm_support                   1
293 %define tizen_tv_feature_app_control_settings_support    0
294 %define tizen_tv_feature_application_support             1
295 %define tizen_tv_feature_archive_support                 1
296 %define tizen_tv_feature_badge_support                   0
297 %define tizen_tv_feature_bluetooth_support               1
298 %define tizen_tv_feature_calendar_support                0
299 %define tizen_tv_feature_callhistory_support             0
300 %define tizen_tv_feature_contact_support                 0
301 %define tizen_tv_feature_content_support                 1
302 %define tizen_tv_feature_datacontrol_support             1
303 %define tizen_tv_feature_datasync_support                0
304 %define tizen_tv_feature_download_support                1
305 %define tizen_tv_feature_exif_support                    1
306 %define tizen_tv_feature_feedback_support                0
307 %define tizen_tv_feature_filesystem_support              1
308 %define tizen_tv_feature_fm_radio_support                0
309 %define tizen_tv_feature_ham_support                     0
310 %define tizen_tv_feature_inputdevice_support             0
311 %define tizen_tv_feature_iotcon_support                  1
312 %define tizen_tv_feature_key_manager_support             1
313 %define tizen_tv_feature_media_controller_support        1
314 %define tizen_tv_feature_media_key_support               0
315 %define tizen_tv_feature_message_port_support            1
316 %define tizen_tv_feature_messaging_support               0
317 %define tizen_tv_feature_metadata_support                1
318 %define tizen_tv_feature_ml_support                      1
319 # TODO - module supported only on public tv profile now
320 %define tizen_tv_feature_ml_nntrainer_support            1
321 %define tizen_tv_feature_nbs_support                     0
322 %define tizen_tv_feature_nfc_support                     0
323 %define tizen_tv_feature_nfc_emulation_support           0
324 %define tizen_tv_feature_notification_support            0
325 %define tizen_tv_feature_package_support                 1
326 %define tizen_tv_feature_player_util_support             0
327 %define tizen_tv_feature_power_support                   0
328 %define tizen_tv_feature_ppm_support                     0
329 %define tizen_tv_feature_preference_support              0
330 %define tizen_tv_feature_push_support                    1
331 %define tizen_tv_feature_se_support                      0
332 %define tizen_tv_feature_sensor_support                  0
333 %define tizen_tv_feature_sound_support                   0
334 %define tizen_tv_feature_system_info_support             1
335 %define tizen_tv_feature_system_setting_support          0
336 %define tizen_tv_feature_telephony_support               0
337 %define tizen_tv_feature_time_support                    1
338 %define tizen_tv_feature_tvinputdevice_support           1
339 %define tizen_tv_feature_voicecontrol_support            1
340 %define tizen_tv_feature_web_setting_support             1
341 %define tizen_tv_feature_wi_fi_support                   1
342 %define tizen_tv_feature_widget_service_support          0
343
344 # common, or "unified (undefined)"
345 %define unified_build   1
346 # GBM Product Build Optimization. Not for 4.0 Public Unified Build.
347 %if "%{?profile}" == "tv" || "%{?profile}" == "mobile" || "%{?profile}" == "wearable" || "%{?profile}" == "ivi"
348 %define unified_build   0
349 %endif
350
351 # GBM Product Build Optimization. Not for 4.0 Public Unified Build.
352 %if "%{?profile}" == "tv" || "%{?profile}" == "mobile" || "%{?profile}" == "wearable" || "%{?profile}" == "common"
353 %define tizen_privilege_engine                        %{expand:%tizen_%{?profile}_privilege_engine}
354
355 %define tizen_feature_account_support                 %{expand:%tizen_%{?profile}_feature_account_support}
356 %define tizen_feature_alarm_support                   %{expand:%tizen_%{?profile}_feature_alarm_support}
357 %define tizen_feature_app_control_settings_support    %{expand:%tizen_%{?profile}_feature_app_control_settings_support}
358 %define tizen_feature_application_support             %{expand:%tizen_%{?profile}_feature_application_support}
359 %define tizen_feature_archive_support                 %{expand:%tizen_%{?profile}_feature_archive_support}
360 %define tizen_feature_badge_support                   %{expand:%tizen_%{?profile}_feature_badge_support}
361 %define tizen_feature_bluetooth_support               %{expand:%tizen_%{?profile}_feature_bluetooth_support}
362 %define tizen_feature_calendar_support                %{expand:%tizen_%{?profile}_feature_calendar_support}
363 %define tizen_feature_contact_support                 %{expand:%tizen_%{?profile}_feature_contact_support}
364 %define tizen_feature_content_support                 %{expand:%tizen_%{?profile}_feature_content_support}
365 %define tizen_feature_datacontrol_support             %{expand:%tizen_%{?profile}_feature_datacontrol_support}
366 %define tizen_feature_datasync_support                %{expand:%tizen_%{?profile}_feature_datasync_support}
367 %define tizen_feature_download_support                %{expand:%tizen_%{?profile}_feature_download_support}
368 %define tizen_feature_exif_support                    %{expand:%tizen_%{?profile}_feature_exif_support}
369 %define tizen_feature_feedback_support                %{expand:%tizen_%{?profile}_feature_feedback_support}
370 %define tizen_feature_filesystem_support              %{expand:%tizen_%{?profile}_feature_filesystem_support}
371 %define tizen_feature_fm_radio_support                %{expand:%tizen_%{?profile}_feature_fm_radio_support}
372 %define tizen_feature_ham_support                     %{expand:%tizen_%{?profile}_feature_ham_support}
373 %define tizen_feature_iotcon_support                  %{expand:%tizen_%{?profile}_feature_iotcon_support}
374 %define tizen_feature_location_batch                  %{expand:%tizen_%{?profile}_feature_location_batch}
375 %define tizen_feature_key_manager_support             %{expand:%tizen_%{?profile}_feature_key_manager_support}
376 %define tizen_feature_media_controller_support        %{expand:%tizen_%{?profile}_feature_media_controller_support}
377 %define tizen_feature_media_key_support               %{expand:%tizen_%{?profile}_feature_media_key_support}
378 %define tizen_feature_message_port_support            %{expand:%tizen_%{?profile}_feature_message_port_support}
379 %define tizen_feature_messaging_support               %{expand:%tizen_%{?profile}_feature_messaging_support}
380 %define tizen_feature_ml_support                      %{expand:%tizen_%{?profile}_feature_ml_support}
381 %define tizen_feature_ml_nntrainer_support            %{expand:%tizen_%{?profile}_feature_ml_nntrainer_support}
382 %define tizen_feature_nfc_emulation_support           %{expand:%tizen_%{?profile}_feature_nfc_emulation_support}
383 %define tizen_feature_nfc_support                     %{expand:%tizen_%{?profile}_feature_nfc_support}
384 %define tizen_feature_notification_support            %{expand:%tizen_%{?profile}_feature_notification_support}
385 %define tizen_feature_package_support                 %{expand:%tizen_%{?profile}_feature_package_support}
386 %define tizen_feature_player_util_support             %{expand:%tizen_%{?profile}_feature_player_util_support}
387 %define tizen_feature_power_support                   %{expand:%tizen_%{?profile}_feature_power_support}
388 %define tizen_feature_preference_support              %{expand:%tizen_%{?profile}_feature_preference_support}
389 %define tizen_feature_push_support                    %{expand:%tizen_%{?profile}_feature_push_support}
390 %define tizen_feature_se_support                      %{expand:%tizen_%{?profile}_feature_se_support}
391 %define tizen_feature_sensor_support                  %{expand:%tizen_%{?profile}_feature_sensor_support}
392 %define tizen_feature_sound_support                   %{expand:%tizen_%{?profile}_feature_sound_support}
393 %define tizen_feature_system_info_support             %{expand:%tizen_%{?profile}_feature_system_info_support}
394 %define tizen_feature_system_setting_support          %{expand:%tizen_%{?profile}_feature_system_setting_support}
395 %define tizen_feature_telephony_support               %{expand:%tizen_%{?profile}_feature_telephony_support}
396 %define tizen_feature_time_support                    %{expand:%tizen_%{?profile}_feature_time_support}
397 %define tizen_feature_web_setting_support             %{expand:%tizen_%{?profile}_feature_web_setting_support}
398 %define tizen_feature_widget_service_support          %{expand:%tizen_%{?profile}_feature_widget_service_support}
399 %define tizen_feature_wi_fi_support                   %{expand:%tizen_%{?profile}_feature_wi_fi_support}
400 %define tizen_feature_inputdevice_support             %{expand:%tizen_%{?profile}_feature_inputdevice_support}
401 %define tizen_feature_callhistory_support             %{expand:%tizen_%{?profile}_feature_callhistory_support}
402 %define tizen_feature_nbs_support                     %{expand:%tizen_%{?profile}_feature_nbs_support}
403 %define tizen_feature_tvinputdevice_support           %{expand:%tizen_%{?profile}_feature_tvinputdevice_support}
404 %define tizen_feature_voicecontrol_support            %{expand:%tizen_%{?profile}_feature_voicecontrol_support}
405 %define tizen_feature_ppm_support                     %{expand:%tizen_%{?profile}_feature_ppm_support}
406 %endif
407
408 BuildRequires: pkgconfig(security-privilege-manager)
409 BuildRequires: ninja
410 BuildRequires: pkgconfig(appcore-common)
411 BuildRequires: pkgconfig(dlog)
412 BuildRequires: pkgconfig(evas)
413 BuildRequires: pkgconfig(gio-unix-2.0)
414 BuildRequires: pkgconfig(gio-2.0)
415 BuildRequires: pkgconfig(glib-2.0)
416 BuildRequires: pkgconfig(libudev)
417 BuildRequires: pkgconfig(minizip)
418 BuildRequires: pkgconfig(zlib)
419 BuildRequires: pkgconfig(pkgmgr)
420 BuildRequires: pkgconfig(pkgmgr-info)
421 BuildRequires: pkgconfig(pkgmgr-installer)
422 BuildRequires: pkgconfig(vconf)
423 BuildRequires: pkgconfig(ecore)
424 BuildRequires: pkgconfig(icu-i18n)
425 BuildRequires: pkgconfig(aul)
426 BuildRequires: pkgconfig(storage)
427 BuildRequires: python
428 BuildRequires: pkgconfig(capi-base-common)
429 BuildRequires: pkgconfig(capi-system-info)
430 BuildRequires: pkgconfig(capi-system-runtime-info)
431 BuildRequires: pkgconfig(capi-network-connection)
432 BuildRequires: pkgconfig(capi-system-device)
433 BuildRequires: pkgconfig(capi-system-system-settings)
434 BuildRequires: pkgconfig(capi-network-bluetooth)
435 BuildRequires: pkgconfig(capi-network-wifi-manager)
436 BuildRequires: pkgconfig(tapi)
437 BuildRequires: pkgconfig(libpcrecpp)
438 BuildRequires: pkgconfig(capi-appfw-app-common)
439 BuildRequires: pkgconfig(capi-appfw-app-manager)
440 BuildRequires: pkgconfig(capi-appfw-package-manager)
441 BuildRequires: pkgconfig(capi-content-media-content)
442 BuildRequires: pkgconfig(capi-media-metadata-extractor)
443 # TODO check support on TV
444 BuildRequires: pkgconfig(capi-media-image-util)
445
446 BuildRequires: pkgconfig(libtzplatform-config)
447 BuildRequires: pkgconfig(appsvc)
448
449 %if %{with wayland}
450 %define display_type wayland
451 BuildRequires: pkgconfig(wayland-client)
452 %else
453 %define display_type x11
454 #BuildRequires: pkgconfig(x11)
455 #BuildRequires: pkgconfig(xrandr)
456 %endif
457
458 %if "%{?tizen_privilege_engine}" == "ACE"
459 BuildRequires: pkgconfig(security-privilege-checker)
460 %endif
461
462 %if "%{?tizen_privilege_engine}" == "CYNARA" || "%{?unified_build}" == "1"
463 BuildRequires: pkgconfig(cynara-client)
464 BuildRequires: pkgconfig(libsmack)
465 %endif
466
467 %if "%{?tizen_feature_account_support}" == "1" || "%{?unified_build}" == "1"
468 BuildRequires: pkgconfig(accounts-svc)
469 %endif
470
471 %if "%{?tizen_feature_alarm_support}" == "1" || "%{?unified_build}" == "1"
472 BuildRequires: pkgconfig(capi-appfw-app-control)
473 BuildRequires: pkgconfig(capi-appfw-application)
474 BuildRequires: pkgconfig(capi-appfw-alarm)
475 BuildRequires: pkgconfig(alarm-service)
476 %endif
477
478 %if "%{?tizen_feature_application_support}" == "1" || "%{?unified_build}" == "1"
479 BuildRequires: pkgconfig(capi-appfw-app-control)
480 BuildRequires: pkgconfig(capi-appfw-event)
481
482 %if "%{?unified_build}" == "1" || "%{?profile}" == "mobile" || "%{?profile}" == "wearable"
483 BuildRequires: pkgconfig(capi-context)
484 %endif
485
486 %endif
487
488 %if "%{?tizen_feature_bluetooth_support}" == "1" || "%{?unified_build}" == "1"
489 BuildRequires: pkgconfig(capi-appfw-app-control)
490 %endif
491
492 %if "%{?tizen_feature_datacontrol_support}" == "1" || "%{?unified_build}" == "1"
493 BuildRequires: pkgconfig(capi-data-control)
494 %endif
495
496 %if "%{?tizen_feature_download_support}" == "1" || "%{?unified_build}" == "1"
497 BuildRequires: pkgconfig(capi-web-url-download)
498 %endif
499
500 %if "%{?tizen_feature_ham_support}" == "1" || "%{?unified_build}" == "1" || ("%{?profile}" == "mobile" && "%{?tizen_mobile_emulator_feature_ham_support}" == "1")
501 BuildRequires: pkgconfig(motion)
502 BuildRequires: pkgconfig(capi-system-sensor)
503 BuildRequires: pkgconfig(capi-location-manager)
504 BuildRequires: pkgconfig(sensor)
505 %endif
506
507 %if "%{?tizen_feature_iotcon_support}" == "1" || "%{?unified_build}" == "1"
508 BuildRequires: pkgconfig(iotcon)
509 %endif
510
511 %if "%{?tizen_feature_player_util_support}" == "1" || "%{?unified_build}" == "1"
512 BuildRequires: pkgconfig(chromium-efl)
513 %endif
514
515 %if "%{?tizen_feature_power_support}" == "1" || "%{?unified_build}" == "1"
516 BuildRequires: pkgconfig(capi-appfw-application)
517 %endif
518
519 %if "%{?tizen_feature_push_support}" == "1" || "%{?unified_build}" == "1"
520 BuildRequires: pkgconfig(push)
521 BuildRequires: pkgconfig(capi-appfw-app-control)
522 %endif
523
524 %if "%{?tizen_feature_key_manager_support}" == "1" || "%{?unified_build}" == "1"
525 BuildRequires: pkgconfig(key-manager)
526 %endif
527
528 %if "%{?tizen_feature_media_controller_support}" == "1" || "%{?unified_build}" == "1"
529 BuildRequires: pkgconfig(capi-media-controller)
530 %endif
531
532 %if "%{?tizen_feature_messaging_support}" == "1" || "%{?unified_build}" == "1"
533 BuildRequires:  pkgconfig(ecore-file)
534 BuildRequires:  pkgconfig(email-service)
535 BuildRequires:  pkgconfig(msg-service)
536 BuildRequires:  pkgconfig(db-util)
537 %endif
538
539 %if "%{?tizen_feature_ml_support}" == "1" || "%{?unified_build}" == "1"
540 BuildRequires: pkgconfig(nnstreamer)
541 BuildRequires: pkgconfig(capi-ml-inference)
542 %endif
543
544 %if "%{?tizen_feature_ml_nntrainer_support}" == "1" || "%{?unified_build}" == "1"
545 BuildRequires: pkgconfig(nntrainer)
546 BuildRequires: pkgconfig(capi-ml-training)
547 %endif
548
549
550 %if "%{?tizen_feature_badge_support}" == "1" || "%{?unified_build}" == "1"
551 BuildRequires:  pkgconfig(badge)
552 %endif
553
554 %if "%{?tizen_feature_calendar_support}" == "1" || "%{?unified_build}" == "1"
555 BuildRequires:  pkgconfig(calendar-service2)
556 %endif
557
558 %if "%{?tizen_feature_contact_support}" == "1" || "%{?unified_build}" == "1"
559 BuildRequires:  pkgconfig(contacts-service2)
560 %endif
561
562 %if "%{?tizen_feature_callhistory_support}" == "1" || "%{?unified_build}" == "1" || ("%{?profile}" == "mobile" && "%{?tizen_mobile_emulator_feature_callhistory_support}" == "1") || ("%{?profile}" == "wearable" && "%{?tizen_wearable_emulator_feature_callhistory_support}" == "1")
563 BuildRequires:  pkgconfig(contacts-service2)
564 %endif
565
566 %if "%{?tizen_feature_exif_support}" == "1" || "%{?unified_build}" == "1"
567 BuildRequires:  pkgconfig(libexif)
568 %endif
569
570 %if "%{?tizen_feature_nfc_support}" == "1" || "%{?unified_build}" == "1" || ("%{?profile}" == "mobile" && "%{?tizen_mobile_emulator_feature_nfc_support}" == "1")
571 BuildRequires:  pkgconfig(capi-network-nfc)
572 BuildRequires:  pkgconfig(capi-appfw-app-control)
573 %endif
574
575 %if "%{?tizen_feature_fm_radio_support}" == "1" || "%{?unified_build}" == "1" || ("%{?profile}" == "mobile" && "%{?tizen_mobile_emulator_feature_fm_radio_support}" == "1")
576 BuildRequires: pkgconfig(capi-media-radio)
577 %endif
578
579 %if "%{?tizen_feature_feedback_support}" == "1" || "%{?unified_build}" == "1"
580 BuildRequires: pkgconfig(feedback)
581 %endif
582
583 %if "%{?tizen_feature_se_support}" == "1" || "%{?unified_build}" == "1"
584 BuildRequires:  pkgconfig(capi-network-smartcard)
585 %endif
586
587 %if "%{?tizen_feature_message_port_support}" == "1" || "%{?unified_build}" == "1"
588 BuildRequires: pkgconfig(capi-message-port)
589 %endif
590
591 %if "%{?tizen_feature_notification_support}" == "1" || "%{?unified_build}" == "1"
592 BuildRequires: pkgconfig(notification)
593 BuildRequires: pkgconfig(capi-appfw-app-control)
594 %endif
595
596 %if "%{?tizen_feature_preference_support}" == "1" || "%{?unified_build}" == "1"
597 BuildRequires: pkgconfig(capi-appfw-preference)
598 %endif
599
600 %if "%{?tizen_feature_sound_support}" == "1" || "%{?unified_build}" == "1"
601 BuildRequires:  pkgconfig(capi-media-sound-manager)
602 %endif
603
604 %if "%{?tizen_feature_sensor_support}" == "1" || "%{?unified_build}" == "1" || ("%{?profile}" == "wearable" && "%{?tizen_wearable_emulator_feature_sensor_support}" == "1")
605 BuildRequires: pkgconfig(capi-system-sensor)
606 %endif
607
608 %if "%{?tizen_feature_media_key_support}" == "1" || "%{?unified_build}" == "1"
609 BuildRequires:  pkgconfig(capi-system-media-key)
610 %endif
611
612 %if "%{?tizen_feature_widget_service_support}" == "1" || "%{?unified_build}" == "1"
613 BuildRequires: pkgconfig(widget_service)
614 %endif
615
616 %if "%{?tizen_feature_voicecontrol_support}" == "1" || "%{?unified_build}" == "1"
617 BuildRequires: pkgconfig(voice-control)
618 %endif
619
620 %if "%{?tizen_feature_ppm_support}" == "1" || "%{?unified_build}" == "1"
621 BuildRequires: pkgconfig(capi-privacy-privilege-manager)
622 %endif
623
624 Requires:      %{name}-compat = %{version}-%{release}
625 %if "%{?unified_build}" == "1"
626 Recommends:    %{name}-profile_common = %{version}-%{release}
627 %endif
628
629 %description
630 Tizen Web APIs implemented.
631
632 %package profile_common
633 Summary:       webapi-plugin binaries for common profile
634 Provides:      %{name}-compat = %{version}-%{release}
635 Conflicts:     %{name}-profile_mobile
636 Conflicts:     %{name}-profile_wearable
637 Conflicts:     %{name}-profile_tv
638 Conflicts:     %{name}-profile_ivi
639 %description profile_common
640 Tizen Web API implementation binaries for Tizen common profile.
641
642 %package profile_mobile
643 Summary:       webapi-plugin binaries for mobile profile
644 Provides:      %{name}-compat = %{version}-%{release}
645 Conflicts:     %{name}-profile_common
646 Conflicts:     %{name}-profile_wearable
647 Conflicts:     %{name}-profile_tv
648 Conflicts:     %{name}-profile_ivi
649 %description profile_mobile
650 Tizen Web API implementation binaries for Tizen mobile profile.
651
652 %ifarch %{ix86} x86_64
653 %package mobile-extension-emulator
654 Summary:       webapi-plugin binaries for mobile emulator
655 Requires:      %{name}-profile_mobile = %{version}-%{release}
656 %description mobile-extension-emulator
657 Tizen Web API implementation binaries for Tizen mobile emulator.
658 %endif
659
660 %package profile_wearable
661 Summary:       webapi-plugin binaries for wearable profile
662 Provides:      %{name}-compat = %{version}-%{release}
663 Conflicts:     %{name}-profile_mobile
664 Conflicts:     %{name}-profile_common
665 Conflicts:     %{name}-profile_tv
666 Conflicts:     %{name}-profile_ivi
667 %description profile_wearable
668 Tizen Web API implementation binaries for Tizen wearable profile.
669
670 %ifarch %{ix86} x86_64
671 %package wearable-extension-emulator
672 Summary:       webapi-plugin binaries for wearable emulator
673 Requires:      %{name}-profile_wearable = %{version}-%{release}
674 %description wearable-extension-emulator
675 Tizen Web API implementation binaries for Tizen wearable emulator.
676 %endif
677
678 %package profile_tv
679 Summary:       webapi-plugin binaries for tv profile
680 Provides:      %{name}-compat = %{version}-%{release}
681 Conflicts:     %{name}-profile_mobile
682 Conflicts:     %{name}-profile_wearable
683 Conflicts:     %{name}-profile_common
684 Conflicts:     %{name}-profile_ivi
685 %description profile_tv
686 Tizen Web API implementation binaries for Tizen tv profile.
687
688 %package profile_ivi
689 Summary:       webapi-plugin binaries for ivi profile
690 Provides:      %{name}-compat = %{version}-%{release}
691 Conflicts:     %{name}-profile_mobile
692 Conflicts:     %{name}-profile_wearable
693 Conflicts:     %{name}-profile_tv
694 Conflicts:     %{name}-profile_common
695 %description profile_ivi
696 Tizen Web API implementation binaries for Tizen ivi profile.
697
698 %package devel
699 Summary:    webapi-plugins development headers
700 Group:      Development/Libraries
701 Requires:   %{name} = %{version}
702
703 %description devel
704 webapi-plugins development headers
705
706 %prep
707 %setup -q
708
709 %build
710
711 export GYP_GENERATORS='ninja'
712
713 %if "%{?unified_build}" == "1" || "%{?profile}" == "mobile"
714 # MOBILE
715 GYP_OPTIONS="--depth=. -Dtizen=1 -Dextension_build_type=Debug -Dextension_host_os=mobile -Dprivilege_engine=%{tizen_mobile_privilege_engine}"
716 GYP_OPTIONS="$GYP_OPTIONS -Ddisplay_type=%{display_type}"
717 GYP_OPTIONS="$GYP_OPTIONS -Dcrosswalk_extensions_path=%{crosswalk_extensions_path}"
718
719 # ut flags
720 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_ut_build=%{tizen_ut_build}"
721 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_ut_build_and_run_in_gbs=%{tizen_ut_build_and_run_in_gbs}"
722
723 # feature flags
724 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_account_support=%{?tizen_mobile_feature_account_support}"
725 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_alarm_support=%{?tizen_mobile_feature_alarm_support}"
726 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_app_control_settings_support=%{?tizen_mobile_feature_app_control_settings_support}"
727 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_application_support=%{?tizen_mobile_feature_application_support}"
728 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_archive_support=%{?tizen_mobile_feature_archive_support}"
729 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_badge_support=%{?tizen_mobile_feature_badge_support}"
730 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_bluetooth_support=%{?tizen_mobile_feature_bluetooth_support}"
731 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_calendar_support=%{?tizen_mobile_feature_calendar_support}"
732 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_callhistory_support=%{?tizen_mobile_feature_callhistory_support}"
733 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_contact_support=%{?tizen_mobile_feature_contact_support}"
734 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_content_support=%{?tizen_mobile_feature_content_support}"
735 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_datacontrol_support=%{?tizen_mobile_feature_datacontrol_support}"
736 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_datasync_support=%{?tizen_mobile_feature_datasync_support}"
737 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_download_support=%{?tizen_mobile_feature_download_support}"
738 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_exif_support=%{?tizen_mobile_feature_exif_support}"
739 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_feedback_support=%{?tizen_mobile_feature_feedback_support}"
740 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_filesystem_support=%{?tizen_mobile_feature_filesystem_support}"
741 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_fm_radio_support=%{?tizen_mobile_feature_fm_radio_support}"
742 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ham_support=%{?tizen_mobile_feature_ham_support}"
743 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_iotcon_support=%{?tizen_mobile_feature_iotcon_support}"
744 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_location_batch=%{?tizen_mobile_feature_location_batch}"
745 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_key_manager_support=%{?tizen_mobile_feature_key_manager_support}"
746 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_media_controller_support=%{?tizen_mobile_feature_media_controller_support}"
747 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_media_key_support=%{?tizen_mobile_feature_media_key_support}"
748 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_message_port_support=%{?tizen_mobile_feature_message_port_support}"
749 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_messaging_support=%{?tizen_mobile_feature_messaging_support}"
750 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_metadata_support=%{?tizen_mobile_feature_metadata_support}"
751 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ml_support=%{?tizen_mobile_feature_ml_support}"
752 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ml_nntrainer_support=%{?tizen_mobile_feature_ml_nntrainer_support}"
753 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_nbs_support=%{?tizen_mobile_feature_nbs_support}"
754 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_nfc_emulation_support=%{?tizen_mobile_feature_nfc_emulation_support}"
755 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_nfc_support=%{?tizen_mobile_feature_nfc_support}"
756 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_notification_support=%{?tizen_mobile_feature_notification_support}"
757 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_package_support=%{?tizen_mobile_feature_package_support}"
758 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_player_util_support=%{?tizen_mobile_feature_player_util_support}"
759 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_power_support=%{?tizen_mobile_feature_power_support}"
760 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ppm_support=%{?tizen_mobile_feature_ppm_support}"
761 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_preference_support=%{?tizen_mobile_feature_preference_support}"
762 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_push_support=%{?tizen_mobile_feature_push_support}"
763 #GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_sap_support=%{?tizen_mobile_feature_sap_support}"
764 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_sensor_support=%{?tizen_mobile_feature_sensor_support}"
765 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_se_support=%{?tizen_mobile_feature_se_support}"
766 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_sound_support=%{?tizen_mobile_feature_sound_support}"
767 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_system_info_support=%{?tizen_mobile_feature_system_info_support}"
768 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_system_setting_support=%{?tizen_mobile_feature_system_setting_support}"
769 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_telephony_support=%{?tizen_mobile_feature_telephony_support}"
770 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_time_support=%{?tizen_mobile_feature_time_support}"
771 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_inputdevice_support=%{?tizen_mobile_feature_inputdevice_support}"
772 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_web_setting_support=%{?tizen_mobile_feature_web_setting_support}"
773 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_widget_service_support=%{?tizen_mobile_feature_widget_service_support}"
774 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_wi_fi_support=%{?tizen_mobile_feature_wi_fi_support}"
775 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_tvinputdevice_support=%{?tizen_mobile_feature_tvinputdevice_support}"
776 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_voicecontrol_support=%{?tizen_mobile_feature_voicecontrol_support}"
777
778 ./tools/gyp/gyp $GYP_OPTIONS src/tizen-wrt.gyp
779
780 ninja -C out/Default %{?_smp_mflags}
781 pushd out
782 mv Default bin_mobile
783 popd
784
785 # mobile-extension-emulator
786 %ifarch %{ix86} x86_64
787
788 %define tizen_mobile_feature_bluetooth_support               %{?tizen_mobile_emulator_feature_bluetooth_support}
789
790 # FM radio feature
791 %define tizen_mobile_feature_fm_radio_support                %{?tizen_mobile_emulator_feature_fm_radio_support}
792
793 %define tizen_mobile_feature_ham_support                     %{?tizen_mobile_emulator_feature_ham_support}
794 %define tizen_mobile_feature_media_key_support               %{?tizen_mobile_emulator_feature_media_key_support}
795 %define tizen_mobile_feature_nfc_emulation_support           %{?tizen_mobile_emulator_feature_nfc_emulation_support}
796 %define tizen_mobile_feature_nfc_support                     %{?tizen_mobile_emulator_feature_nfc_support}
797
798 # secure element feature
799 %define tizen_mobile_feature_se_support                      %{?tizen_mobile_emulator_feature_se_support}
800
801 # telephony feature
802 %define tizen_mobile_feature_telephony_support               %{?tizen_mobile_emulator_feature_telephony_support}
803 %define tizen_mobile_feature_callhistory_support             %{?tizen_mobile_emulator_feature_callhistory_support}
804 %define tizen_mobile_feature_nbs_support                     %{?tizen_mobile_emulator_feature_nbs_support}
805
806 %define tizen_mobile_feature_wi_fi_support                   %{?tizen_mobile_emulator_feature_wi_fi_support}
807
808 GYP_OPTIONS="--depth=. -Dtizen=1 -Dextension_build_type=Debug -Dextension_host_os=mobile -Dprivilege_engine=%{tizen_mobile_privilege_engine}"
809 GYP_OPTIONS="$GYP_OPTIONS -Ddisplay_type=%{display_type}"
810 GYP_OPTIONS="$GYP_OPTIONS -Dcrosswalk_extensions_path=%{crosswalk_extensions_path}"
811
812 # ut flags
813 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_ut_build=%{tizen_ut_build}"
814 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_ut_build_and_run_in_gbs=%{tizen_ut_build_and_run_in_gbs}"
815
816 # feature flags
817 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_account_support=%{?tizen_mobile_feature_account_support}"
818 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_alarm_support=%{?tizen_mobile_feature_alarm_support}"
819 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_app_control_settings_support=%{?tizen_mobile_feature_app_control_settings_support}"
820 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_application_support=%{?tizen_mobile_feature_application_support}"
821 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_archive_support=%{?tizen_mobile_feature_archive_support}"
822 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_badge_support=%{?tizen_mobile_feature_badge_support}"
823 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_bluetooth_support=%{?tizen_mobile_feature_bluetooth_support}"
824 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_calendar_support=%{?tizen_mobile_feature_calendar_support}"
825 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_callhistory_support=%{?tizen_mobile_feature_callhistory_support}"
826 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_contact_support=%{?tizen_mobile_feature_contact_support}"
827 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_content_support=%{?tizen_mobile_feature_content_support}"
828 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_datacontrol_support=%{?tizen_mobile_feature_datacontrol_support}"
829 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_datasync_support=%{?tizen_mobile_feature_datasync_support}"
830 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_download_support=%{?tizen_mobile_feature_download_support}"
831 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_exif_support=%{?tizen_mobile_feature_exif_support}"
832 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_feedback_support=%{?tizen_mobile_feature_feedback_support}"
833 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_filesystem_support=%{?tizen_mobile_feature_filesystem_support}"
834 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_fm_radio_support=%{?tizen_mobile_feature_fm_radio_support}"
835 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ham_support=%{?tizen_mobile_feature_ham_support}"
836 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_iotcon_support=%{?tizen_mobile_feature_iotcon_support}"
837 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_location_batch=%{?tizen_mobile_feature_location_batch}"
838 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_key_manager_support=%{?tizen_mobile_feature_key_manager_support}"
839 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_media_controller_support=%{?tizen_mobile_feature_media_controller_support}"
840 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_media_key_support=%{?tizen_mobile_feature_media_key_support}"
841 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_message_port_support=%{?tizen_mobile_feature_message_port_support}"
842 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_messaging_support=%{?tizen_mobile_feature_messaging_support}"
843 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_metadata_support=%{?tizen_mobile_feature_metadata_support}"
844 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ml_support=%{?tizen_mobile_feature_ml_support}"
845 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ml_nntrainer_support=%{?tizen_mobile_feature_ml_nntrainer_support}"
846 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_nbs_support=%{?tizen_mobile_feature_nbs_support}"
847 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_nfc_emulation_support=%{?tizen_mobile_feature_nfc_emulation_support}"
848 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_nfc_support=%{?tizen_mobile_feature_nfc_support}"
849 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_notification_support=%{?tizen_mobile_feature_notification_support}"
850 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_package_support=%{?tizen_mobile_feature_package_support}"
851 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_player_util_support=%{?tizen_mobile_feature_player_util_support}"
852 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_power_support=%{?tizen_mobile_feature_power_support}"
853 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ppm_support=%{?tizen_mobile_feature_ppm_support}"
854 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_preference_support=%{?tizen_mobile_feature_preference_support}"
855 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_push_support=%{?tizen_mobile_feature_push_support}"
856 #GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_sap_support=%{?tizen_mobile_feature_sap_support}"
857 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_sensor_support=%{?tizen_mobile_feature_sensor_support}"
858 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_se_support=%{?tizen_mobile_feature_se_support}"
859 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_sound_support=%{?tizen_mobile_feature_sound_support}"
860 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_system_info_support=%{?tizen_mobile_feature_system_info_support}"
861 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_system_setting_support=%{?tizen_mobile_feature_system_setting_support}"
862 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_telephony_support=%{?tizen_mobile_feature_telephony_support}"
863 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_time_support=%{?tizen_mobile_feature_time_support}"
864 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_inputdevice_support=%{?tizen_mobile_feature_inputdevice_support}"
865 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_web_setting_support=%{?tizen_mobile_feature_web_setting_support}"
866 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_widget_service_support=%{?tizen_mobile_feature_widget_service_support}"
867 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_wi_fi_support=%{?tizen_mobile_feature_wi_fi_support}"
868 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_tvinputdevice_support=%{?tizen_mobile_feature_tvinputdevice_support}"
869 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_voicecontrol_support=%{?tizen_mobile_feature_voicecontrol_support}"
870
871 ./tools/gyp/gyp $GYP_OPTIONS src/tizen-wrt.gyp
872
873 ninja -C out/Default %{?_smp_mflags}
874 pushd out
875 mv Default bin_mobile_emulator
876 popd
877 %endif # mobile-extension-emulator
878
879 pushd out
880 %if "%{?profile}" == "mobile"
881 ln -sf bin_mobile Default
882 %endif
883 popd
884
885 %endif # MOBILE
886
887 %if "%{?unified_build}" == "1" || "%{?profile}" == "wearable"
888 # WEARABLE
889 GYP_OPTIONS="--depth=. -Dtizen=1 -Dextension_build_type=Debug -Dextension_host_os=wearable -Dprivilege_engine=%{tizen_wearable_privilege_engine}"
890 GYP_OPTIONS="$GYP_OPTIONS -Ddisplay_type=%{display_type}"
891 GYP_OPTIONS="$GYP_OPTIONS -Dcrosswalk_extensions_path=%{crosswalk_extensions_path}"
892
893 # ut flags
894 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_ut_build=%{tizen_ut_build}"
895 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_ut_build_and_run_in_gbs=%{tizen_ut_build_and_run_in_gbs}"
896
897 # feature flags
898 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_account_support=%{?tizen_wearable_feature_account_support}"
899 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_alarm_support=%{?tizen_wearable_feature_alarm_support}"
900 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_app_control_settings_support=%{?tizen_wearable_feature_app_control_settings_support}"
901 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_application_support=%{?tizen_wearable_feature_application_support}"
902 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_archive_support=%{?tizen_wearable_feature_archive_support}"
903 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_badge_support=%{?tizen_wearable_feature_badge_support}"
904 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_bluetooth_support=%{?tizen_wearable_feature_bluetooth_support}"
905 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_calendar_support=%{?tizen_wearable_feature_calendar_support}"
906 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_callhistory_support=%{?tizen_wearable_feature_callhistory_support}"
907 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_contact_support=%{?tizen_wearable_feature_contact_support}"
908 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_content_support=%{?tizen_wearable_feature_content_support}"
909 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_datacontrol_support=%{?tizen_wearable_feature_datacontrol_support}"
910 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_datasync_support=%{?tizen_wearable_feature_datasync_support}"
911 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_download_support=%{?tizen_wearable_feature_download_support}"
912 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_exif_support=%{?tizen_wearable_feature_exif_support}"
913 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_feedback_support=%{?tizen_wearable_feature_feedback_support}"
914 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_filesystem_support=%{?tizen_wearable_feature_filesystem_support}"
915 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_fm_radio_support=%{?tizen_wearable_feature_fm_radio_support}"
916 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ham_support=%{?tizen_wearable_feature_ham_support}"
917 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_iotcon_support=%{?tizen_wearable_feature_iotcon_support}"
918 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_location_batch=%{?tizen_wearable_feature_location_batch}"
919 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_key_manager_support=%{?tizen_wearable_feature_key_manager_support}"
920 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_media_controller_support=%{?tizen_wearable_feature_media_controller_support}"
921 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_media_key_support=%{?tizen_wearable_feature_media_key_support}"
922 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_message_port_support=%{?tizen_wearable_feature_message_port_support}"
923 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_messaging_support=%{?tizen_wearable_feature_messaging_support}"
924 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_metadata_support=%{?tizen_wearable_feature_metadata_support}"
925 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ml_support=%{?tizen_wearable_feature_ml_support}"
926 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ml_nntrainer_support=%{?tizen_wearable_feature_ml_nntrainer_support}"
927 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_nbs_support=%{?tizen_wearable_feature_nbs_support}"
928 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_nfc_emulation_support=%{?tizen_wearable_feature_nfc_emulation_support}"
929 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_nfc_support=%{?tizen_wearable_feature_nfc_support}"
930 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_notification_support=%{?tizen_wearable_feature_notification_support}"
931 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_package_support=%{?tizen_wearable_feature_package_support}"
932 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_player_util_support=%{?tizen_wearable_feature_player_util_support}"
933 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_power_support=%{?tizen_wearable_feature_power_support}"
934 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ppm_support=%{?tizen_wearable_feature_ppm_support}"
935 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_preference_support=%{?tizen_wearable_feature_preference_support}"
936 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_push_support=%{?tizen_wearable_feature_push_support}"
937 #GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_sap_support=%{?tizen_wearable_feature_sap_support}"
938 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_sensor_support=%{?tizen_wearable_feature_sensor_support}"
939 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_se_support=%{?tizen_wearable_feature_se_support}"
940 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_sound_support=%{?tizen_wearable_feature_sound_support}"
941 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_system_info_support=%{?tizen_wearable_feature_system_info_support}"
942 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_system_setting_support=%{?tizen_wearable_feature_system_setting_support}"
943 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_telephony_support=%{?tizen_wearable_feature_telephony_support}"
944 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_time_support=%{?tizen_wearable_feature_time_support}"
945 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_inputdevice_support=%{?tizen_wearable_feature_inputdevice_support}"
946 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_web_setting_support=%{?tizen_wearable_feature_web_setting_support}"
947 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_widget_service_support=%{?tizen_wearable_feature_widget_service_support}"
948 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_wi_fi_support=%{?tizen_wearable_feature_wi_fi_support}"
949 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_tvinputdevice_support=%{?tizen_wearable_feature_tvinputdevice_support}"
950 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_voicecontrol_support=%{?tizen_wearable_feature_voicecontrol_support}"
951
952 ./tools/gyp/gyp $GYP_OPTIONS src/tizen-wrt.gyp
953
954 ninja -C out/Default %{?_smp_mflags}
955 pushd out
956 mv Default bin_wearable
957 popd
958
959 # wearable-extension-emulator
960 %ifarch %{ix86} x86_64
961
962 %define tizen_wearable_feature_bluetooth_support             %{?tizen_wearable_emulator_feature_bluetooth_support}
963
964 # MediayKey API is optional in Tizen Wearable Profile.
965 # tizen.org/feature/network.bluetooth.audio.media is required for MediayKey API
966 %define tizen_wearable_feature_media_key_support             %{?tizen_wearable_emulator_feature_media_key_support}
967
968 #- telephony related APIs
969 # CallHistory API is optional in Tizen Wearable Profile.
970 # NetworkBearerSelection API is optional in Tizen Wearable Profile.
971 %define tizen_wearable_feature_se_support                    %{?tizen_wearable_emulator_feature_se_support}
972 %define tizen_wearable_feature_telephony_support             %{?tizen_wearable_emulator_feature_telephony_support}
973 %define tizen_wearable_feature_callhistory_support           %{?tizen_wearable_emulator_feature_callhistory_support}
974 %define tizen_wearable_feature_nbs_support                   %{?tizen_wearable_emulator_feature_nbs_support}
975 %define tizen_wearable_feature_sensor_support                %{?tizen_wearable_emulator_feature_sensor_support}
976
977 GYP_OPTIONS="--depth=. -Dtizen=1 -Dextension_build_type=Debug -Dextension_host_os=wearable -Dprivilege_engine=%{tizen_wearable_privilege_engine}"
978 GYP_OPTIONS="$GYP_OPTIONS -Ddisplay_type=%{display_type}"
979 GYP_OPTIONS="$GYP_OPTIONS -Dcrosswalk_extensions_path=%{crosswalk_extensions_path}"
980
981 # ut flags
982 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_ut_build=%{tizen_ut_build}"
983 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_ut_build_and_run_in_gbs=%{tizen_ut_build_and_run_in_gbs}"
984
985 # feature flags
986 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_account_support=%{?tizen_wearable_feature_account_support}"
987 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_alarm_support=%{?tizen_wearable_feature_alarm_support}"
988 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_app_control_settings_support=%{?tizen_wearable_feature_app_control_settings_support}"
989 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_application_support=%{?tizen_wearable_feature_application_support}"
990 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_archive_support=%{?tizen_wearable_feature_archive_support}"
991 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_badge_support=%{?tizen_wearable_feature_badge_support}"
992 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_bluetooth_support=%{?tizen_wearable_feature_bluetooth_support}"
993 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_calendar_support=%{?tizen_wearable_feature_calendar_support}"
994 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_callhistory_support=%{?tizen_wearable_feature_callhistory_support}"
995 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_contact_support=%{?tizen_wearable_feature_contact_support}"
996 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_content_support=%{?tizen_wearable_feature_content_support}"
997 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_datacontrol_support=%{?tizen_wearable_feature_datacontrol_support}"
998 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_datasync_support=%{?tizen_wearable_feature_datasync_support}"
999 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_download_support=%{?tizen_wearable_feature_download_support}"
1000 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_exif_support=%{?tizen_wearable_feature_exif_support}"
1001 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_feedback_support=%{?tizen_wearable_feature_feedback_support}"
1002 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_filesystem_support=%{?tizen_wearable_feature_filesystem_support}"
1003 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_fm_radio_support=%{?tizen_wearable_feature_fm_radio_support}"
1004 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ham_support=%{?tizen_wearable_feature_ham_support}"
1005 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_iotcon_support=%{?tizen_wearable_feature_iotcon_support}"
1006 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_location_batch=%{?tizen_wearable_feature_location_batch}"
1007 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_key_manager_support=%{?tizen_wearable_feature_key_manager_support}"
1008 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_media_controller_support=%{?tizen_wearable_feature_media_controller_support}"
1009 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_media_key_support=%{?tizen_wearable_feature_media_key_support}"
1010 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_message_port_support=%{?tizen_wearable_feature_message_port_support}"
1011 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_messaging_support=%{?tizen_wearable_feature_messaging_support}"
1012 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_metadata_support=%{?tizen_wearable_feature_metadata_support}"
1013 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ml_support=%{?tizen_wearable_feature_ml_support}"
1014 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ml_nntrainer_support=%{?tizen_wearable_feature_ml_nntrainer_support}"
1015 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_nbs_support=%{?tizen_wearable_feature_nbs_support}"
1016 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_nfc_emulation_support=%{?tizen_wearable_feature_nfc_emulation_support}"
1017 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_nfc_support=%{?tizen_wearable_feature_nfc_support}"
1018 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_notification_support=%{?tizen_wearable_feature_notification_support}"
1019 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_package_support=%{?tizen_wearable_feature_package_support}"
1020 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_player_util_support=%{?tizen_wearable_feature_player_util_support}"
1021 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_power_support=%{?tizen_wearable_feature_power_support}"
1022 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ppm_support=%{?tizen_wearable_feature_ppm_support}"
1023 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_preference_support=%{?tizen_wearable_feature_preference_support}"
1024 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_push_support=%{?tizen_wearable_feature_push_support}"
1025 #GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_sap_support=%{?tizen_wearable_feature_sap_support}"
1026 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_sensor_support=%{?tizen_wearable_feature_sensor_support}"
1027 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_se_support=%{?tizen_wearable_feature_se_support}"
1028 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_sound_support=%{?tizen_wearable_feature_sound_support}"
1029 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_system_info_support=%{?tizen_wearable_feature_system_info_support}"
1030 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_system_setting_support=%{?tizen_wearable_feature_system_setting_support}"
1031 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_telephony_support=%{?tizen_wearable_feature_telephony_support}"
1032 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_time_support=%{?tizen_wearable_feature_time_support}"
1033 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_inputdevice_support=%{?tizen_wearable_feature_inputdevice_support}"
1034 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_web_setting_support=%{?tizen_wearable_feature_web_setting_support}"
1035 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_widget_service_support=%{?tizen_wearable_feature_widget_service_support}"
1036 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_wi_fi_support=%{?tizen_wearable_feature_wi_fi_support}"
1037 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_tvinputdevice_support=%{?tizen_wearable_feature_tvinputdevice_support}"
1038 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_voicecontrol_support=%{?tizen_wearable_feature_voicecontrol_support}"
1039
1040 ./tools/gyp/gyp $GYP_OPTIONS src/tizen-wrt.gyp
1041
1042 ninja -C out/Default %{?_smp_mflags}
1043 pushd out
1044 mv Default bin_wearable_emulator
1045 popd
1046 %endif # wearable-extension-emulator
1047
1048 pushd out
1049 %if "%{?profile}" == "wearable"
1050 ln -sf bin_wearable Default
1051 %endif
1052 popd
1053
1054 %endif # WEARABLE
1055
1056 %if "%{?unified_build}" == "1" || "%{?profile}" == "tv"
1057 # TV
1058 GYP_OPTIONS="--depth=. -Dtizen=1 -Dextension_build_type=Debug -Dextension_host_os=tv -Dprivilege_engine=%{tizen_tv_privilege_engine}"
1059 GYP_OPTIONS="$GYP_OPTIONS -Ddisplay_type=%{display_type}"
1060 GYP_OPTIONS="$GYP_OPTIONS -Dcrosswalk_extensions_path=%{crosswalk_extensions_path}"
1061
1062 # ut flags
1063 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_ut_build=%{tizen_ut_build}"
1064 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_ut_build_and_run_in_gbs=%{tizen_ut_build_and_run_in_gbs}"
1065
1066 # feature flags
1067 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_account_support=%{?tizen_tv_feature_account_support}"
1068 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_alarm_support=%{?tizen_tv_feature_alarm_support}"
1069 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_app_control_settings_support=%{?tizen_tv_feature_app_control_settings_support}"
1070 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_application_support=%{?tizen_tv_feature_application_support}"
1071 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_archive_support=%{?tizen_tv_feature_archive_support}"
1072 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_badge_support=%{?tizen_tv_feature_badge_support}"
1073 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_bluetooth_support=%{?tizen_tv_feature_bluetooth_support}"
1074 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_calendar_support=%{?tizen_tv_feature_calendar_support}"
1075 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_callhistory_support=%{?tizen_tv_feature_callhistory_support}"
1076 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_contact_support=%{?tizen_tv_feature_contact_support}"
1077 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_content_support=%{?tizen_tv_feature_content_support}"
1078 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_datacontrol_support=%{?tizen_tv_feature_datacontrol_support}"
1079 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_datasync_support=%{?tizen_tv_feature_datasync_support}"
1080 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_download_support=%{?tizen_tv_feature_download_support}"
1081 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_exif_support=%{?tizen_tv_feature_exif_support}"
1082 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_feedback_support=%{?tizen_tv_feature_feedback_support}"
1083 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_filesystem_support=%{?tizen_tv_feature_filesystem_support}"
1084 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_fm_radio_support=%{?tizen_tv_feature_fm_radio_support}"
1085 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ham_support=%{?tizen_tv_feature_ham_support}"
1086 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_iotcon_support=%{?tizen_tv_feature_iotcon_support}"
1087 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_location_batch=%{?tizen_tv_feature_location_batch}"
1088 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_key_manager_support=%{?tizen_tv_feature_key_manager_support}"
1089 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_media_controller_support=%{?tizen_tv_feature_media_controller_support}"
1090 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_media_key_support=%{?tizen_tv_feature_media_key_support}"
1091 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_message_port_support=%{?tizen_tv_feature_message_port_support}"
1092 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_messaging_support=%{?tizen_tv_feature_messaging_support}"
1093 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_metadata_support=%{?tizen_tv_feature_metadata_support}"
1094 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ml_support=%{?tizen_tv_feature_ml_support}"
1095 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ml_nntrainer_support=%{?tizen_tv_feature_ml_nntrainer_support}"
1096 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_nbs_support=%{?tizen_tv_feature_nbs_support}"
1097 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_nfc_emulation_support=%{?tizen_tv_feature_nfc_emulation_support}"
1098 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_nfc_support=%{?tizen_tv_feature_nfc_support}"
1099 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_notification_support=%{?tizen_tv_feature_notification_support}"
1100 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_package_support=%{?tizen_tv_feature_package_support}"
1101 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_player_util_support=%{?tizen_tv_feature_player_util_support}"
1102 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_power_support=%{?tizen_tv_feature_power_support}"
1103 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ppm_support=%{?tizen_tv_feature_ppm_support}"
1104 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_preference_support=%{?tizen_tv_feature_preference_support}"
1105 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_push_support=%{?tizen_tv_feature_push_support}"
1106 #GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_sap_support=%{?tizen_tv_feature_sap_support}"
1107 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_sensor_support=%{?tizen_tv_feature_sensor_support}"
1108 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_se_support=%{?tizen_tv_feature_se_support}"
1109 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_sound_support=%{?tizen_tv_feature_sound_support}"
1110 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_system_info_support=%{?tizen_tv_feature_system_info_support}"
1111 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_system_setting_support=%{?tizen_tv_feature_system_setting_support}"
1112 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_telephony_support=%{?tizen_tv_feature_telephony_support}"
1113 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_time_support=%{?tizen_tv_feature_time_support}"
1114 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_inputdevice_support=%{?tizen_tv_feature_inputdevice_support}"
1115 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_web_setting_support=%{?tizen_tv_feature_web_setting_support}"
1116 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_widget_service_support=%{?tizen_tv_feature_widget_service_support}"
1117 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_wi_fi_support=%{?tizen_tv_feature_wi_fi_support}"
1118 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_tvinputdevice_support=%{?tizen_tv_feature_tvinputdevice_support}"
1119 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_voicecontrol_support=%{?tizen_tv_feature_voicecontrol_support}"
1120
1121 ./tools/gyp/gyp $GYP_OPTIONS src/tizen-wrt.gyp
1122
1123 ninja -C out/Default %{?_smp_mflags}
1124 pushd out
1125 mv Default bin_tv
1126 %if "%{?profile}" == "tv"
1127 ln -sf bin_tv Default
1128 %endif
1129 popd
1130
1131 %endif # TV
1132
1133 %if "%{?unified_build}" == "1" || "%{?profile}" == "common" || "%{?profile}" == "ivi"
1134
1135 # UNIFIED / COMMON or IVI
1136 GYP_OPTIONS="--depth=. -Dtizen=1 -Dextension_build_type=Debug -Dextension_host_os=common -Dprivilege_engine=%{tizen_common_privilege_engine}"
1137
1138 GYP_OPTIONS="$GYP_OPTIONS -Ddisplay_type=%{display_type}"
1139 GYP_OPTIONS="$GYP_OPTIONS -Dcrosswalk_extensions_path=%{crosswalk_extensions_path}"
1140
1141 # ut flags
1142 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_ut_build=%{tizen_ut_build}"
1143 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_ut_build_and_run_in_gbs=%{tizen_ut_build_and_run_in_gbs}"
1144
1145 # feature flags
1146 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_account_support=%{?tizen_common_feature_account_support}"
1147 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_alarm_support=%{?tizen_common_feature_alarm_support}"
1148 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_app_control_settings_support=%{?tizen_common_feature_app_control_settings_support}"
1149 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_application_support=%{?tizen_common_feature_application_support}"
1150 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_archive_support=%{?tizen_common_feature_archive_support}"
1151 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_badge_support=%{?tizen_common_feature_badge_support}"
1152 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_bluetooth_support=%{?tizen_common_feature_bluetooth_support}"
1153 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_calendar_support=%{?tizen_common_feature_calendar_support}"
1154 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_callhistory_support=%{?tizen_common_feature_callhistory_support}"
1155 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_contact_support=%{?tizen_common_feature_contact_support}"
1156 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_content_support=%{?tizen_common_feature_content_support}"
1157 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_datacontrol_support=%{?tizen_common_feature_datacontrol_support}"
1158 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_datasync_support=%{?tizen_common_feature_datasync_support}"
1159 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_download_support=%{?tizen_common_feature_download_support}"
1160 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_exif_support=%{?tizen_common_feature_exif_support}"
1161 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_feedback_support=%{?tizen_common_feature_feedback_support}"
1162 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_filesystem_support=%{?tizen_common_feature_filesystem_support}"
1163 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_fm_radio_support=%{?tizen_common_feature_fm_radio_support}"
1164 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ham_support=%{?tizen_common_feature_ham_support}"
1165 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_iotcon_support=%{?tizen_common_feature_iotcon_support}"
1166 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_location_batch=%{?tizen_common_feature_location_batch}"
1167 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_key_manager_support=%{?tizen_common_feature_key_manager_support}"
1168 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_media_controller_support=%{?tizen_common_feature_media_controller_support}"
1169 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_media_key_support=%{?tizen_common_feature_media_key_support}"
1170 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_message_port_support=%{?tizen_common_feature_message_port_support}"
1171 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_messaging_support=%{?tizen_common_feature_messaging_support}"
1172 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_metadata_support=%{?tizen_common_feature_metadata_support}"
1173 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ml_support=%{?tizen_common_feature_ml_support}"
1174 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ml_nntrainer_support=%{?tizen_common_feature_ml_nntrainer_support}"
1175 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_nbs_support=%{?tizen_common_feature_nbs_support}"
1176 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_nfc_emulation_support=%{?tizen_common_feature_nfc_emulation_support}"
1177 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_nfc_support=%{?tizen_common_feature_nfc_support}"
1178 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_notification_support=%{?tizen_common_feature_notification_support}"
1179 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_package_support=%{?tizen_common_feature_package_support}"
1180 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_player_util_support=%{?tizen_common_feature_player_util_support}"
1181 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_power_support=%{?tizen_common_feature_power_support}"
1182 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_ppm_support=%{?tizen_common_feature_ppm_support}"
1183 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_preference_support=%{?tizen_common_feature_preference_support}"
1184 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_push_support=%{?tizen_common_feature_push_support}"
1185 #GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_sap_support=%{?tizen_common_feature_sap_support}"
1186 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_sensor_support=%{?tizen_common_feature_sensor_support}"
1187 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_se_support=%{?tizen_common_feature_se_support}"
1188 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_sound_support=%{?tizen_common_feature_sound_support}"
1189 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_system_info_support=%{?tizen_common_feature_system_info_support}"
1190 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_system_setting_support=%{?tizen_common_feature_system_setting_support}"
1191 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_telephony_support=%{?tizen_common_feature_telephony_support}"
1192 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_time_support=%{?tizen_common_feature_time_support}"
1193 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_inputdevice_support=%{?tizen_common_feature_inputdevice_support}"
1194 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_web_setting_support=%{?tizen_common_feature_web_setting_support}"
1195 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_widget_service_support=%{?tizen_common_feature_widget_service_support}"
1196 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_wi_fi_support=%{?tizen_common_feature_wi_fi_support}"
1197 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_tvinputdevice_support=%{?tizen_common_feature_tvinputdevice_support}"
1198 GYP_OPTIONS="$GYP_OPTIONS -Dtizen_feature_voicecontrol_support=%{?tizen_common_feature_voicecontrol_support}"
1199
1200 ./tools/gyp/gyp $GYP_OPTIONS src/tizen-wrt.gyp
1201
1202 %if "%{?unified_build}" == "1"
1203 # UNIFIED
1204 ninja -C out/Default %{?_smp_mflags}
1205 pushd out
1206 mv Default bin_common
1207 ln -sf bin_common Default
1208
1209 # IVI does not have independent configurations, yet.
1210 # Copying the whole result in order to support ivi subpacakge
1211 cp -R bin_common bin_ivi
1212
1213 popd
1214 %else # UNIFIED
1215 # COMMON or IVI
1216 ninja -C out/Default %{?_smp_mflags}
1217 pushd out
1218 mv Default bin_%{?profile}
1219 ln -sf bin_%{?profile} Default
1220 popd
1221 %endif # COMMON or IVI
1222 %endif # UNIFIED / COMMON or IVI
1223
1224 # run ut
1225 %if "%{?tizen_ut_build_and_run_in_gbs}" == "1"
1226 export LD_LIBRARY_PATH=out/Default/
1227 out/Default/webapi_common_tests
1228 %if "%{tizen_%{?profile}_feature_bluetooth_support}" == "1"
1229 out/Default/webapi_bluetooth_tests gbs
1230 %endif
1231 %if "%{tizen_%{?profile}_feature_ml_support}" == "1"
1232 out/Default/webapi_ml_tests gbs
1233 %endif
1234 %endif
1235
1236 %install
1237
1238 # Extensions.
1239 mkdir -p %{buildroot}%{crosswalk_extensions_path}
1240
1241 %if "%{?unified_build}" == "1" || "%{?profile}" == "common"
1242 mkdir -p %{buildroot}%{crosswalk_extensions_path}/common
1243 install -p -m 644 out/bin_common/libtizen*.so %{buildroot}%{crosswalk_extensions_path}/common
1244 # execute desc_gentool
1245 LD_LIBRARY_PATH=$LD_LIBRARY_PATH:%{buildroot}%{crosswalk_extensions_path}/common %{?ld_preload_library} out/Default/desc_gentool \
1246         %{crosswalk_extensions_path}/common \
1247         %{buildroot}%{crosswalk_extensions_path}/common > plugins.json
1248
1249 # temporary plugins description for lazy loading
1250 install -p -m 644 plugins.json %{buildroot}%{crosswalk_extensions_path}/common/plugins.json
1251 %endif
1252
1253 %if "%{?unified_build}" == "1" || "%{?profile}" == "mobile"
1254 mkdir -p %{buildroot}%{crosswalk_extensions_path}/mobile
1255
1256 # tizen ut mobile
1257 %if "%{?tizen_ut_build}" == "1" || "%{?tizen_ut_build_and_run_in_gbs}" == "1"
1258 mkdir -p %{buildroot}/usr/bin
1259 install -p -m 755 out/bin_mobile/webapi_common_tests %{buildroot}/usr/bin/
1260 %if "%{tizen_mobile_feature_bluetooth_support}" == "1"
1261 install -p -m 755 out/bin_mobile/webapi_bluetooth_tests %{buildroot}/usr/bin/
1262 %endif
1263 %if "%{tizen_mobile_feature_ml_support}" == "1"
1264 install -p -m 755 out/bin_mobile/webapi_ml_tests %{buildroot}/usr/bin/
1265 %endif
1266 %endif
1267
1268 install -p -m 644 out/bin_mobile/libtizen*.so %{buildroot}%{crosswalk_extensions_path}/mobile
1269 # execute desc_gentool
1270 LD_PRELOAD=libcapi-media-image-util.so LD_LIBRARY_PATH=$LD_LIBRARY_PATH:%{buildroot}%{crosswalk_extensions_path}/mobile %{?ld_preload_library} out/Default/desc_gentool \
1271         %{crosswalk_extensions_path}/mobile \
1272         %{buildroot}%{crosswalk_extensions_path}/mobile > plugins.json
1273
1274 # temporary plugins description for lazy loading
1275 install -p -m 644 plugins.json %{buildroot}%{crosswalk_extensions_path}/mobile/plugins.json
1276
1277 # mobile-extension-emulator
1278 %ifarch %{ix86} x86_64
1279 mkdir -p %{buildroot}%{crosswalk_extensions_path}/mobile_emulator
1280 install -p -m 644 out/bin_mobile_emulator/libtizen*.so %{buildroot}%{crosswalk_extensions_path}/mobile_emulator
1281 # execute desc_gentool
1282 LD_LIBRARY_PATH=$LD_LIBRARY_PATH:%{buildroot}%{crosswalk_extensions_path}/mobile_emulator %{?ld_preload_library} out/Default/desc_gentool \
1283         %{crosswalk_extensions_path}/mobile_emulator \
1284         %{buildroot}%{crosswalk_extensions_path}/mobile_emulator > plugins.json
1285
1286 # temporary plugins description for lazy loading
1287 install -p -m 644 plugins.json %{buildroot}%{crosswalk_extensions_path}/mobile_emulator/plugins.json
1288 %endif // mobile-extension-emulator
1289
1290 %endif // mobile
1291
1292 %if "%{?unified_build}" == "1" || "%{?profile}" == "wearable"
1293 mkdir -p %{buildroot}%{crosswalk_extensions_path}/wearable
1294
1295 # tizen ut wearable
1296 %if "%{?tizen_ut_build}" == "1" || "%{?tizen_ut_build_and_run_in_gbs}" == "1"
1297 mkdir -p %{buildroot}/usr/bin
1298 install -p -m 755 out/bin_wearable/webapi_common_tests %{buildroot}/usr/bin/
1299 %if "%{tizen_wearable_feature_bluetooth_support}" == "1"
1300 install -p -m 755 out/bin_wearable/webapi_bluetooth_tests %{buildroot}/usr/bin/
1301 %endif
1302 %if "%{tizen_wearable_feature_ml_support}" == "1"
1303 install -p -m 755 out/bin_wearable/webapi_ml_tests %{buildroot}/usr/bin/
1304 %endif
1305 %endif
1306
1307 install -p -m 644 out/bin_wearable/libtizen*.so %{buildroot}%{crosswalk_extensions_path}/wearable
1308 # execute desc_gentool
1309 LD_LIBRARY_PATH=$LD_LIBRARY_PATH:%{buildroot}%{crosswalk_extensions_path}/wearable %{?ld_preload_library} out/Default/desc_gentool \
1310         %{crosswalk_extensions_path}/wearable \
1311         %{buildroot}%{crosswalk_extensions_path}/wearable > plugins.json
1312
1313 # temporary plugins description for lazy loading
1314 install -p -m 644 plugins.json %{buildroot}%{crosswalk_extensions_path}/wearable/plugins.json
1315
1316 # wearable-extension-emulator
1317 %ifarch %{ix86} x86_64
1318 mkdir -p %{buildroot}%{crosswalk_extensions_path}/wearable_emulator
1319 install -p -m 644 out/bin_wearable_emulator/libtizen*.so %{buildroot}%{crosswalk_extensions_path}/wearable_emulator
1320 # execute desc_gentool
1321 LD_LIBRARY_PATH=$LD_LIBRARY_PATH:%{buildroot}%{crosswalk_extensions_path}/wearable_emulator %{?ld_preload_library} out/Default/desc_gentool \
1322         %{crosswalk_extensions_path}/wearable_emulator \
1323         %{buildroot}%{crosswalk_extensions_path}/wearable_emulator > plugins.json
1324
1325 # temporary plugins description for lazy loading
1326 install -p -m 644 plugins.json %{buildroot}%{crosswalk_extensions_path}/wearable_emulator/plugins.json
1327 %endif // wearable-extension-emulator
1328
1329 %endif // wearable
1330
1331 %if "%{?unified_build}" == "1" || "%{?profile}" == "tv"
1332 mkdir -p %{buildroot}%{crosswalk_extensions_path}/tv
1333 install -p -m 644 out/bin_tv/libtizen*.so %{buildroot}%{crosswalk_extensions_path}/tv
1334 # execute desc_gentool
1335 LD_LIBRARY_PATH=$LD_LIBRARY_PATH:%{buildroot}%{crosswalk_extensions_path}/tv %{?ld_preload_library} out/Default/desc_gentool \
1336         %{crosswalk_extensions_path}/tv \
1337         %{buildroot}%{crosswalk_extensions_path}/tv > plugins.json
1338
1339 # temporary plugins description for lazy loading
1340 install -p -m 644 plugins.json %{buildroot}%{crosswalk_extensions_path}/tv/plugins.json
1341 %endif
1342
1343 %if "%{?unified_build}" == "1" || "%{?profile}" == "ivi"
1344 mkdir -p %{buildroot}%{crosswalk_extensions_path}/ivi
1345 install -p -m 644 out/bin_ivi/libtizen*.so %{buildroot}%{crosswalk_extensions_path}/ivi
1346 # execute desc_gentool
1347 LD_LIBRARY_PATH=$LD_LIBRARY_PATH:%{buildroot}%{crosswalk_extensions_path}/ivi %{?ld_preload_library} out/Default/desc_gentool \
1348         %{crosswalk_extensions_path}/ivi \
1349         %{buildroot}%{crosswalk_extensions_path}/ivi > plugins.json
1350
1351 # temporary plugins description for lazy loading
1352 install -p -m 644 plugins.json %{buildroot}%{crosswalk_extensions_path}/ivi/plugins.json
1353 %endif
1354
1355 # devel files
1356 mkdir -p %{buildroot}%{_libdir}/pkgconfig
1357 cp packaging/%{name}.pc.in %{buildroot}%{_libdir}/pkgconfig/%{name}.pc
1358 sed -i s,__LIB_DIR__,%{crosswalk_extensions_path},g %{buildroot}%{_libdir}/pkgconfig/%{name}.pc
1359 sed -i s,__INCLUDE_DIR__,%{_includedir}/%{name}/src,g %{buildroot}%{_libdir}/pkgconfig/%{name}.pc
1360 mkdir -p %{buildroot}%{_includedir}/%{name}/src/common
1361 mkdir -p %{buildroot}%{_includedir}/%{name}/src/common/filesystem
1362 install -p -m 644 src/common/*.h %{buildroot}%{_includedir}/%{name}/src/common
1363 install -p -m 644 src/common/filesystem/*.h %{buildroot}%{_includedir}/%{name}/src/common/filesystem
1364 install -p -m 644 src/common/*.gypi %{buildroot}%{_includedir}/%{name}/src/common
1365 install -p -m 644 src/common/XW_Extension.cc %{buildroot}%{_includedir}/%{name}/src/common
1366 mkdir -p %{buildroot}%{_includedir}/%{name}/tools
1367 install -p -m 644 tools/generate_api.py %{buildroot}%{_includedir}/%{name}/tools
1368 install -p -m 644 tools/mergejs.py %{buildroot}%{_includedir}/%{name}/tools
1369 cp -a tools/gyp %{buildroot}%{_includedir}/%{name}/tools/gyp
1370 cp -a tools/slimit %{buildroot}%{_includedir}/%{name}/tools/slimit
1371 cp -a out/Default/desc_gentool %{buildroot}%{_includedir}/%{name}/tools/desc_gentool
1372
1373 %files
1374 %manifest webapi-plugins.manifest
1375 %license LICENSE
1376
1377 %if "%{?unified_build}" == "1" || "%{?profile}" == "common"
1378 %post profile_common
1379 ln -sf %{crosswalk_extensions_path}/common/* %{crosswalk_extensions_path}
1380 %preun profile_common
1381 # This is an un-installation.
1382 if [ "$1" == "0" ]; then
1383   rm %{crosswalk_extensions_path}/libtizen*.so
1384   rm %{crosswalk_extensions_path}/plugins.json
1385 fi
1386 %files profile_common
1387 %dir %{crosswalk_extensions_path}/common/
1388 %{crosswalk_extensions_path}/common/libtizen*.so
1389 %{crosswalk_extensions_path}/common/plugins.json
1390 %manifest webapi-plugins.manifest
1391 %endif
1392
1393 %if "%{?unified_build}" == "1" || "%{?profile}" == "mobile"
1394 %post profile_mobile
1395 ln -sf %{crosswalk_extensions_path}/mobile/* %{crosswalk_extensions_path}
1396 %preun profile_mobile
1397 # This is an un-installation.
1398 if [ "$1" == "0" ]; then
1399   if [ -n "$(ls %{crosswalk_extensions_path}/ | grep libtizen*.so)" ]; then
1400     rm %{crosswalk_extensions_path}/libtizen*.so
1401   fi
1402   if [ -f %{crosswalk_extensions_path}/plugins.json ]; then
1403     rm %{crosswalk_extensions_path}/plugins.json
1404   fi
1405 fi
1406 %files profile_mobile
1407 %dir %{crosswalk_extensions_path}/mobile/
1408 %{crosswalk_extensions_path}/mobile/libtizen*.so
1409 %{crosswalk_extensions_path}/mobile/plugins.json
1410 %manifest webapi-plugins.manifest
1411
1412 # UT files
1413 %if "%{?tizen_ut_build}" == "1" || "%{?tizen_ut_build_and_run_in_gbs}" == "1"
1414 %license GTEST.BSD-3-Clause
1415 /usr/bin/webapi_common_tests
1416 %if "%{tizen_mobile_feature_bluetooth_support}" == "1"
1417 /usr/bin/webapi_bluetooth_tests
1418 %endif
1419 %if "%{tizen_mobile_feature_ml_support}" == "1"
1420 /usr/bin/webapi_ml_tests
1421 %endif
1422 %endif
1423
1424 # mobile-extension-emulator
1425 %ifarch %{ix86} x86_64
1426 %post mobile-extension-emulator
1427 ln -sf %{crosswalk_extensions_path}/mobile_emulator/* %{crosswalk_extensions_path}
1428 %preun mobile-extension-emulator
1429 # This is an un-installation.
1430 if [ "$1" == "0" ]; then
1431   if [ -n "$(ls %{crosswalk_extensions_path}/ | grep libtizen*.so)" ]; then
1432     rm %{crosswalk_extensions_path}/libtizen*.so
1433   fi
1434   if [ -f %{crosswalk_extensions_path}/plugins.json ]; then
1435     rm %{crosswalk_extensions_path}/plugins.json
1436   fi
1437 fi
1438 %files mobile-extension-emulator
1439 %dir %{crosswalk_extensions_path}/mobile_emulator/
1440 %{crosswalk_extensions_path}/mobile_emulator/libtizen*.so
1441 %{crosswalk_extensions_path}/mobile_emulator/plugins.json
1442 %manifest webapi-plugins.manifest
1443 %endif // mobile-extension-emulator
1444 %endif // mobile
1445
1446 %if "%{?unified_build}" == "1" || "%{?profile}" == "wearable"
1447 %post profile_wearable
1448 ln -sf %{crosswalk_extensions_path}/wearable/* %{crosswalk_extensions_path}
1449 %preun profile_wearable
1450 # This is an un-installation.
1451 if [ "$1" == "0" ]; then
1452   if [ -n "$(ls %{crosswalk_extensions_path}/ | grep libtizen*.so)" ]; then
1453     rm %{crosswalk_extensions_path}/libtizen*.so
1454   fi
1455   if [ -f %{crosswalk_extensions_path}/plugins.json ]; then
1456     rm %{crosswalk_extensions_path}/plugins.json
1457   fi
1458 fi
1459 %files profile_wearable
1460 %dir %{crosswalk_extensions_path}/wearable/
1461 %{crosswalk_extensions_path}/wearable/libtizen*.so
1462 %{crosswalk_extensions_path}/wearable/plugins.json
1463 %manifest webapi-plugins.manifest
1464
1465 # UT files
1466 %if "%{?tizen_ut_build}" == "1" || "%{?tizen_ut_build_and_run_in_gbs}" == "1"
1467 %license GTEST.BSD-3-Clause
1468 /usr/bin/webapi_common_tests
1469 %if "%{tizen_wearable_feature_bluetooth_support}" == "1"
1470 /usr/bin/webapi_bluetooth_tests
1471 %endif
1472 %if "%{tizen_wearable_feature_ml_support}" == "1"
1473 /usr/bin/webapi_ml_tests
1474 %endif
1475 %endif
1476
1477 # wearable-extension-emulator
1478 %ifarch %{ix86} x86_64
1479 %post wearable-extension-emulator
1480 ln -sf %{crosswalk_extensions_path}/wearable_emulator/* %{crosswalk_extensions_path}
1481 %preun wearable-extension-emulator
1482 # This is an un-installation.
1483 if [ "$1" == "0" ]; then
1484   if [ -n "$(ls %{crosswalk_extensions_path}/ | grep libtizen*.so)" ]; then
1485     rm %{crosswalk_extensions_path}/libtizen*.so
1486   fi
1487   if [ -f %{crosswalk_extensions_path}/plugins.json ]; then
1488     rm %{crosswalk_extensions_path}/plugins.json
1489   fi
1490 fi
1491 %files wearable-extension-emulator
1492 %dir %{crosswalk_extensions_path}/wearable_emulator/
1493 %{crosswalk_extensions_path}/wearable_emulator/libtizen*.so
1494 %{crosswalk_extensions_path}/wearable_emulator/plugins.json
1495 %manifest webapi-plugins.manifest
1496 %endif // wearable-extension-emulator
1497 %endif // wearable
1498
1499 %if "%{?unified_build}" == "1" || "%{?profile}" == "tv"
1500 %post profile_tv
1501 ln -sf %{crosswalk_extensions_path}/tv/* %{crosswalk_extensions_path}
1502 %preun profile_tv
1503 # This is an un-installation.
1504 if [ "$1" == "0" ]; then
1505   rm %{crosswalk_extensions_path}/libtizen*.so
1506   rm %{crosswalk_extensions_path}/plugins.json
1507 fi
1508 %files profile_tv
1509 %dir %{crosswalk_extensions_path}/tv/
1510 %{crosswalk_extensions_path}/tv/libtizen*.so
1511 %{crosswalk_extensions_path}/tv/plugins.json
1512 %manifest webapi-plugins.manifest
1513 %endif
1514
1515 %if "%{?unified_build}" == "1" || "%{?profile}" == "ivi"
1516 %post profile_ivi
1517 ln -sf %{crosswalk_extensions_path}/ivi/* %{crosswalk_extensions_path}
1518 %preun profile_ivi
1519 # This is an un-installation.
1520 if [ "$1" == "0" ]; then
1521   rm %{crosswalk_extensions_path}/libtizen*.so
1522   rm %{crosswalk_extensions_path}/plugins.json
1523 fi
1524 %files profile_ivi
1525 %dir %{crosswalk_extensions_path}/ivi/
1526 %{crosswalk_extensions_path}/ivi/libtizen*.so
1527 %{crosswalk_extensions_path}/ivi/plugins.json
1528 %manifest webapi-plugins.manifest
1529 %endif
1530
1531 %files devel
1532 %{_includedir}/*
1533 %{_libdir}/pkgconfig/*