aaeda8d94229d7fb572ecd4919466230ca6af07c
[platform/core/uifw/dali-adaptor.git] / packaging / dali-adaptor.spec
1 # NOTES
2 # This spec file is used to build DALi Adaptor for different Tizen Profiles
3 # Current profiles are:  Mobile, TV, Wearable, Common
4 #
5 # The profile variable is defined outside of the spec file in a build.conf file.
6 # It will contain the profile and whether or not to build with X11 or Wayland
7 #
8 # gbs will try to download the build.conf for the platform automatically from the repo location when
9 # performing a gbs build ( use gbs build -v to see it download location) E.g.
10 # http://download.tizen.org/snapshots/tizen/tv/tizen-tv/repos/arm-wayland/packages/repodata/xxxx-build.conf.gz
11
12 # Do not provide .so automatically for the extensions.
13 # This if statement is for backward compatibility with GBM/Obsolete build systems
14 %if "%{?profile}" != "wearable" && "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
15 %global __provides_exclude_from ^.*\\.(wearable|mobile|tv|ivi|common)$
16 %endif
17
18 %bcond_with wayland
19
20 Name:       dali-adaptor
21 Summary:    The DALi Tizen Adaptor
22 Version:    1.2.36
23 Release:    1
24 Group:      System/Libraries
25 License:    Apache-2.0 and BSD-2-Clause and MIT
26 URL:        https://review.tizen.org/git/?p=platform/core/uifw/dali-adaptor.git;a=summary
27 Source0:    %{name}-%{version}.tar.gz
28
29 Requires(post): /sbin/ldconfig
30 Requires(postun): /sbin/ldconfig
31 Requires:       giflib
32
33 #need libtzplatform-config for directory if tizen version is 3.x
34
35 %if 0%{?tizen_version_major} >= 3
36 %define tizen_platform_config_supported 1
37 BuildRequires:  pkgconfig(libtzplatform-config)
38 %endif
39
40
41 # Get the profile from tizen_profile_name if tizen version is 2.x and tizen_profile_name exists.
42
43 %if "%{tizen_version_major}" == "2" && 0%{?tizen_profile_name:1}
44 %define profile %{tizen_profile_name}
45 %endif
46
47 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
48 # if wearable || "undefined"
49 %if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
50 BuildRequires:  pkgconfig(capi-appfw-watch-application)
51 BuildRequires:  pkgconfig(appcore-watch)
52 BuildRequires:  pkgconfig(screen_connector_provider)
53 %endif
54
55 BuildRequires:  pkgconfig(gles20)
56 BuildRequires:  pkgconfig(glesv2)
57
58 BuildRequires:  pkgconfig
59 BuildRequires:  gawk
60 BuildRequires:  giflib-devel
61 BuildRequires:  pkgconfig(fontconfig)
62 BuildRequires:  libjpeg-turbo-devel
63 BuildRequires:  dali-devel
64 BuildRequires:  dali-integration-devel
65 BuildRequires:  pkgconfig(vconf)
66 BuildRequires:  tts-devel
67 BuildRequires:  pkgconfig(dlog)
68 BuildRequires:  libdrm-devel
69 BuildRequires:  pkgconfig(libexif)
70 BuildRequires:  pkgconfig(libpng)
71 BuildRequires:  pkgconfig(egl)
72 BuildRequires:  libcurl-devel
73 BuildRequires:  pkgconfig(harfbuzz)
74 BuildRequires:  fribidi-devel
75 BuildRequires:  pkgconfig(capi-system-info)
76 BuildRequires:  pkgconfig(capi-system-sensor)
77
78 # Tizen currently does not have libuv as a separate libuv package
79 # So we have to look into the uv headers bundled inside node-js
80 BuildRequires:  nodejs-devel
81
82
83 %if %{with wayland}
84
85 ####### BUILDING FOR WAYLAND #######
86 BuildRequires:  pkgconfig(wayland-egl)
87 BuildRequires:  pkgconfig(wayland-client)
88 BuildRequires:  wayland-devel
89 BuildRequires:  wayland-extension-client-devel
90
91 # dali-adaptor-uv uses libuv mainloop and has its own wayland client (it needs wayland-client headers).
92 BuildRequires:  libxkbcommon-devel
93
94 # dali-adaptor uses ecore mainloop
95 BuildRequires:  pkgconfig(ecore-wayland)
96
97 # dali-adaptor needs tbm_surface in tizen 3.0 wayland
98 BuildRequires:  pkgconfig(libtbm)
99
100 # tpkp-curl (certificate pinning for libcurl functions) is only available in Tizen 3.0
101 BuildRequires:  pkgconfig(tpkp-curl)
102
103 ####### BUILDING FOR X11#######
104 %else
105 BuildRequires:  pkgconfig(egl)
106 BuildRequires:  pkgconfig(xext)
107 BuildRequires:  pkgconfig(xi)
108 BuildRequires:  pkgconfig(xfixes)
109 BuildRequires:  pkgconfig(xdamage)
110 BuildRequires:  pkgconfig(utilX)
111 %endif
112
113 # for dali-adaptor
114 BuildRequires:  pkgconfig(evas)
115 BuildRequires:  pkgconfig(elementary)
116 BuildRequires:  pkgconfig(capi-appfw-application)
117 BuildRequires:  pkgconfig(capi-system-system-settings)
118
119 # for feedback plugin
120 BuildRequires:  pkgconfig(mm-sound)
121 BuildRequires:  pkgconfig(feedback)
122
123 # for videoplayer Plugin
124 BuildRequires:  pkgconfig(capi-media-player)
125
126
127 # for multiprofile
128 Requires:   %{name}-compat = %{version}-%{release}
129 Recommends: %{name}-profile_common = %{version}-%{release}
130
131 %description
132 The DALi Tizen Adaptor provides a Tizen specific implementation of the dali-core
133 platform abstraction and application shell
134
135 ###########################################
136 # Dali adapter for profiles
137 ###########################################
138
139 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
140 # if mobile || "undefined"
141 %if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
142 %package profile_mobile
143 Summary:        The DALi Tizen Adaptor for mobile
144 Provides:       %{name}-compat = %{version}-%{release}
145 Conflicts:      %{name}-profile_tv
146 Conflicts:      %{name}-profile_wearable
147 Conflicts:      %{name}-profile_ivi
148 Conflicts:      %{name}-profile_common
149 %description profile_mobile
150 The DALi Tizen Adaptor for mobile.
151 %endif
152
153 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
154 # if tv ||"undefined"
155 %if "%{?profile}" != "wearable" && "%{?profile}" != "common" && "%{?profile}" != "ivi" && "%{?profile}" != "mobile"
156 %package profile_tv
157 Summary:        The DALi Tizen Adaptor for tv
158 Provides:       %{name}-compat = %{version}-%{release}
159 Conflicts:      %{name}-profile_mobile
160 Conflicts:      %{name}-profile_wearable
161 Conflicts:      %{name}-profile_ivi
162 Conflicts:      %{name}-profile_common
163 %description profile_tv
164 The DALi Tizen Adaptor for tv.
165 %endif
166
167 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
168 # if wearable || "undefined"
169 %if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
170 %package profile_wearable
171 Summary:        The DALi Tizen Adaptor for wearable
172 Provides:       %{name}-compat = %{version}-%{release}
173 Conflicts:      %{name}-profile_mobile
174 Conflicts:      %{name}-profile_tv
175 Conflicts:      %{name}-profile_ivi
176 Conflicts:      %{name}-profile_common
177 %description profile_wearable
178 The DALi Tizen Adaptor for wearable.
179 %endif
180
181 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
182 # if ivi ||"undefined"
183 %if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "common" && "%{?profile}" != "mobile"
184 %package profile_ivi
185 Summary:        The DALi Tizen Adaptor for ivi
186 Provides:       %{name}-compat = %{version}-%{release}
187 Conflicts:      %{name}-profile_mobile
188 Conflicts:      %{name}-profile_wearable
189 Conflicts:      %{name}-profile_tv
190 Conflicts:      %{name}-profile_common
191 %description profile_ivi
192 The DALi Tizen Adaptor for ivi.
193 %endif
194
195 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
196 # if common ||"undefined"
197 %if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "mobile"
198 # Currently Tizen Common we use does not have wayland extensions like xdg-shell
199 %package profile_common
200 %define tizen_2_2_compatibility 0
201 Summary:  The DALi Tizen Adaptor for common
202 Provides:       %{name}-compat = %{version}-%{release}
203 Conflicts:      %{name}-profile_mobile
204 Conflicts:      %{name}-profile_wearable
205 Conflicts:      %{name}-profile_tv
206 Conflicts:      %{name}-profile_ivi
207 %description profile_common
208 The DALi Tizen Adaptor for common.
209 %endif
210
211 ##############################
212 # devel
213 ##############################
214 %package devel
215 Summary:    Development components for the DALi Tizen Adaptor
216 Group:      Development/Building
217 Requires:   %{name} = %{version}-%{release}
218 Requires:   %{name}-integration-devel = %{version}-%{release}
219
220 %description devel
221 Development components for the DALi Tizen Adaptor - public headers and package configs
222
223 ##############################
224 # integration-devel
225 ##############################
226 %package integration-devel
227 Summary:    Integration development package for the Adaptor
228 Group:      Development/Building
229 Requires:   %{name} = %{version}-%{release}
230
231 %description integration-devel
232 Integration development package for the Adaptor - headers for integrating with an adaptor library.
233
234 ##############################
235 # Dali Feedback Plugin
236 ##############################
237
238 %package dali-feedback-plugin
239 Summary:    Plugin to play haptic and audio feedback for Dali
240 Group:      System/Libraries
241 Requires:   %{name} = %{version}-%{release}
242 %description dali-feedback-plugin
243 eedback plugin to play haptic and audio feedback for Dali
244
245 ##############################
246 # Dali VideoPlayer Plugin
247 ##############################
248 %if %{with wayland}
249
250 %package dali-video-player-plugin
251 Summary:    Plugin to play a video file for Dali
252 Group:      System/Libraries
253 %description dali-video-player-plugin
254 VideoPlayer plugin to play a video file for Dali
255 %endif
256
257 ##############################
258 # Preparation
259 ##############################
260 %prep
261 %setup -q
262
263 #Use TZ_PATH when tizen version is 3.x or greater
264
265 %if 0%{?tizen_version_major} >= 3
266 %define dali_data_rw_dir         %TZ_SYS_RO_SHARE/dali/
267 %define dali_data_ro_dir         %TZ_SYS_RO_SHARE/dali/
268 %define font_preloaded_path      %TZ_SYS_RO_SHARE/fonts/
269 %define font_downloaded_path     %TZ_SYS_SHARE/fonts/
270 %define font_application_path    %TZ_SYS_RO_SHARE/app_fonts/
271 %define font_configuration_file  %TZ_SYS_ETC/fonts/conf.avail/99-slp.conf
272 %else
273 %define dali_data_rw_dir         /usr/share/dali/
274 %define dali_data_ro_dir         /usr/share/dali/
275 %define font_preloaded_path      /usr/share/fonts/
276 %define font_downloaded_path     /opt/share/fonts/
277 %define font_application_path    /usr/share/app_fonts/
278 %define font_configuration_file  /opt/etc/fonts/conf.avail/99-slp.conf
279 %endif
280
281 %define user_shader_cache_dir    %{dali_data_ro_dir}/core/shaderbin/
282 %define dali_plugin_sound_files  /plugins/sounds/
283 %define dev_include_path %{_includedir}
284
285 ##############################
286 # Build
287 ##############################
288 %build
289 PREFIX+="/usr"
290 CXXFLAGS+=" -Wall -g -Os -fPIC -fvisibility-inlines-hidden -fdata-sections -ffunction-sections -DGL_GLEXT_PROTOTYPES"
291 LDFLAGS+=" -Wl,--rpath=%{_libdir} -Wl,--as-needed -Wl,--gc-sections -Wl,-Bsymbolic-functions "
292
293 %ifarch %{arm}
294 CXXFLAGS+=" -D_ARCH_ARM_ -lgcc"
295 %endif
296
297 %if %{with wayland}
298 CFLAGS+=" -DWAYLAND"
299 CXXFLAGS+=" -DWAYLAND"
300 configure_flags="--enable-wayland"
301 %endif
302
303 %if 0%{?tizen_2_2_compatibility}
304 CFLAGS+=" -DTIZEN_SDK_2_2_COMPATIBILITY"
305 CXXFLAGS+=" -DTIZEN_SDK_2_2_COMPATIBILITY"
306 %endif
307
308 libtoolize --force
309 cd %{_builddir}/%{name}-%{version}/build/tizen
310 autoreconf --install
311
312 DALI_DATA_RW_DIR="%{dali_data_rw_dir}" ; export DALI_DATA_RW_DIR
313 DALI_DATA_RO_DIR="%{dali_data_ro_dir}"  ; export DALI_DATA_RO_DIR
314 FONT_PRELOADED_PATH="%{font_preloaded_path}" ; export FONT_PRELOADED_PATH
315 FONT_DOWNLOADED_PATH="%{font_downloaded_path}" ; export FONT_DOWNLOADED_PATH
316 FONT_APPLICATION_PATH="%{font_application_path}"  ; export FONT_APPLICATION_PATH
317 FONT_CONFIGURATION_FILE="%{font_configuration_file}" ; export FONT_CONFIGURATION_FILE
318 %if 0%{?tizen_platform_config_supported}
319 TIZEN_PLATFORM_CONFIG_SUPPORTED="%{tizen_platform_config_supported}" ; export TIZEN_PLATFORM_CONFIG_SUPPORTED
320 %endif
321
322 # Default to GLES 2.0 if not specified.
323 %{!?target_gles_version: %define target_gles_version 20}
324
325 #--enable-efl=no \ # only affects dali-adaptor-uv
326 #--enable-appfw=yes \ # affects both dali-adaptor & dali-adaptor-uv
327 #--with-libuv=/usr/include/node/ \ # only affects dali-adaptor-uv
328
329 # Set up the build via configure.
330 #######################################################################
331 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
332 # if mobile || "undefined"
333 %if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
334 %configure --prefix=$PREFIX --with-jpeg-turbo --enable-gles=%{target_gles_version} \
335            --enable-shaderbincache=DISABLE --enable-profile=MOBILE \
336            --enable-feedback \
337            --enable-videoplayer \
338 %if 0%{?tizen_2_2_compatibility}
339            --with-tizen-2-2-compatibility \
340 %endif
341 %if %{with wayland}
342            --enable-efl=no \
343 %else
344            --enable-efl=yes \
345 %endif
346 %if 0%{?enable_debug}
347            --enable-debug \
348 %endif
349            --enable-appfw=yes \
350            --with-libuv=/usr/include/node/ \
351            $configure_flags --libdir=%{_libdir}
352
353 # Build.
354 make %{?jobs:-j%jobs}
355
356 pushd %{_builddir}/%{name}-%{version}/build/tizen
357 %make_install DALI_DATA_RW_DIR="%{dali_data_rw_dir}" DALI_DATA_RO_DIR="%{dali_data_ro_dir}"
358 popd
359
360 pushd %{buildroot}%{_libdir}
361 for FILE in libdali-adap*.so*; do mv "$FILE" "%{_builddir}/%{name}-%{version}/build/tizen/$FILE.mobile"; done
362 popd
363
364 %endif
365
366 #######################################################################
367 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
368 # if tv ||"undefined"
369 %if "%{?profile}" != "wearable" && "%{?profile}" != "common" && "%{?profile}" != "ivi" && "%{?profile}" != "mobile"
370 %configure --prefix=$PREFIX --with-jpeg-turbo --enable-gles=%{target_gles_version} \
371            --enable-shaderbincache=DISABLE --enable-profile=TV \
372            --enable-feedback \
373            --enable-videoplayer \
374 %if 0%{?tizen_2_2_compatibility}
375            --with-tizen-2-2-compatibility \
376 %endif
377 %if %{with wayland}
378            --enable-efl=no \
379 %else
380            --enable-efl=yes \
381 %endif
382 %if 0%{?enable_debug}
383            --enable-debug \
384 %endif
385            --enable-appfw=yes \
386            --with-libuv=/usr/include/node/ \
387            $configure_flags --libdir=%{_libdir}
388
389 # Build.
390 make %{?jobs:-j%jobs}
391
392 pushd %{_builddir}/%{name}-%{version}/build/tizen
393 %make_install DALI_DATA_RW_DIR="%{dali_data_rw_dir}" DALI_DATA_RO_DIR="%{dali_data_ro_dir}"
394 popd
395
396 pushd %{buildroot}%{_libdir}
397 for FILE in libdali-adap*.so*; do mv "$FILE" "%{_builddir}/%{name}-%{version}/build/tizen/$FILE.tv"; done
398 popd
399
400 %endif
401
402 #######################################################################
403 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
404 # if wearable || "undefined"
405 %if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
406 %configure --prefix=$PREFIX --with-jpeg-turbo --enable-gles=%{target_gles_version} \
407            --enable-shaderbincache=DISABLE --enable-profile=WEARABLE \
408            --enable-feedback \
409            --enable-videoplayer \
410 %if 0%{?tizen_2_2_compatibility}
411            --with-tizen-2-2-compatibility \
412 %endif
413 %if %{with wayland}
414            --enable-efl=no \
415 %else
416            --enable-efl=yes \
417 %endif
418 %if 0%{?enable_debug}
419            --enable-debug \
420 %endif
421            --enable-appfw=yes \
422            --with-libuv=/usr/include/node/ \
423            $configure_flags --libdir=%{_libdir}
424
425 # Build.
426 make %{?jobs:-j%jobs}
427
428 pushd %{_builddir}/%{name}-%{version}/build/tizen
429 %make_install DALI_DATA_RW_DIR="%{dali_data_rw_dir}" DALI_DATA_RO_DIR="%{dali_data_ro_dir}"
430 popd
431
432 pushd %{buildroot}%{_libdir}
433 for FILE in libdali-adap*.so*; do mv "$FILE" "%{_builddir}/%{name}-%{version}/build/tizen/$FILE.wearable"; done
434 popd
435
436 %endif
437
438 #######################################################################
439 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
440 # if ivi ||"undefined"
441 %if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "common" && "%{?profile}" != "mobile"
442 %configure --prefix=$PREFIX --with-jpeg-turbo --enable-gles=%{target_gles_version} \
443            --enable-shaderbincache=DISABLE --enable-profile=IVI \
444            --enable-feedback \
445            --enable-videoplayer \
446 %if 0%{?tizen_2_2_compatibility}
447            --with-tizen-2-2-compatibility \
448 %endif
449 %if %{with wayland}
450            --enable-efl=no \
451 %else
452            --enable-efl=yes \
453 %endif
454 %if 0%{?enable_debug}
455            --enable-debug \
456 %endif
457            --enable-appfw=yes \
458            --with-libuv=/usr/include/node/ \
459            $configure_flags --libdir=%{_libdir}
460
461 # Build.
462 make %{?jobs:-j%jobs}
463
464 pushd %{_builddir}/%{name}-%{version}/build/tizen
465 %make_install DALI_DATA_RW_DIR="%{dali_data_rw_dir}" DALI_DATA_RO_DIR="%{dali_data_ro_dir}"
466 popd
467
468 pushd %{buildroot}%{_libdir}
469 for FILE in libdali-adap*.so*; do mv "$FILE" "%{_builddir}/%{name}-%{version}/build/tizen/$FILE.ivi"; done
470 popd
471
472 %endif
473
474 #######################################################################
475 # common ( build dali_videoplayer_plugin for common uses )
476 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
477 # if common ||"undefined"
478 %if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "mobile"
479 %configure --prefix=$PREFIX --with-jpeg-turbo --enable-gles=%{target_gles_version} \
480            --enable-shaderbincache=DISABLE --enable-profile=COMMON \
481            --enable-feedback \
482            --enable-videoplayer \
483 %if 0%{?tizen_2_2_compatibility}
484            --with-tizen-2-2-compatibility \
485 %endif
486 %if %{with wayland}
487            --enable-efl=no \
488 %else
489            --enable-efl=yes \
490 %endif
491 %if 0%{?enable_debug}
492            --enable-debug \
493 %endif
494            --enable-appfw=yes \
495            --with-libuv=/usr/include/node/ \
496            $configure_flags --libdir=%{_libdir}
497
498 # Build.
499 make %{?jobs:-j%jobs}
500 %endif
501
502
503 ##############################
504 # Installation
505 ##############################
506 %install
507 rm -rf %{buildroot}
508
509 pushd %{_builddir}/%{name}-%{version}/build/tizen
510 %make_install DALI_DATA_RW_DIR="%{dali_data_rw_dir}" DALI_DATA_RO_DIR="%{dali_data_ro_dir}"
511
512 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
513 # !unified && (wearable || tv || ivi || mobile)
514 %if "%{?profile}" == "wearable" || "%{?profile}" == "tv" || "%{?profile}" == "ivi" || "%{?profile}" == "mobile"
515 rm -rf %{buildroot}%{_libdir}/libdali-adap*.so*
516 %endif
517
518 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
519 # wearable || tv || ivi || mobile || unified
520 %if "%{?profile}" != "common"
521 for FILE in libdali-*.so*; do mv "$FILE" "%{buildroot}%{_libdir}/$FILE"; done
522 %endif
523 popd
524
525 ##############################
526 # Upgrade order:
527 # 1 - Pre Install new package
528 # 2 - Install new package
529 # 3 - Post install new package
530 # 4 - Pre uninstall old package
531 # 5 - Remove files not overwritten by new package
532 # 6 - Post uninstall old package
533 ##############################
534
535 %pre
536 exit 0
537
538 ##############################
539 #  Post, Preun, Postun Install new package
540 ##############################
541 %post
542 /sbin/ldconfig
543 exit 0
544
545 %preun
546 exit 0
547
548 %postun
549 /sbin/ldconfig
550 exit 0
551
552 %if %{with wayland}
553 %post dali-video-player-plugin
554 /sbin/ldconfig
555 exit 0
556 %endif
557
558 %if %{with wayland}
559 %postun dali-video-player-plugin
560 /sbin/ldconfig
561 exit 0
562 %endif
563
564 ##############################
565
566 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
567 # if mobile || "undefined"
568 %if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
569 %post profile_mobile
570 pushd %{_libdir}
571 for FILE in libdali-adap*.so*.mobile; do ln -sf "$FILE" "${FILE%.mobile}"; done
572 popd
573 /sbin/ldconfig
574 exit 0
575
576 %postun profile_mobile
577 /sbin/ldconfig
578 exit 0
579 %endif
580
581 ##############################
582
583 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
584 # if tv ||"undefined"
585 %if "%{?profile}" != "wearable" && "%{?profile}" != "common" && "%{?profile}" != "ivi" && "%{?profile}" != "mobile"
586 %post profile_tv
587 pushd %{_libdir}
588 for FILE in libdali-adap*.so*.tv; do ln -sf "$FILE" "${FILE%.tv}"; done
589 popd
590 /sbin/ldconfig
591 exit 0
592
593 %postun profile_tv
594 /sbin/ldconfig
595 exit 0
596 %endif
597
598 ##############################
599
600 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
601 # if wearable || "undefined"
602 %if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
603 %post profile_wearable
604 pushd %{_libdir}
605 for FILE in libdali-adap*.so*.wearable; do ln -sf "$FILE" "${FILE%.wearable}"; done
606 popd
607 /sbin/ldconfig
608 exit 0
609
610 %postun profile_wearable
611 /sbin/ldconfig
612 exit 0
613 %endif
614
615 ##############################
616
617 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
618 # if ivi ||"undefined"
619 %if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "common" && "%{?profile}" != "mobile"
620 %post profile_ivi
621 pushd %{_libdir}
622 for FILE in libdali-adap*.so*.ivi; do ln -sf "$FILE" "${FILE%.ivi}"; done
623 popd
624 /sbin/ldconfig
625 exit 0
626
627 %postun profile_ivi
628 /sbin/ldconfig
629 exit 0
630 %endif
631
632
633 ##############################
634 # Files in Binary Packages
635 ##############################
636
637 %files
638 %manifest dali-adaptor.manifest
639 %defattr(-,root,root,-)
640 %defattr(-,app,app,-)
641 %dir %{user_shader_cache_dir}
642 %{_bindir}/*
643 %license LICENSE
644 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
645 # if common ||"undefined"
646 %if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "mobile"
647 %defattr(-,root,root,-)
648 %{_libdir}/libdali-adap*.so*
649 %exclude %{_libdir}/libdali-adap*.so*.mobile
650 %exclude %{_libdir}/libdali-adap*.so*.wearable
651 %exclude %{_libdir}/libdali-adap*.so*.tv
652 %exclude %{_libdir}/libdali-adap*.so*.ivi
653 %endif
654
655 %if %{with wayland}
656 %files dali-video-player-plugin
657 %manifest dali-adaptor.manifest
658 %defattr(-,root,root,-)
659 %{_libdir}/libdali-video-player-plugin.so*
660 %license LICENSE
661 %endif
662
663 %files dali-feedback-plugin
664 %manifest dali-adaptor.manifest
665 %defattr(-,root,root,-)
666 %{_libdir}/libdali-feedback-plugin.so*
667 %{dali_plugin_sound_files}/*
668
669 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
670 # if common ||"undefined"
671 %if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "mobile"
672 %files profile_common
673 # default .so files are housed in the main pkg.
674 %endif
675
676 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
677 # if mobile || "undefined"
678 %if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
679 %files profile_mobile
680 %manifest dali-adaptor.manifest
681 %defattr(-,root,root,-)
682 %{_libdir}/libdali-adap*.so*.mobile
683 %endif
684
685 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
686 # if tv ||"undefined"
687 %if "%{?profile}" != "wearable" && "%{?profile}" != "common" && "%{?profile}" != "ivi" && "%{?profile}" != "mobile"
688 %files profile_tv
689 %manifest dali-adaptor.manifest
690 %defattr(-,root,root,-)
691 %{_libdir}/libdali-adap*.so*.tv
692 %endif
693
694 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
695 # if wearable || "undefined"
696 %if "%{?profile}" != "mobile" && "%{?profile}" != "tv" && "%{?profile}" != "ivi" && "%{?profile}" != "common"
697 %files profile_wearable
698 %manifest dali-adaptor.manifest
699 %defattr(-,root,root,-)
700 %{_libdir}/libdali-adap*.so*.wearable
701 %endif
702
703 # This is for backward-compatibility. This does not deteriorate 4.0 Configurability
704 # if ivi ||"undefined"
705 %if "%{?profile}" != "wearable" && "%{?profile}" != "tv" && "%{?profile}" != "common" && "%{?profile}" != "mobile"
706 %files profile_ivi
707 %manifest dali-adaptor.manifest
708 %defattr(-,root,root,-)
709 %{_libdir}/libdali-adap*.so*.ivi
710 %endif
711
712
713 %files devel
714 %defattr(-,root,root,-)
715 %{dev_include_path}/dali/dali.h
716 %{dev_include_path}/dali/public-api/*
717 %{dev_include_path}/dali/devel-api/*
718 %{dev_include_path}/dali/doc/*
719 %{_libdir}/pkgconfig/dali-adaptor.pc
720 %{_libdir}/pkgconfig/dali-adaptor-uv.pc
721
722 %files integration-devel
723 %defattr(-,root,root,-)
724 %{dev_include_path}/dali/integration-api/adaptors/*
725 %{_libdir}/pkgconfig/dali-adaptor-integration.pc