Remove trivial unnecessary profile dependencies
[platform/core/messaging/msg-service.git] / packaging / msg-service.spec
1 Name:           msg-service
2 Version:        1.0.2
3 Release:        2
4 License:        Apache-2.0
5 Summary:        Messaging Framework Library
6 Group:          System/Libraries
7 Source0:        %{name}-%{version}.tar.gz
8 Source1:        msg-server.service
9 Source2:        msg-server.socket
10
11 Requires(post): /usr/bin/sqlite3
12 Requires(post): /sbin/ldconfig
13 Requires(postun): /sbin/ldconfig
14 Requires(post): systemd
15 Requires(postun): systemd
16 Requires: acl
17 Requires: security-config
18 BuildRequires: cmake
19 BuildRequires: pkgconfig(alarm-service)
20 BuildRequires: pkgconfig(aul)
21 BuildRequires: pkgconfig(boost)
22 BuildRequires: pkgconfig(bundle)
23 BuildRequires: pkgconfig(capi-media-image-util)
24 BuildRequires: pkgconfig(capi-media-metadata-extractor)
25 BuildRequires: pkgconfig(capi-media-thumbnail-util)
26 BuildRequires: pkgconfig(capi-network-connection)
27 BuildRequires: pkgconfig(capi-system-device)
28 BuildRequires: pkgconfig(capi-system-info)
29 BuildRequires: pkgconfig(capi-telephony)
30 BuildRequires: pkgconfig(csr)
31 BuildRequires: pkgconfig(cynara-client)
32 BuildRequires: pkgconfig(cynara-creds-commons)
33 BuildRequires: pkgconfig(cynara-creds-socket)
34 BuildRequires: pkgconfig(cynara-session)
35 BuildRequires: pkgconfig(deviced)
36 BuildRequires: pkgconfig(dlog)
37 BuildRequires: pkgconfig(dpm)
38 BuildRequires: pkgconfig(eventsystem)
39 BuildRequires: pkgconfig(gio-2.0)
40 BuildRequires: pkgconfig(icu-uc)
41 BuildRequires: pkgconfig(json-glib-1.0)
42 BuildRequires: pkgconfig(lbs-dbus)
43 BuildRequires: pkgconfig(libcurl)
44 BuildRequires: pkgconfig(libsmack)
45 BuildRequires: pkgconfig(libsystemd-login)
46 BuildRequires: pkgconfig(libtzplatform-config)
47 BuildRequires: pkgconfig(libxml-2.0)
48 BuildRequires: pkgconfig(libwbxml2)
49 BuildRequires: pkgconfig(motion)
50 BuildRequires: pkgconfig(sqlite3)
51 BuildRequires: pkgconfig(tapi)
52 BuildRequires: pkgconfig(vconf)
53 %if "%{?profile}" != "wearable"
54 BuildRequires: pkgconfig(contacts-service2)
55 %endif
56 %if "%{?profile}" == "mobile"
57 BuildRequires: gettext-tools
58 BuildRequires: hash-signer
59 BuildRequires: pkgconfig(badge)
60 BuildRequires: pkgconfig(callmgr_client)
61 BuildRequires: pkgconfig(capi-appfw-application)
62 BuildRequires: pkgconfig(capi-appfw-package-manager)
63 BuildRequires: pkgconfig(capi-appfw-service-application)
64 BuildRequires: pkgconfig(capi-media-player)
65 BuildRequires: pkgconfig(capi-media-sound-manager)
66 BuildRequires: pkgconfig(feedback)
67 BuildRequires: pkgconfig(notification)
68 %endif
69
70 %description
71 Description: Messaging Framework Library
72
73
74 %package devel
75 License:        Apache-2.0
76 Summary:        Messaging Framework Library (development)
77 Requires:       %{name} = %{version}-%{release}
78 Group:          Development/Libraries
79
80 %description devel
81 Description: Messaging Framework Library (development)
82
83
84 %package tools
85 License:        Apache-2.0
86 Summary:        Messaging server application
87 Requires:       %{name} = %{version}-%{release}
88 Group:          TO_BU / FILL_IN
89 Requires(post): /usr/bin/sqlite3
90 Requires(post): /sbin/ldconfig
91 Requires(postun): /sbin/ldconfig
92
93 %description tools
94 Description:  Messaging server application
95
96
97 %package -n sms-plugin
98 License:        Apache-2.0
99 Summary:        SMS plugin library
100 Requires:       %{name} = %{version}-%{release}
101 Group:          System/Libraries
102 Requires(post): /sbin/ldconfig
103 Requires(postun): /sbin/ldconfig
104
105 %description -n sms-plugin
106 Description: SMS plugin library
107
108 %package -n mms-plugin
109 License:        Apache-2.0
110 Summary:        MMS plugin library
111 Requires:       %{name} = %{version}-%{release}
112 Group:          System/Libraries
113 Requires(post): /sbin/ldconfig
114 Requires(postun): /sbin/ldconfig
115
116 %description -n mms-plugin
117 Description: MMS plugin library
118
119 %package -n msg-manager
120 License:        Apache-2.0
121 Summary:        Message manager application
122 Requires:       %{name} = %{version}-%{release}
123 Group:          Applications
124
125 %description -n msg-manager
126 Description: Message manager application
127
128 %if "%{?profile}" == "mobile"
129 %define APP_PKGNAME     org.tizen.msg-manager
130 %define APP_PREFIX      %{TZ_SYS_RO_APP}/%{APP_PKGNAME}
131 %define APP_BINDIR      %{APP_PREFIX}/bin
132 %define APP_RESDIR      %{APP_PREFIX}/res
133 %define APP_LOCALEDIR   %{APP_RESDIR}/locale
134 %define APP_MANIFESTDIR %{TZ_SYS_RO_PACKAGES}
135 %endif
136
137 %prep
138 %setup -q
139
140 %build
141 cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} \
142                 -DLIB_INSTALL_DIR=%{_libdir} \
143 %if "%{?profile}" == "mobile"
144                 -DAPP_MANIFESTDIR=%{APP_MANIFESTDIR}   \
145                 -DAPP_BINDIR=%{APP_BINDIR}   \
146                 -DAPP_LOCALEDIR=%{APP_LOCALEDIR}   \
147 %endif
148                 -DTZ_SYS_RO_APP=%TZ_SYS_RO_APP \
149                 -DTZ_SYS_GLOBALUSER_DATA=%TZ_SYS_GLOBALUSER_DATA \
150                 -DTZ_SYS_GLOBALUSER_DB=%TZ_SYS_GLOBALUSER_DB \
151                 -DTZ_SYS_HOME=%TZ_SYS_HOME \
152                 -DTZ_SYS_BIN=%TZ_SYS_BIN \
153 %ifarch i586
154 -D_TIZEN_I586_ENABLED:BOOL=ON \
155 %else
156 -D_TIZEN_I586_ENABLED:BOOL=OFF \
157 %endif
158 %if "%{?profile}" == "wearable"
159 -D_MSG_WEARABLE_PROFILE:BOOL=ON \
160 %else
161 -D_MSG_WEARABLE_PROFILE:BOOL=OFF \
162 %endif
163 %if "%{?profile}" == "mobile"
164 -D_MSG_MOBILE_PROFILE:BOOL=ON \
165 %else
166 -D_MSG_MOBILE_PROFILE:BOOL=OFF \
167 %endif
168
169 make %{?jobs:-j%jobs}
170
171 %install
172 rm -rf %{buildroot}
173 mkdir -p %{buildroot}/usr/share/license
174 mkdir -p %{buildroot}/etc/config
175 mkdir -p %{buildroot}/usr/share/upgrade/scripts
176 cp -f 500.msg-service.patch.sh %{buildroot}/usr/share/upgrade/scripts
177
178 %make_install
179
180 %if "%{?profile}" == "mobile"
181 %define tizen_sign 1
182 %define tizen_sign_base %{APP_PREFIX}
183 %define tizen_sign_level platform
184 %define tizen_author_sign 1
185 %define tizen_dist_sign 1
186 %endif
187
188 mkdir -p %{buildroot}%{_unitdir}/multi-user.target.wants
189 install -m 0644 %SOURCE1 %{buildroot}%{_unitdir}/msg-server.service
190 %install_service multi-user.target.wants msg-server.service
191
192 mkdir -p %{buildroot}%{_unitdir}/sockets.target.wants
193 install -m 0644 %SOURCE2 %{buildroot}%{_unitdir}/msg-server.socket
194 %install_service sockets.target.wants msg-server.socket
195
196 mkdir -p %{buildroot}%{TZ_SYS_GLOBALUSER_DB}
197 sqlite3 %{buildroot}%{TZ_SYS_GLOBALUSER_DB}/.msg_service.db "PRAGMA journal_mode = PERSIST;"
198 sqlite3 %{buildroot}%{TZ_SYS_GLOBALUSER_DB}/.msg_service.db < %{buildroot}/usr/share/msg-service/msg-service-db.sql
199
200 rm %{buildroot}/usr/share/msg-service/msg-service-db.sql
201 rm %{buildroot}%{TZ_SYS_GLOBALUSER_DB}/.msg_service.db-journal
202 touch %{buildroot}%{TZ_SYS_GLOBALUSER_DB}/.msg_service.db-journal
203
204 %post tools
205 /sbin/ldconfig
206
207 chmod 640 %{TZ_SYS_GLOBALUSER_DB}/.msg_service.db
208 chmod 640 %{TZ_SYS_GLOBALUSER_DB}/.msg_service.db-journal
209
210 mkdir -p -m 770 %{TZ_SYS_GLOBALUSER_DATA}/msg-service
211 mkdir -p -m 750 %{TZ_SYS_GLOBALUSER_DATA}/msg-service/msgdata
212 mkdir -p -m 750 %{TZ_SYS_GLOBALUSER_DATA}/msg-service/smildata
213 mkdir -p -m 770 %{TZ_SYS_GLOBALUSER_DATA}/msg-service/ipcdata
214 mkdir -p -m 750 %{TZ_SYS_GLOBALUSER_DATA}/msg-service/msgdata/thumbnails
215
216 chown messaging:priv_message_read %{TZ_SYS_GLOBALUSER_DB}/.msg_service.db
217 chown messaging:priv_message_read %{TZ_SYS_GLOBALUSER_DB}/.msg_service.db-journal
218 chown messaging:priv_message_read %{TZ_SYS_GLOBALUSER_DATA}/msg-service
219 chown messaging:priv_message_read %{TZ_SYS_GLOBALUSER_DATA}/msg-service/msgdata
220 chown messaging:priv_message_read %{TZ_SYS_GLOBALUSER_DATA}/msg-service/smildata
221 chown messaging:priv_message_read %{TZ_SYS_GLOBALUSER_DATA}/msg-service/ipcdata
222 chown messaging:priv_message_read %{TZ_SYS_GLOBALUSER_DATA}/msg-service/msgdata/thumbnails
223
224 chmod g+s %{TZ_SYS_GLOBALUSER_DATA}/msg-service/msgdata
225 chmod g+s %{TZ_SYS_GLOBALUSER_DATA}/msg-service/smildata
226 chmod g+s %{TZ_SYS_GLOBALUSER_DATA}/msg-service/ipcdata
227 chmod g+s %{TZ_SYS_GLOBALUSER_DATA}/msg-service/msgdata/thumbnails
228
229 chsmack -a "*" %{TZ_SYS_GLOBALUSER_DB}/.msg_service.db
230 chsmack -a "*" %{TZ_SYS_GLOBALUSER_DB}/.msg_service.db-journal
231 chsmack -a "System::Shared" %{TZ_SYS_GLOBALUSER_DATA}/msg-service/
232 chsmack -a "System::Shared" %{TZ_SYS_GLOBALUSER_DATA}/msg-service/msgdata -t
233 chsmack -a "System::Shared" %{TZ_SYS_GLOBALUSER_DATA}/msg-service/smildata -t
234 chsmack -a "System::Run" %{TZ_SYS_GLOBALUSER_DATA}/msg-service/ipcdata -t
235 chsmack -a "System::Shared" %{TZ_SYS_GLOBALUSER_DATA}/msg-service/msgdata/thumbnails -t
236
237 #Multi group to ipcdata directory
238 chmod o= %{TZ_SYS_GLOBALUSER_DATA}/msg-service/ipcdata
239 setfacl -m group:priv_message_write:rw %{TZ_SYS_GLOBALUSER_DATA}/msg-service/ipcdata
240
241 %post -n sms-plugin -p /sbin/ldconfig
242 %post -n mms-plugin -p /sbin/ldconfig
243
244 %post
245 /sbin/ldconfig
246
247 %postun -p /sbin/ldconfig
248
249 %postun tools -p /sbin/ldconfig
250 %postun -n sms-plugin -p /sbin/ldconfig
251 %postun -n mms-plugin -p /sbin/ldconfig
252
253 %files
254 %manifest msg-service.manifest
255 %license LICENSE.APLv2
256 %{_bindir}/msg-server
257 %{_libdir}/libmsg_plugin_manager.so
258 %{_libdir}/libmsg_mapi.so.*
259 %{_libdir}/libmsg_framework_handler.so
260 %{_libdir}/libmsg_transaction_manager.so
261 %{_libdir}/libmsg_utils.so
262 %{_libdir}/libmsg_externals.so
263 %{_libdir}/libmsg_transaction_proxy.so
264 %{_libdir}/libmsg_vobject.so
265 /usr/share/upgrade/scripts/500.msg-service.patch.sh
266
267 %files devel
268 %license LICENSE.APLv2
269 %{_libdir}/libmsg_mapi.so
270 %{_libdir}/pkgconfig/msg-service.pc
271 %{_includedir}/msg-service/*
272
273 %files tools
274 %manifest msg-service-tools.manifest
275 %license LICENSE.APLv2
276 %config(noreplace) %{TZ_SYS_GLOBALUSER_DB}/.msg_service.db*
277 %{_unitdir}/msg-server.service
278 %{_unitdir}/multi-user.target.wants/msg-server.service
279 %{_unitdir}/msg-server.socket
280 %{_unitdir}/sockets.target.wants/msg-server.socket
281
282 %files -n sms-plugin
283 %manifest sms-plugin.manifest
284 %license LICENSE.APLv2
285 %{_libdir}/libmsg_sms_plugin.so
286
287 %files -n mms-plugin
288 %manifest mms-plugin.manifest
289 %license LICENSE.APLv2
290 %{_libdir}/libmsg_mms_plugin.so
291
292 %if "%{?profile}" == "mobile"
293 %files -n msg-manager
294 %manifest msg-manager.manifest
295 %license LICENSE.APLv2
296 %{APP_BINDIR}/msg-manager
297 %{APP_MANIFESTDIR}/*.xml
298 %{APP_PREFIX}/author-signature.xml
299 %{APP_PREFIX}/signature1.xml
300 %{APP_RESDIR}/*
301 %endif
302
303 %changelog