[4.0] (AnimatedVectorImageVisual) Use the content default size
[platform/core/uifw/dali-toolkit.git] / packaging / dali-toolkit.spec
1 Name:       dali-toolkit
2 Summary:    Dali 3D engine Toolkit
3 Version:    1.2.90
4 Release:    1
5 Group:      System/Libraries
6 License:    Apache-2.0 and BSD-3-Clause and MIT
7 URL:        https://review.tizen.org/git/?p=platform/core/uifw/dali-toolkit.git;a=summary
8 Source0:    %{name}-%{version}.tar.gz
9
10 Requires(post): /sbin/ldconfig
11 Requires(postun): /sbin/ldconfig
12
13 %if 0%{?tizen_version_major} < 4
14 %define disable_cxx03_build 1
15 %endif
16
17 BuildRequires:  pkgconfig
18 BuildRequires:  pkgconfig(dlog)
19 BuildRequires:  pkgconfig(dali-core)
20 BuildRequires:  pkgconfig(dali-adaptor)
21 %if !0%{?disable_cxx03_build}
22 BuildRequires:  pkgconfig(dali-core-cxx03)
23 BuildRequires:  pkgconfig(dali-adaptor-cxx03)
24 %endif
25 BuildRequires: gettext
26
27
28 #need libtzplatform-config for directory if tizen version is 3.x
29
30 %if 0%{?tizen_version_major} >= 3
31 BuildRequires:  pkgconfig(libtzplatform-config)
32 %endif
33
34 #############################
35 # profile setup
36 #############################
37
38 %if "%{tizen_version_major}" == "2" && 0%{?tizen_profile_name:1}
39 %define profile %{tizen_profile_name}
40 %endif
41
42 %description
43 Dali 3D engine Toolkit - a set of controls that provide
44 user interface functionality.
45
46 ##############################
47 # resource
48 ##############################
49 %package resources_360x360
50 Summary:    default resource files for 360x360
51 Requires:   %{name} = %{version}-%{release}
52 Conflicts:  %{name}-resources_480x800
53 Conflicts:  %{name}-resources_720x1280
54 Conflicts:  %{name}-resources_1920x1080
55 %description resources_360x360
56 dali-toolkit default resource files for 360x360
57 Contain po / sounds / common images / style / style images
58
59 %package resources_480x800
60 Summary:    default resource files for 480x800
61 Requires:   %{name} = %{version}-%{release}
62 Conflicts:  %{name}-resources_360x360
63 Conflicts:  %{name}-resources_720x1280
64 Conflicts:  %{name}-resources_1920x1080
65 %description resources_480x800
66 dali-toolkit default resource files for 480x800
67 Contain po / sounds / common images / style / style images
68
69 %package resources_720x1280
70 Summary:    default resource files for 720x1280
71 Requires:   %{name} = %{version}-%{release}
72 Conflicts:  %{name}-resources_360x360
73 Conflicts:  %{name}-resources_480x800
74 Conflicts:  %{name}-resources_1920x1080
75 %description resources_720x1280
76 dali-toolkit default resource files for 720x1280
77 Contain po / sounds / common images / style / style images
78
79 %package resources_1920x1080
80 Summary:    default resource files for 1920x1080
81 Requires:   %{name} = %{version}-%{release}
82 Conflicts:  %{name}-resources_360x360
83 Conflicts:  %{name}-resources_480x800
84 Conflicts:  %{name}-resources_720x1280
85 %description resources_1920x1080
86 dali-toolkit default resource files for 1920x1080
87 Contain po / sounds / common images / style / style images
88
89 %if !0%{?disable_cxx03_build}
90 %package cxx03
91 Summary:        Dali 3D engine Toolkit with cxx03
92 Provides:       %{name}-cxx03 = %{version}-%{release}
93
94 %description cxx03
95 Dali 3D engine Toolkit with cxx03
96 %endif
97
98 ##############################
99 # devel
100 ##############################
101 %package devel
102 Summary:    Application development package for Dali 3D engine toolkit
103 Group:      Development/Building
104 Requires:   %{name} = %{version}-%{release}
105
106 %description devel
107 Application development package for Dali 3D engine toolkit - headers and package config
108
109 ##############################
110 # Preparation
111 ##############################
112 %prep
113 %setup -q
114
115 #Use TZ_PATH when tizen version is 3.x
116
117 %if "%{tizen_version_major}" == "2"
118 %define dali_data_rw_dir            /opt/usr/share/dali/
119 %define dali_data_ro_dir            /usr/share/dali/
120 %else
121 %define dali_data_rw_dir            %TZ_SYS_SHARE/dali/
122 %define dali_data_ro_dir            %TZ_SYS_RO_SHARE/dali/
123 %endif
124
125 %define dali_toolkit_image_files    %{dali_data_ro_dir}/toolkit/images/
126 %define dali_toolkit_sound_files    %{dali_data_ro_dir}/toolkit/sounds/
127 %define dali_toolkit_style_files    %{dali_data_ro_dir}/toolkit/styles/
128 %define dev_include_path %{_includedir}
129
130 # PO
131 {
132 cd %{_builddir}/dali-toolkit-%{version}/dali-toolkit/po
133 for language in *.po
134 do
135   language=${language%.po}
136   msgfmt -o ${language}.mo ${language}.po
137 done
138 } &> /dev/null
139
140 ##############################
141 # Build
142 ##############################
143 %build
144 PREFIX="/usr"
145 CXXFLAGS+=" -Wall -g -Os -fPIC -fvisibility-inlines-hidden -fdata-sections -ffunction-sections "
146 LDFLAGS+=" -Wl,--rpath=$PREFIX/lib -Wl,--as-needed -Wl,--gc-sections -Wl,-Bsymbolic-functions "
147
148 %if 0%{?enable_coverage}
149 CXXFLAGS+=" --coverage "
150 LDFLAGS+=" --coverage "
151 %endif
152
153 libtoolize --force
154 cd %{_builddir}/dali-toolkit-%{version}/build/tizen
155 autoreconf --install
156 DALI_DATA_RW_DIR="%{dali_data_rw_dir}" ; export DALI_DATA_RW_DIR
157 DALI_DATA_RO_DIR="%{dali_data_ro_dir}" ; export DALI_DATA_RO_DIR
158
159 %configure --enable-profile=TIZEN \
160 %if 0%{?enable_debug}
161            --enable-debug \
162 %endif
163            --enable-i18n=yes \
164            --enable-rename-so=no
165
166 make %{?jobs:-j%jobs}
167
168 pushd %{_builddir}/%{name}-%{version}/build/tizen
169 %make_install DALI_DATA_RW_DIR="%{dali_data_rw_dir}" DALI_DATA_RO_DIR="%{dali_data_ro_dir}"
170 popd
171
172 pushd %{buildroot}%{_libdir}
173 for FILE in libdali-toolkit-cxx11.so*; do mv "$FILE" "%{_builddir}/%{name}-%{version}/build/tizen/$FILE"; done
174 mv pkgconfig/dali-toolkit.pc %{_builddir}/%{name}-%{version}/build/tizen/dali-toolkit.pc
175 popd
176
177 %if !0%{?disable_cxx03_build}
178 make clean
179
180 libtoolize --force
181 cd %{_builddir}/dali-toolkit-%{version}/build/tizen
182 autoreconf --install
183
184 DALI_DATA_RW_DIR="%{dali_data_rw_dir}" ; export DALI_DATA_RW_DIR
185 DALI_DATA_RO_DIR="%{dali_data_ro_dir}" ; export DALI_DATA_RO_DIR
186
187 %configure --enable-profile=TIZEN \
188            --enable-cxx03-abi=yes \
189 %if 0%{?enable_debug}
190            --enable-debug \
191 %endif
192            --enable-i18n=yes \
193            --enable-rename-so=no
194
195 make %{?jobs:-j%jobs}
196 %endif
197
198 ##############################
199 # Installation
200 ##############################
201 %install
202 rm -rf %{buildroot}
203 pushd %{_builddir}/%{name}-%{version}/build/tizen
204 %make_install DALI_DATA_RW_DIR="%{dali_data_rw_dir}" DALI_DATA_RO_DIR="%{dali_data_ro_dir}"
205
206 for FILE in libdali-toolkit-cxx11.so*; do mv "$FILE" "%{buildroot}%{_libdir}/$FILE"; done
207 mv dali-toolkit.pc %{buildroot}%{_libdir}/pkgconfig/dali-toolkit.pc
208
209 # PO
210 {
211 cd %{_builddir}/dali-toolkit-%{version}/dali-toolkit/po
212 for language in *.mo
213 do
214   language=${language%.mo}
215   mkdir -p %{buildroot}/%{_datadir}/locale/${language}/LC_MESSAGES/
216   cp ${language}.mo %{buildroot}/%{_datadir}/locale/${language}/LC_MESSAGES/dali-toolkit.mo
217 done
218 } &> /dev/null
219 popd
220
221 #############################
222 #rename
223 #############################
224 pushd  %{buildroot}%{_libdir}
225 rm -rf libdali-toolkit.so
226 rm -rf libdali-toolkit-cxx11.so
227 %if !0%{?disable_cxx03_build}
228 ln -s libdali-toolkit.so.0.0.* libdali-toolkit-cxx03.so
229 %endif
230 ln -s libdali-toolkit-cxx11.so.0.0.* libdali-toolkit.so
231 popd
232
233 # Remove default style and style images which are for Linux build
234 rm -rf %{buildroot}%{dali_toolkit_style_files}/*
235
236 # Make folder to contain style and style images
237 # After making folder, copy local style and style images to new folder
238 mkdir -p %{buildroot}%{dali_toolkit_style_files}/360x360
239 cp -r dali-toolkit/styles/360x360/* %{buildroot}%{dali_toolkit_style_files}/360x360
240 mkdir -p %{buildroot}%{dali_toolkit_style_files}/480x800
241 cp -r dali-toolkit/styles/480x800/* %{buildroot}%{dali_toolkit_style_files}/480x800
242 mkdir -p %{buildroot}%{dali_toolkit_style_files}/720x1280
243 cp -r dali-toolkit/styles/720x1280/* %{buildroot}%{dali_toolkit_style_files}/720x1280
244 mkdir -p %{buildroot}%{dali_toolkit_style_files}/1920x1080
245 cp -r dali-toolkit/styles/1920x1080/* %{buildroot}%{dali_toolkit_style_files}/1920x1080
246
247 # Copy default feedback theme
248 cp dali-toolkit/styles/default-feedback-theme.json %{buildroot}%{dali_toolkit_style_files}
249
250 ##############################
251 # Pre Install
252 ##############################
253
254 %pre resources_360x360
255 case "$1" in
256   2)
257     pushd %{dali_toolkit_style_files}
258     rm -rf ./*
259     popd
260   ;;
261 esac
262
263 %pre resources_480x800
264 case "$1" in
265   2)
266     pushd %{dali_toolkit_style_files}
267     rm -rf ./*
268     popd
269   ;;
270 esac
271
272 %pre resources_720x1280
273 case "$1" in
274   2)
275     pushd %{dali_toolkit_style_files}
276     rm -rf ./*
277     popd
278   ;;
279 esac
280
281 %pre resources_1920x1080
282 case "$1" in
283   2)
284     pushd %{dali_toolkit_style_files}
285     rm -rf ./*
286     popd
287   ;;
288 esac
289
290 ##############################
291 # Post Install
292 ##############################
293 %post
294 /sbin/ldconfig
295 exit 0
296
297 %post resources_360x360
298 pushd %{dali_toolkit_style_files}/360x360
299 for FILE in *; do mv ./"${FILE}" ../"${FILE}"; done
300 popd
301
302 %post resources_480x800
303 pushd %{dali_toolkit_style_files}/480x800
304 for FILE in *; do mv ./"${FILE}" ../"${FILE}"; done
305 popd
306
307 %post resources_720x1280
308 pushd %{dali_toolkit_style_files}/720x1280
309 for FILE in *; do mv ./"${FILE}" ../"${FILE}"; done
310 popd
311
312 %post resources_1920x1080
313 pushd %{dali_toolkit_style_files}/1920x1080
314 for FILE in *; do mv ./"${FILE}" ../"${FILE}"; done
315 popd
316
317 ##############################
318 # Pre Uninstall
319 ##############################
320
321 %preun resources_360x360
322 case "$1" in
323   0)
324     %preun resources_360x360
325     pushd %{dali_toolkit_style_files}
326     mv images ./360x360
327     mv dali-toolkit-default-theme.json ./360x360
328     popd
329   ;;
330 esac
331
332 %preun resources_480x800
333 case "$1" in
334   0)
335     %preun resources_480x800
336     pushd %{dali_toolkit_style_files}
337     mv images ./480x800
338     mv dali-toolkit-default-theme.json ./480x800
339     popd
340   ;;
341 esac
342
343 %preun resources_720x1280
344 case "$1" in
345   0)
346     %preun resources_720x1280
347     pushd %{dali_toolkit_style_files}
348     mv images ./720x1280
349     mv dali-toolkit-default-theme.json ./720x1280
350     popd
351   ;;
352 esac
353
354 %preun resources_1920x1080
355 case "$1" in
356   0)
357     %preun resources_1920x1080
358     pushd %{dali_toolkit_style_files}
359     mv images ./1920x1080
360     mv dali-toolkit-default-theme.json ./1920x1080
361     popd
362   ;;
363 esac
364
365 ##############################
366 # Post Uninstall
367 ##############################
368 %postun
369 /sbin/ldconfig
370 exit 0
371
372 %postun resources_360x360
373 case "$1" in
374   0)
375     pushd %{dali_toolkit_style_files}
376     rm -rf *
377     popd
378   ;;
379 esac
380
381 %postun resources_480x800
382 case "$1" in
383   0)
384     pushd %{dali_toolkit_style_files}
385     rm -rf *
386     popd
387   ;;
388 esac
389
390 %postun resources_720x1280
391 case "$1" in
392   0)
393     pushd %{dali_toolkit_style_files}
394     rm -rf *
395     popd
396   ;;
397 esac
398
399 %postun resources_1920x1080
400 case "$1" in
401   0)
402     pushd %{dali_toolkit_style_files}
403     rm -rf *
404     popd
405   ;;
406 esac
407
408 ##############################
409 # Files in Binary Packages
410 ##############################
411 %files
412 %if 0%{?enable_dali_smack_rules}
413 %manifest dali-toolkit.manifest-smack
414 %else
415 %manifest dali-toolkit.manifest
416 %endif
417 %defattr(-,root,root,-)
418 %{_libdir}/libdali-toolkit-cxx11.so.*
419 %{_libdir}/libdali-toolkit.so
420 %license LICENSE
421
422 %if !0%{?disable_cxx03_build}
423 %files cxx03
424 %if 0%{?enable_dali_smack_rules}
425 %manifest dali-toolkit.manifest-smack
426 %else
427 %manifest dali-toolkit.manifest
428 %endif
429 %defattr(-,root,root,-)
430 %{_libdir}/libdali-toolkit.so.*
431 %{_libdir}/libdali-toolkit-cxx03.so
432 %license LICENSE
433 %endif
434
435 %files devel
436 %defattr(-,root,root,-)
437 %{dev_include_path}/dali-toolkit/*
438 %{_libdir}/pkgconfig/dali-toolkit.pc
439
440 %files resources_360x360
441 %manifest dali-toolkit-resources.manifest
442 %defattr(-,root,root,-)
443 %{dali_toolkit_image_files}/*
444 %{dali_toolkit_sound_files}/*
445 %{dali_toolkit_style_files}/360x360/*
446 %{dali_toolkit_style_files}/default-feedback-theme.json
447 %{_datadir}/locale/*/LC_MESSAGES/*
448
449 %files resources_480x800
450 %manifest dali-toolkit-resources.manifest
451 %defattr(-,root,root,-)
452 %{dali_toolkit_image_files}/*
453 %{dali_toolkit_sound_files}/*
454 %{dali_toolkit_style_files}/480x800/*
455 %{dali_toolkit_style_files}/default-feedback-theme.json
456 %{_datadir}/locale/*/LC_MESSAGES/*
457
458 %files resources_720x1280
459 %manifest dali-toolkit-resources.manifest
460 %defattr(-,root,root,-)
461 %{dali_toolkit_image_files}/*
462 %{dali_toolkit_sound_files}/*
463 %{dali_toolkit_style_files}/720x1280/*
464 %{dali_toolkit_style_files}/default-feedback-theme.json
465 %{_datadir}/locale/*/LC_MESSAGES/*
466
467 %files resources_1920x1080
468 %manifest dali-toolkit-resources.manifest
469 %defattr(-,root,root,-)
470 %{dali_toolkit_image_files}/*
471 %{dali_toolkit_sound_files}/*
472 %{dali_toolkit_style_files}/1920x1080/*
473 %{dali_toolkit_style_files}/default-feedback-theme.json
474 %{_datadir}/locale/*/LC_MESSAGES/*