Remove storage dependency
[platform/core/multimedia/media-server.git] / packaging / media-server.spec
1 Name:       media-server
2 Summary:    A server for media content management
3 Version:    0.3.25
4 Release:    0
5 Group:      Multimedia/Service
6 License:    Apache-2.0
7 Source0:    %{name}-%{version}.tar.gz
8 Source1:    media-server.service
9 Source2:        media-server-user.service
10 Source3:    media-server-user.path
11 Source4:    media-server.path
12 Source5:    500.media-server.upgrade.sh
13 Source1001:     %{name}.manifest
14 Source1002:     libmedia-utils.manifest
15 Source1003:     libmedia-utils-devel.manifest
16 Requires(post): /usr/bin/buxton2ctl
17 BuildRequires:  pkgconfig(glib-2.0)
18 BuildRequires:  pkgconfig(vconf)
19 BuildRequires:  pkgconfig(dlog)
20 BuildRequires:  pkgconfig(aul)
21 BuildRequires:  pkgconfig(deviced)
22 BuildRequires:  pkgconfig(dbus-glib-1)
23 BuildRequires:  pkgconfig(sqlite3)
24 BuildRequires:  pkgconfig(db-util)
25 BuildRequires:  pkgconfig(notification)
26 BuildRequires:  pkgconfig(iniparser)
27 BuildRequires:  pkgconfig(libsmack)
28 BuildRequires:  pkgconfig(libsystemd-login)
29 BuildRequires:  pkgconfig(libtzplatform-config)
30 BuildRequires:  pkgconfig(cynara-client)
31 BuildRequires:  pkgconfig(cynara-session)
32 BuildRequires:  pkgconfig(capi-system-info)
33 BuildRequires:  gettext-tools
34
35 %if 0%{?TIZEN_PRODUCT_TV}
36 BuildRequires:  pkgconfig(capi-system-usbdevice)
37 BuildRequires:  pkgconfig(power-defs)
38 BuildRequires:  pkgconfig(capi-system-power-tv)
39 %define product_tv 1
40 %else
41 %define product_tv 0
42 %endif
43
44 %define upgrade_script_path /usr/share/upgrade/scripts
45
46 %description
47 Description: A server for media content management.
48
49 %package -n libmedia-utils
50 Summary:   The media server runtime library
51 Group:     Multimedia/Libraries
52 Requires:  media-server = %{version}-%{release}
53
54 %description -n libmedia-utils
55 Description : The media server runtime library.
56
57 %package -n libmedia-utils-devel
58 Summary:   The media server runtime library (development)
59 Group:     Multimedia/Development
60 Requires:  libmedia-utils = %{version}-%{release}
61 Requires:  libtzplatform-config-devel
62
63 %description -n libmedia-utils-devel
64 Description: The media server runtime library. (Development files included)
65
66 %prep
67 %setup -q
68 cp %{SOURCE1001} %{SOURCE1002} %{SOURCE1003} .
69 cp po/* .
70
71 %build
72 %if "%{asan}" == "1"
73 %restore_fcommon
74 %endif
75 %if 0%{?product_tv}
76 export CFLAGS="$CFLAGS -D_USE_SENIOR_MODE -D_USE_RECORDED_CONTENT -D_USE_SUSPEND_MODE -D_SET_VIP_PROCESS"
77 %else
78 %if "%{?profile}" == "mobile"
79 export CFLAGS="$CFLAGS -D_USE_MULTI_USER -D_USE_META_UPDATE -D_USE_DEVICED_DBUS -D_USE_SDCARD"
80 %else
81 %if "%{?profile}" == "tv"
82 export CFLAGS="$CFLAGS -D_USE_MULTI_USER -D_USE_META_UPDATE -D_USE_DEVICED_DBUS -D_USE_TV_PATH"
83 %else
84 export CFLAGS="$CFLAGS -D_USE_MULTI_USER -D_USE_META_UPDATE -D_USE_DEVICED_DBUS"
85 %endif
86 %endif
87 %endif
88 export CFLAGS="$CFLAGS -DTIZEN_DEBUG_ENABLE -DSYSCONFDIR=\\\"%{_sysconfdir}\\\""
89 export CFLAGS+=" -DPATH_LIBDIR=\\\"%{_libdir}\\\""
90 rm -rf autom4te.cache
91 rm -f aclocal.m4 ltmain.sh
92 mkdir -p m4
93 %reconfigure --prefix=%{_prefix} \
94 %if 0%{?product_tv}
95         --enable-product-tv \
96 %else
97         --disable-product-tv \
98 %endif
99         --disable-static
100 %__make %{?jobs:-j%jobs}
101
102 #install .po files
103 /usr/bin/msgfmt -o ar.mo ar.po
104 /usr/bin/msgfmt -o az.mo az.po
105 /usr/bin/msgfmt -o bg.mo bg.po
106 /usr/bin/msgfmt -o ca.mo ca.po
107 /usr/bin/msgfmt -o cs.mo cs.po
108 /usr/bin/msgfmt -o da.mo da.po
109 /usr/bin/msgfmt -o el_GR.mo el_GR.po
110 /usr/bin/msgfmt -o en.mo en.po
111 /usr/bin/msgfmt -o en_PH.mo en_PH.po
112 /usr/bin/msgfmt -o en_US.mo en_US.po
113 /usr/bin/msgfmt -o es_ES.mo es_ES.po
114 /usr/bin/msgfmt -o et.mo et.po
115 /usr/bin/msgfmt -o eu.mo eu.po
116 /usr/bin/msgfmt -o fi.mo fi.po
117 /usr/bin/msgfmt -o fr_CA.mo fr_CA.po
118 /usr/bin/msgfmt -o ga.mo ga.po
119 /usr/bin/msgfmt -o gl.mo gl.po
120 /usr/bin/msgfmt -o hi.mo hi.po
121 /usr/bin/msgfmt -o hr.mo hr.po
122 /usr/bin/msgfmt -o hu.mo hu.po
123 /usr/bin/msgfmt -o hy.mo hy.po
124 /usr/bin/msgfmt -o is.mo is.po
125 /usr/bin/msgfmt -o it_IT.mo it_IT.po
126 /usr/bin/msgfmt -o ja_JP.mo ja_JP.po
127 /usr/bin/msgfmt -o ka.mo ka.po
128 /usr/bin/msgfmt -o kk.mo kk.po
129 /usr/bin/msgfmt -o ko_KR.mo ko_KR.po
130 /usr/bin/msgfmt -o lt.mo lt.po
131 /usr/bin/msgfmt -o lv.mo lv.po
132 /usr/bin/msgfmt -o mk.mo mk.po
133 /usr/bin/msgfmt -o nb.mo nb.po
134 /usr/bin/msgfmt -o pl.mo pl.po
135 /usr/bin/msgfmt -o pt_BR.mo pt_BR.po
136 /usr/bin/msgfmt -o pt_PT.mo pt_PT.po
137 /usr/bin/msgfmt -o ro.mo ro.po
138 /usr/bin/msgfmt -o ru_RU.mo ru_RU.po
139 /usr/bin/msgfmt -o sk.mo sk.po
140 /usr/bin/msgfmt -o sl.mo sl.po
141 /usr/bin/msgfmt -o sr.mo sr.po
142 /usr/bin/msgfmt -o sv.mo sv.po
143 /usr/bin/msgfmt -o tr_TR.mo tr_TR.po
144 /usr/bin/msgfmt -o uk.mo uk.po
145 /usr/bin/msgfmt -o uz.mo uz.po
146 /usr/bin/msgfmt -o zh_CN.mo zh_CN.po
147 /usr/bin/msgfmt -o zh_HK.mo zh_HK.po
148 /usr/bin/msgfmt -o zh_TW.mo zh_TW.po
149
150 %install
151 rm -rf %{buildroot}
152
153 mkdir -p %{buildroot}%{_datadir}/locale/ar/LC_MESSAGES/
154 mkdir -p %{buildroot}%{_datadir}/locale/az/LC_MESSAGES/
155 mkdir -p %{buildroot}%{_datadir}/locale/bg/LC_MESSAGES/
156 mkdir -p %{buildroot}%{_datadir}/locale/ca/LC_MESSAGES/
157 mkdir -p %{buildroot}%{_datadir}/locale/cs/LC_MESSAGES/
158 mkdir -p %{buildroot}%{_datadir}/locale/da/LC_MESSAGES/
159 mkdir -p %{buildroot}%{_datadir}/locale/el_GR/LC_MESSAGES/
160 mkdir -p %{buildroot}%{_datadir}/locale/en/LC_MESSAGES/
161 mkdir -p %{buildroot}%{_datadir}/locale/en_PH/LC_MESSAGES/
162 mkdir -p %{buildroot}%{_datadir}/locale/en_US/LC_MESSAGES/
163 mkdir -p %{buildroot}%{_datadir}/locale/es_ES/LC_MESSAGES/
164 mkdir -p %{buildroot}%{_datadir}/locale/et/LC_MESSAGES/
165 mkdir -p %{buildroot}%{_datadir}/locale/eu/LC_MESSAGES/
166 mkdir -p %{buildroot}%{_datadir}/locale/fi/LC_MESSAGES/
167 mkdir -p %{buildroot}%{_datadir}/locale/fr_CA/LC_MESSAGES/
168 mkdir -p %{buildroot}%{_datadir}/locale/ga/LC_MESSAGES/
169 mkdir -p %{buildroot}%{_datadir}/locale/gl/LC_MESSAGES/
170 mkdir -p %{buildroot}%{_datadir}/locale/hi/LC_MESSAGES/
171 mkdir -p %{buildroot}%{_datadir}/locale/hr/LC_MESSAGES/
172 mkdir -p %{buildroot}%{_datadir}/locale/hu/LC_MESSAGES/
173 mkdir -p %{buildroot}%{_datadir}/locale/hy/LC_MESSAGES/
174 mkdir -p %{buildroot}%{_datadir}/locale/is/LC_MESSAGES/
175 mkdir -p %{buildroot}%{_datadir}/locale/it_IT/LC_MESSAGES/
176 mkdir -p %{buildroot}%{_datadir}/locale/ja_JP/LC_MESSAGES/
177 mkdir -p %{buildroot}%{_datadir}/locale/ka/LC_MESSAGES/
178 mkdir -p %{buildroot}%{_datadir}/locale/kk/LC_MESSAGES/
179 mkdir -p %{buildroot}%{_datadir}/locale/ko_KR/LC_MESSAGES/
180 mkdir -p %{buildroot}%{_datadir}/locale/lt/LC_MESSAGES/
181 mkdir -p %{buildroot}%{_datadir}/locale/lv/LC_MESSAGES/
182 mkdir -p %{buildroot}%{_datadir}/locale/mk/LC_MESSAGES/
183 mkdir -p %{buildroot}%{_datadir}/locale/nb/LC_MESSAGES/
184 mkdir -p %{buildroot}%{_datadir}/locale/pl/LC_MESSAGES/
185 mkdir -p %{buildroot}%{_datadir}/locale/pt_BR/LC_MESSAGES/
186 mkdir -p %{buildroot}%{_datadir}/locale/pt_PT/LC_MESSAGES/
187 mkdir -p %{buildroot}%{_datadir}/locale/ro/LC_MESSAGES/
188 mkdir -p %{buildroot}%{_datadir}/locale/ru_RU/LC_MESSAGES/
189 mkdir -p %{buildroot}%{_datadir}/locale/sk/LC_MESSAGES/
190 mkdir -p %{buildroot}%{_datadir}/locale/sl/LC_MESSAGES/
191 mkdir -p %{buildroot}%{_datadir}/locale/sr/LC_MESSAGES/
192 mkdir -p %{buildroot}%{_datadir}/locale/sv/LC_MESSAGES/
193 mkdir -p %{buildroot}%{_datadir}/locale/tr_TR/LC_MESSAGES/
194 mkdir -p %{buildroot}%{_datadir}/locale/uk/LC_MESSAGES/
195 mkdir -p %{buildroot}%{_datadir}/locale/uz/LC_MESSAGES/
196 mkdir -p %{buildroot}%{_datadir}/locale/zh_CN/LC_MESSAGES/
197 mkdir -p %{buildroot}%{_datadir}/locale/zh_HK/LC_MESSAGES/
198 mkdir -p %{buildroot}%{_datadir}/locale/zh_TW/LC_MESSAGES/
199
200 cp ar.mo %{buildroot}%{_datadir}/locale/ar/LC_MESSAGES/media_svr.mo
201 cp az.mo %{buildroot}%{_datadir}/locale/az/LC_MESSAGES/media_svr.mo
202 cp bg.mo %{buildroot}%{_datadir}/locale/bg/LC_MESSAGES/media_svr.mo
203 cp ca.mo %{buildroot}%{_datadir}/locale/ca/LC_MESSAGES/media_svr.mo
204 cp cs.mo %{buildroot}%{_datadir}/locale/cs/LC_MESSAGES/media_svr.mo
205 cp da.mo %{buildroot}%{_datadir}/locale/da/LC_MESSAGES/media_svr.mo
206 cp el_GR.mo %{buildroot}%{_datadir}/locale/el_GR/LC_MESSAGES/media_svr.mo
207 cp en.mo %{buildroot}%{_datadir}/locale/en/LC_MESSAGES/media_svr.mo
208 cp en_PH.mo %{buildroot}%{_datadir}/locale/en_PH/LC_MESSAGES/media_svr.mo
209 cp en_US.mo %{buildroot}%{_datadir}/locale/en_US/LC_MESSAGES/media_svr.mo
210 cp es_ES.mo %{buildroot}%{_datadir}/locale/es_ES/LC_MESSAGES/media_svr.mo
211 cp et.mo %{buildroot}%{_datadir}/locale/et/LC_MESSAGES/media_svr.mo
212 cp eu.mo %{buildroot}%{_datadir}/locale/eu/LC_MESSAGES/media_svr.mo
213 cp fi.mo %{buildroot}%{_datadir}/locale/fi/LC_MESSAGES/media_svr.mo
214 cp fr_CA.mo %{buildroot}%{_datadir}/locale/fr_CA/LC_MESSAGES/media_svr.mo
215 cp ga.mo %{buildroot}%{_datadir}/locale/ga/LC_MESSAGES/media_svr.mo
216 cp gl.mo %{buildroot}%{_datadir}/locale/gl/LC_MESSAGES/media_svr.mo
217 cp hi.mo %{buildroot}%{_datadir}/locale/hi/LC_MESSAGES/media_svr.mo
218 cp hr.mo %{buildroot}%{_datadir}/locale/hr/LC_MESSAGES/media_svr.mo
219 cp hu.mo %{buildroot}%{_datadir}/locale/hu/LC_MESSAGES/media_svr.mo
220 cp hy.mo %{buildroot}%{_datadir}/locale/hy/LC_MESSAGES/media_svr.mo
221 cp is.mo %{buildroot}%{_datadir}/locale/is/LC_MESSAGES/media_svr.mo
222 cp it_IT.mo %{buildroot}%{_datadir}/locale/it_IT/LC_MESSAGES/media_svr.mo
223 cp ja_JP.mo %{buildroot}%{_datadir}/locale/ja_JP/LC_MESSAGES/media_svr.mo
224 cp ka.mo %{buildroot}%{_datadir}/locale/ka/LC_MESSAGES/media_svr.mo
225 cp kk.mo %{buildroot}%{_datadir}/locale/kk/LC_MESSAGES/media_svr.mo
226 cp ko_KR.mo %{buildroot}%{_datadir}/locale/ko_KR/LC_MESSAGES/media_svr.mo
227 cp lt.mo %{buildroot}%{_datadir}/locale/lt/LC_MESSAGES/media_svr.mo
228 cp lv.mo %{buildroot}%{_datadir}/locale/lv/LC_MESSAGES/media_svr.mo
229 cp mk.mo %{buildroot}%{_datadir}/locale/mk/LC_MESSAGES/media_svr.mo
230 cp nb.mo %{buildroot}%{_datadir}/locale/nb/LC_MESSAGES/media_svr.mo
231 cp pl.mo %{buildroot}%{_datadir}/locale/pl/LC_MESSAGES/media_svr.mo
232 cp pt_BR.mo %{buildroot}%{_datadir}/locale/pt_BR/LC_MESSAGES/media_svr.mo
233 cp pt_PT.mo %{buildroot}%{_datadir}/locale/pt_PT/LC_MESSAGES/media_svr.mo
234 cp ro.mo %{buildroot}%{_datadir}/locale/ro/LC_MESSAGES/media_svr.mo
235 cp ru_RU.mo %{buildroot}%{_datadir}/locale/ru_RU/LC_MESSAGES/media_svr.mo
236 cp sk.mo %{buildroot}%{_datadir}/locale/sk/LC_MESSAGES/media_svr.mo
237 cp sl.mo %{buildroot}%{_datadir}/locale/sl/LC_MESSAGES/media_svr.mo
238 cp sr.mo %{buildroot}%{_datadir}/locale/sr/LC_MESSAGES/media_svr.mo
239 cp sv.mo %{buildroot}%{_datadir}/locale/sv/LC_MESSAGES/media_svr.mo
240 cp tr_TR.mo %{buildroot}%{_datadir}/locale/tr_TR/LC_MESSAGES/media_svr.mo
241 cp uk.mo %{buildroot}%{_datadir}/locale/uk/LC_MESSAGES/media_svr.mo
242 cp uz.mo %{buildroot}%{_datadir}/locale/uz/LC_MESSAGES/media_svr.mo
243 cp zh_CN.mo %{buildroot}%{_datadir}/locale/zh_CN/LC_MESSAGES/media_svr.mo
244 cp zh_HK.mo %{buildroot}%{_datadir}/locale/zh_HK/LC_MESSAGES/media_svr.mo
245 cp zh_TW.mo %{buildroot}%{_datadir}/locale/zh_TW/LC_MESSAGES/media_svr.mo
246
247 %make_install
248
249 mkdir -p %{buildroot}%{_unitdir}/multi-user.target.wants
250 install -m 644 %{SOURCE1} %{buildroot}%{_unitdir}/media-server.service
251 %if !0%{?product_tv}
252 mkdir -p %{buildroot}%{_unitdir_user}
253 install -m 644 %{SOURCE2} %{buildroot}%{_unitdir_user}/media-server-user.service
254 install -m 644 %{SOURCE3} %{buildroot}%{_unitdir_user}/media-server-user.path
255 %endif
256 %if "%{?profile}" == "mobile"
257 install -m 644 %{SOURCE4} %{buildroot}%{_unitdir}/media-server.path
258 %else
259 ln -s ../media-server.service %{buildroot}%{_unitdir}/multi-user.target.wants/media-server.service
260 %endif
261 #ini file
262 mkdir -p %{buildroot}/etc/multimedia
263 %if 0%{?product_tv}
264 cp -rf %{_builddir}/%{name}-%{version}/media_content_config_product.ini %{buildroot}/etc/multimedia/media_content_config.ini
265 %else
266 cp -rf %{_builddir}/%{name}-%{version}/media_content_config.ini %{buildroot}/etc/multimedia/media_content_config.ini
267 %endif
268 cp -rf %{_builddir}/%{name}-%{version}/media-server-plugin %{buildroot}/etc/multimedia/media-server-plugin
269 mkdir -p %{buildroot}/etc/gumd/useradd.d
270 cp -rf %{_builddir}/%{name}-%{version}/30_media-server-add.post %{buildroot}/etc/gumd/useradd.d/30_media-server-add.post
271 #dummy db file for reset media DB
272 %if 0%{?product_tv}
273 cp -rf %{_builddir}/%{name}-%{version}/data/media_product.db %{buildroot}/etc/multimedia/.media.db
274 %else
275 cp -rf %{_builddir}/%{name}-%{version}/data/media.db %{buildroot}/etc/multimedia/.media.db
276 %endif
277
278 #OS Upgrade
279 mkdir -p %{buildroot}%{upgrade_script_path}
280 cp -f %{SOURCE5} %{buildroot}%{upgrade_script_path}
281
282 %post
283 # setup dbupdate in user session
284 mkdir -p %{_unitdir_user}/basic.target.wants/
285 ln -sf ../media-server-user.path  %{_unitdir_user}/basic.target.wants/
286 %if "%{?profile}" == "mobile"
287 ln -sf ../media-server.path  %{_unitdir}/multi-user.target.wants/
288 %endif
289 chmod 755 /etc/gumd/useradd.d/30_media-server-add.post
290 buxton2ctl -i -d create-int32 "system" "db/filemanager/dbupdate" "1" "http://tizen.org/privilege/internal/default/public" "http://tizen.org/privilege/internal/default/public"
291 buxton2ctl -i -d create-int32 "memory" "memory/filemanager/Mmc" "0" "http://tizen.org/privilege/internal/default/public" "http://tizen.org/privilege/internal/default/public"
292 buxton2ctl -i -d create-int32 "system" "db/private/extractstatus" "1" "http://tizen.org/privilege/internal/default/public" "http://tizen.org/privilege/internal/default/public"
293 buxton2ctl -i -d create-int32 "system" "file/private/mediaserver/scan_internal" "1" "http://tizen.org/privilege/internal/default/public" "http://tizen.org/privilege/internal/default/public"
294 buxton2ctl -i -d create-int32 "system" "file/private/mediaserver/scan_directory" "1" "http://tizen.org/privilege/internal/default/public" "http://tizen.org/privilege/internal/default/public"
295 buxton2ctl -i -d create-int32 "system" "file/private/mediaserver/db_limit" "0" "http://tizen.org/privilege/internal/default/public" "http://tizen.org/privilege/internal/default/public"
296 buxton2ctl -i -d create-int32 "system" "file/private/mediaserver/db_reset" "0" "http://tizen.org/privilege/internal/default/public" "http://tizen.org/privilege/internal/default/public"
297 buxton2ctl -i -d create-int32 "memory" "memory/private/mediaserver/server_status" "0" "http://tizen.org/privilege/internal/default/public" "http://tizen.org/privilege/internal/default/public"
298 buxton2ctl -i -d create-int32 "system" "db/mediascanner/poweroff_status" "0" "http://tizen.org/privilege/internal/default/public" "http://tizen.org/privilege/internal/default/public"
299
300 %post -n libmedia-utils -p /sbin/ldconfig
301
302 %postun -n libmedia-utils -p /sbin/ldconfig
303
304 %files
305 %manifest %{name}.manifest
306 %defattr(-,root,root,-)
307 %{_bindir}/media-server
308 %{_bindir}/media-scanner
309 %{_bindir}/media-scanner-v2
310 %{_bindir}/mediadb-update
311 %{_unitdir}/media-server.service
312 %if "%{?profile}" == "mobile"
313 %{_unitdir}/media-server.path
314 %else
315 %{_unitdir}/multi-user.target.wants/media-server.service
316 %endif
317 %if !0%{?product_tv}
318 %{_unitdir_user}/media-server-user.service
319 %{_unitdir_user}/media-server-user.path
320 %endif
321 /etc/multimedia/media_content_config.ini
322 /etc/multimedia/media-server-plugin
323 /etc/gumd/useradd.d/30_media-server-add.post
324 /etc/multimedia/.media.db
325 %{_datadir}/locale/*/LC_MESSAGES/*
326 %license LICENSE.APLv2.0
327 %{upgrade_script_path}/500.media-server.upgrade.sh
328
329 %files -n libmedia-utils
330 %manifest libmedia-utils.manifest
331 %license LICENSE.APLv2.0
332 %defattr(-,root,root,-)
333 %{_libdir}/libmedia-utils.so.0
334 %{_libdir}/libmedia-utils.so.0.0.0
335
336 %files -n libmedia-utils-devel
337 %manifest libmedia-utils-devel.manifest
338 %defattr(-,root,root,-)
339 %{_libdir}/libmedia-utils.so
340 %{_libdir}/pkgconfig/libmedia-utils.pc
341 %{_includedir}/media-utils/*.h
342