Change vconf BuildRequire
[platform/core/uifw/dali-adaptor.git] / packaging / dali-adaptor.spec
1 %bcond_with wayland
2
3 Name:       dali-adaptor
4 Summary:    The DALi Tizen Adaptor
5 Version:    1.1.6
6 Release:    1
7 Group:      System/Libraries
8 License:    Apache-2.0, BSD-2.0, MIT
9 URL:        https://review.tizen.org/git/?p=platform/core/uifw/dali-adaptor.git;a=summary
10 Source0:    %{name}-%{version}.tar.gz
11
12 %if "%{profile}" == "mobile"
13 %define dali_profile MOBILE
14 %define dali_feedback_plugin 0
15 %define over_tizen_2_2 1
16 %define shaderbincache_flag DISABLE
17 %endif
18
19 %if "%{profile}" == "tv"
20 %define dali_profile TV
21 %define dali_feedback_plugin 0
22 %define over_tizen_2_2 1
23 %define shaderbincache_flag ENABLE
24 %endif
25
26 %if "%{profile}" == "wearable"
27 %define dali_profile WEARABLE
28 %define dali_feedback_plugin 0
29 %define over_tizen_2_2 1
30 %define shaderbincache_flag DISABLE
31 %endif
32
33 %if "%{profile}" == "common"
34 %define dali_profile COMMON
35 %define dali_feedback_plugin 0
36 %define over_tizen_2_2 0
37 %define shaderbincache_flag DISABLE
38 %endif
39
40 Requires(post): /sbin/ldconfig
41 Requires(postun): /sbin/ldconfig
42 Requires:       giflib
43 BuildRequires:  pkgconfig
44 BuildRequires:  gawk
45 BuildRequires:  pkgconfig(sensor)
46 BuildRequires:  pkgconfig(aul)
47 BuildRequires:  giflib-devel
48 BuildRequires:  pkgconfig(fontconfig)
49 BuildRequires:  pkgconfig(elementary)
50 BuildRequires:  pkgconfig(capi-appfw-application)
51 BuildRequires:  libjpeg-turbo-devel
52 BuildRequires:  pkgconfig(evas)
53 BuildRequires:  dali-devel
54 BuildRequires:  dali-integration-devel
55 BuildRequires:  pkgconfig(vconf)
56 BuildRequires:  tts-devel
57 BuildRequires:  pkgconfig(dlog)
58 BuildRequires:  libdrm-devel
59 BuildRequires:  pkgconfig(libexif)
60 BuildRequires:  pkgconfig(capi-system-system-settings)
61 BuildRequires:  pkgconfig(libpng)
62 BuildRequires:  pkgconfig(glesv2)
63 BuildRequires:  pkgconfig(egl)
64 BuildRequires:  libcurl-devel
65
66
67 %if 0%{?over_tizen_2_2}
68 BuildRequires:  pkgconfig(capi-system-info)
69 %endif
70
71 %if %{with wayland}
72 BuildRequires:  pkgconfig(ecore-wayland)
73 BuildRequires:  pkgconfig(wayland-egl)
74 BuildRequires:  pkgconfig(wayland-client)
75 %else
76 BuildRequires:  pkgconfig(xext)
77 BuildRequires:  pkgconfig(xi)
78 BuildRequires:  pkgconfig(xfixes)
79 BuildRequires:  pkgconfig(xdamage)
80 BuildRequires:  pkgconfig(utilX)
81 %endif
82
83 BuildRequires:  pkgconfig(harfbuzz)
84 BuildRequires:  fribidi-devel
85
86 %description
87 The DALi Tizen Adaptor provides a Tizen specific implementation of the dali-core
88 platform abstraction and application shell
89
90 ##############################
91 # devel
92 ##############################
93 %package devel
94 Summary:    Development components for the DALi Tizen Adaptor
95 Group:      Development/Building
96 Requires:   %{name} = %{version}-%{release}
97 Requires:   %{name}-integration-devel = %{version}-%{release}
98
99 %description devel
100 Development components for the DALi Tizen Adaptor - public headers and package configs
101
102 ##############################
103 # integration-devel
104 ##############################
105 %package integration-devel
106 Summary:    Integration development package for the Adaptor
107 Group:      Development/Building
108 Requires:   %{name} = %{version}-%{release}
109
110 %description integration-devel
111 Integration development package for the Adaptor - headers for integrating with an adaptor library.
112
113 ##############################
114 # Dali Feedback Plugin
115 ##############################
116 %package dali-feedback-plugin
117 Summary:    Plugin to play haptic and audio feedback for Dali
118 Group:      System/Libraries
119 %if 0%{?dali_feedback_plugin}
120 #Requires:       libdeviced
121 BuildRequires:  pkgconfig(mm-sound)
122 BuildRequires:  pkgconfig(haptic)
123 BuildRequires:  libfeedback-devel
124 %endif
125
126 %description dali-feedback-plugin
127 Feedback plugin to play haptic and audio feedback for Dali
128
129 ##############################
130 # Preparation
131 ##############################
132 %prep
133 %setup -q
134 %define dali_data_rw_dir         /usr/share/dali/
135 %define dali_data_ro_dir         /usr/share/dali/
136 %define user_shader_cache_dir    %{dali_data_ro_dir}/core/shaderbin/
137 %define font_preloaded_path      /usr/share/fonts/
138 %define font_downloaded_path     /opt/share/fonts/
139 %define font_application_path    /usr/share/app_fonts/
140 %define font_configuration_file  /opt/etc/fonts/conf.avail/99-slp.conf
141 %define dali_plugin_sound_files  %{dali_data_ro_dir}/plugins/sounds/
142
143 %define dev_include_path %{_includedir}
144
145 ##############################
146 # Build
147 ##############################
148 %build
149 PREFIX+="/usr"
150 CXXFLAGS+=" -Wall -g -Os -fPIC -fvisibility-inlines-hidden -fdata-sections -ffunction-sections "
151 LDFLAGS+=" -Wl,--rpath=%{_libdir} -Wl,--as-needed -Wl,--gc-sections -Wl,-Bsymbolic-functions "
152
153 %ifarch %{arm}
154 CXXFLAGS+=" -D_ARCH_ARM_ -lgcc"
155 %endif
156
157 %if %{with wayland}
158 CFLAGS+=" -DWAYLAND"
159 CXXFLAGS+=" -DWAYLAND"
160 configure_flags="--enable-wayland"
161 %endif
162
163 %if 0%{?over_tizen_2_2}
164 CFLAGS+=" -DOVER_TIZEN_SDK_2_2"
165 CXXFLAGS+=" -DOVER_TIZEN_SDK_2_2"
166 %endif
167
168 libtoolize --force
169 cd %{_builddir}/%{name}-%{version}/build/tizen
170 autoreconf --install
171
172 DALI_DATA_RW_DIR="%{dali_data_rw_dir}" ; export DALI_DATA_RW_DIR
173 DALI_DATA_RO_DIR="%{dali_data_ro_dir}"  ; export DALI_DATA_RO_DIR
174 FONT_PRELOADED_PATH="%{font_preloaded_path}" ; export FONT_PRELOADED_PATH
175 FONT_DOWNLOADED_PATH="%{font_downloaded_path}" ; export FONT_DOWNLOADED_PATH
176 FONT_APPLICATION_PATH="%{font_application_path}"  ; export FONT_APPLICATION_PATH
177 FONT_CONFIGURATION_FILE="%{font_configuration_file}" ; export FONT_CONFIGURATION_FILE
178
179 %configure --prefix=$PREFIX --with-jpeg-turbo --enable-gles=20 --enable-shaderbincache=%{shaderbincache_flag} --enable-profile=%{dali_profile} \
180 %if 0%{?dali_feedback_plugin}
181            --enable-feedback \
182 %endif
183 %if 0%{?over_tizen_2_2}
184            --with-over-tizen_2_2 \
185 %endif
186            $configure_flags --libdir=%{_libdir}
187
188 make %{?jobs:-j%jobs}
189
190 ##############################
191 # Installation
192 ##############################
193 %install
194 rm -rf %{buildroot}
195 cd build/tizen
196 %make_install DALI_DATA_RW_DIR="%{dali_data_rw_dir}" DALI_DATA_RO_DIR="%{dali_data_ro_dir}"
197
198 # LICENSE
199 mkdir -p %{buildroot}/usr/share/license
200 cp -af %{_builddir}/%{name}-%{version}/LICENSE %{buildroot}/usr/share/license/%{name}
201
202 ##############################
203 # Upgrade order:
204 # 1 - Pre Install new package
205 # 2 - Install new package
206 # 3 - Post install new package
207 # 4 - Pre uninstall old package
208 # 5 - Remove files not overwritten by new package
209 # 6 - Post uninstall old package
210 ##############################
211
212 %pre
213 exit 0
214
215 ##############################
216 #  Post Install new package
217 ##############################
218 %post
219 /sbin/ldconfig
220 exit 0
221
222 %if 0%{?dali_feedback_plugin}
223 %post dali-feedback-plugin
224 /sbin/ldconfig
225 exit 0
226 %endif
227
228 ##############################
229 #   Pre Uninstall old package
230 ##############################
231 %preun
232 exit 0
233
234 ##############################
235 #   Post Uninstall old package
236 ##############################
237 %postun
238 /sbin/ldconfig
239 exit 0
240
241 %if 0%{?dali_feedback_plugin}
242 %postun dali-feedback-plugin
243 /sbin/ldconfig
244 exit 0
245 %endif
246
247 ##############################
248 # Files in Binary Packages
249 ##############################
250
251 %files
252 %manifest dali-adaptor.manifest
253 %defattr(-,root,root,-)
254 %{_libdir}/libdali-adap*.so*
255 %defattr(-,app,app,-)
256 %dir %{user_shader_cache_dir}
257 %{_bindir}/*
258 %{_datadir}/license/%{name}
259
260 %files devel
261 %defattr(-,root,root,-)
262 %{dev_include_path}/dali/dali.h
263 %{dev_include_path}/dali/public-api/*
264 %{dev_include_path}/dali/devel-api/*
265 %{dev_include_path}/dali/doc/*
266 %{_libdir}/pkgconfig/dali.pc
267
268 %files integration-devel
269 %defattr(-,root,root,-)
270 %{dev_include_path}/dali/integration-api/adaptors/*
271 %{_libdir}/pkgconfig/dali-adaptor-integration.pc
272
273 %if 0%{?dali_feedback_plugin}
274 %files dali-feedback-plugin
275 %defattr(-,root,root,-)
276 %{_libdir}/libdali-feedback-plugin.so*
277 %{dali_plugin_sound_files}/*
278 %endif
279