Merge "Added FontMetrics to FontClient API" into new_text
[platform/core/uifw/dali-adaptor.git] / packaging / dali-adaptor-tv.spec
1 Name:       dali-adaptor
2 Summary:    The DALi Tizen Adaptor
3 Version:    1.0.25
4 Release:    1
5 Group:      System/Libraries
6 License:    Apache-2.0
7 URL:        https://review.tizen.org/git/?p=platform/core/uifw/dali-adaptor.git;a=summary
8 Source0:    %{name}-%{version}.tar.gz
9
10 Requires(post): /sbin/ldconfig
11 Requires(postun): /sbin/ldconfig
12 Requires:       boost-thread
13 Requires:       giflib
14 BuildRequires:  pkgconfig
15 BuildRequires:  gawk
16 BuildRequires:  pkgconfig(sensor)
17 BuildRequires:  pkgconfig(aul)
18 BuildRequires:  boost-devel
19 BuildRequires:  giflib-devel
20 BuildRequires:  pkgconfig(fontconfig)
21 BuildRequires:  pkgconfig(elementary)
22 BuildRequires:  pkgconfig(capi-appfw-application)
23 BuildRequires:  libjpeg-turbo-devel
24 BuildRequires:  pkgconfig(evas)
25 BuildRequires:  dali-devel
26 BuildRequires:  dali-integration-devel
27 BuildRequires:  libxml2-devel
28 BuildRequires:  pkgconfig(vconf)
29 BuildRequires:  tts-devel
30 BuildRequires:  pkgconfig(dlog)
31 BuildRequires:  libdrm-devel
32 BuildRequires:  pkgconfig(libexif)
33 BuildRequires:  pkgconfig(capi-system-system-settings)
34 BuildRequires:  pkgconfig(libpng)
35 BuildRequires:  pkgconfig(xi)
36 BuildRequires:  pkgconfig(xfixes)
37 BuildRequires:  pkgconfig(xdamage)
38 BuildRequires:  pkgconfig(utilX)
39 BuildRequires:  pkgconfig(gles20)
40 BuildRequires:  pkgconfig(harfbuzz)
41 BuildRequires:  fribidi-devel
42
43 %description
44 The DALi Tizen Adaptor provides a Tizen specific implementation of the dali-core
45 platform abstraction and application shell
46
47 ##############################
48 # devel
49 ##############################
50 %package devel
51 Summary:    Development components for the DALi Tizen Adaptor
52 Group:      Development/Building
53 Requires:   %{name} = %{version}-%{release}
54
55 %description devel
56 Development components for the DALi Tizen Adaptor - public headers and package configs
57
58 ##############################
59 # Dali Feedback Plugin
60 ##############################
61 %package dali-feedback-plugin
62 Summary:    Plugin to play haptic and audio feedback for Dali
63 Group:      System/Libraries
64 #Requires:       libdeviced
65 BuildRequires:  pkgconfig(mm-sound)
66 BuildRequires:  pkgconfig(haptic)
67 BuildRequires:  libfeedback-devel
68
69 %description dali-feedback-plugin
70 Feedback plugin to play haptic and audio feedback for Dali
71
72 ##############################
73 # Dali Dynamics/Bullet Plugin
74 ##############################
75 %package dali-bullet-plugin
76 Summary:    Plugin to provide physics
77 Group:      System/Libraries
78 BuildRequires:  pkgconfig(bullet)
79
80 %description dali-bullet-plugin
81 Dynamics plugin to wrap the libBulletDynamics libraries
82
83 ##############################
84 # Preparation
85 ##############################
86 %prep
87 %setup -q
88 %define dali_data_rw_dir         /usr/share/dali/
89 %define dali_data_ro_dir         /usr/share/dali/
90 %define user_font_cache_dir      %{dali_data_rw_dir}/glyphcache/
91 %define user_shader_cache_dir    %{dali_data_rw_dir}/core/shaderbin/
92 %define font_preloaded_path      /usr/share/fonts/
93 %define font_downloaded_path     /opt/share/fonts/
94 %define font_application_path    /usr/share/app_fonts/
95 %define font_configuration_file  /opt/etc/fonts/conf.avail/99-slp.conf
96 %define dali_plugin_sound_files  %{dali_data_ro_dir}/plugins/sounds/
97 %define dali_plugin_theme_files  %{dali_data_ro_dir}/themes/feedback-themes/
98
99 %define dev_include_path %{_includedir}
100
101 ##############################
102 # Build
103 ##############################
104 %build
105 PREFIX+="/usr"
106 CXXFLAGS+=" -Wall -g -Os -fPIC -fvisibility-inlines-hidden -fdata-sections -ffunction-sections "
107 LDFLAGS+=" -Wl,--rpath=%{_libdir} -Wl,--as-needed -Wl,--gc-sections "
108
109 %if 0%{?sec_build_binary_debug_enable}
110 export CFLAGS="$CFLAGS -DTIZEN_DEBUG_ENABLE"
111 export CXXFLAGS="$CXXFLAGS -DTIZEN_DEBUG_ENABLE"
112 export FFLAGS="$FFLAGS -DTIZEN_DEBUG_ENABLE"
113 %endif
114
115 %ifarch %{arm}
116 CXXFLAGS+=" -D_ARCH_ARM_ -lgcc"
117 %endif
118
119 libtoolize --force
120 cd %{_builddir}/%{name}-%{version}/build/tizen
121 autoreconf --install
122 DALI_DATA_RW_DIR="%{dali_data_rw_dir}" ; export DALI_DATA_RW_DIR
123 DALI_DATA_RO_DIR="%{dali_data_ro_dir}" ; export DALI_DATA_RO_DIR
124 FONT_PRELOADED_PATH="%{font_preloaded_path}" ; export FONT_PRELOADED_PATH
125 FONT_DOWNLOADED_PATH="%{font_downloaded_path}" ; export FONT_DOWNLOADED_PATH
126 FONT_APPLICATION_PATH="%{font_application_path}" ; export FONT_APPLICATION_PATH
127 FONT_CONFIGURATION_FILE="%{font_configuration_file}" ; export FONT_CONFIGURATION_FILE
128
129 %configure --with-jpeg-turbo --enable-gles=20 --enable-profile=TV --libdir=%{_libdir}
130
131 make %{?jobs:-j%jobs}
132
133 ##############################
134 # Installation
135 ##############################
136 %install
137 rm -rf %{buildroot}
138 cd build/tizen
139 %make_install DALI_DATA_RW_DIR="%{dali_data_rw_dir}" DALI_DATA_RO_DIR="%{dali_data_ro_dir}"
140
141 # LICENSE
142 mkdir -p %{buildroot}/usr/share/license
143 cp -af %{_builddir}/%{name}-%{version}/LICENSE %{buildroot}/usr/share/license/%{name}
144
145 ##############################
146 # Upgrade order:
147 # 1 - Pre Install new package
148 # 2 - Install new package
149 # 3 - Post install new package
150 # 4 - Pre uninstall old package
151 # 5 - Remove files not overwritten by new package
152 # 6 - Post uninstall old package
153 ##############################
154
155 %pre
156 rm -f %{user_font_cache_dir}/*
157 rm -f %{user_shader_cache_dir}/*
158 exit 0
159
160 ##############################
161 #  Post Install new package
162 ##############################
163 %post
164 /sbin/ldconfig
165 chown 5000:5000 %{user_font_cache_dir}
166 chown 5000:5000 %{user_shader_cache_dir}
167 exit 0
168
169 %post dali-feedback-plugin
170 /sbin/ldconfig
171 exit 0
172
173 %post dali-bullet-plugin
174 /sbin/ldconfig
175 exit 0
176
177 ##############################
178 #   Pre Uninstall old package
179 ##############################
180 %preun
181 rm -f %{user_font_cache_dir}/*
182 rm -f %{user_shader_cache_dir}/*
183 exit 0
184
185 ##############################
186 #   Post Uninstall old package
187 ##############################
188 %postun
189 /sbin/ldconfig
190 exit 0
191
192 %postun dali-feedback-plugin
193 /sbin/ldconfig
194 exit 0
195
196 %postun dali-bullet-plugin
197 /sbin/ldconfig
198 exit 0
199
200
201 ##############################
202 # Files in Binary Packages
203 ##############################
204
205 %files
206 %manifest dali-adaptor.manifest-tv
207 %defattr(-,root,root,-)
208 %{_libdir}/libdali-adap*.so*
209 %defattr(-,app,app,-)
210 %dir %{user_font_cache_dir}
211 %dir %{user_shader_cache_dir}
212 %{_bindir}/*
213 %{_datadir}/license/%{name}
214
215 %files devel
216 %defattr(-,root,root,-)
217 %{dev_include_path}/dali/*
218 %{_libdir}/pkgconfig/dali*.pc
219
220 %files dali-feedback-plugin
221 %defattr(-,root,root,-)
222 %{_libdir}/libdali-feedback-plugin.so*
223 %{dali_plugin_sound_files}/*
224 %{dali_plugin_theme_files}/*
225
226 %files dali-bullet-plugin
227 %defattr(-,root,root,-)
228 %{_libdir}/libdali-bullet-plugin.so*