delete upgrade script because no need data migration
[platform/core/messaging/msg-service.git] / packaging / msg-service.spec
1 Name:           msg-service
2 Version:        1.0.9
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: boost-devel
19 BuildRequires: cmake
20 BuildRequires: pkgconfig(alarm-service)
21 BuildRequires: pkgconfig(aul)
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(contacts-service2)
31 BuildRequires: pkgconfig(csr)
32 BuildRequires: pkgconfig(cynara-client)
33 BuildRequires: pkgconfig(cynara-creds-commons)
34 BuildRequires: pkgconfig(cynara-creds-socket)
35 BuildRequires: pkgconfig(cynara-session)
36 BuildRequires: pkgconfig(deviced)
37 BuildRequires: pkgconfig(dlog)
38 BuildRequires: pkgconfig(dpm)
39 BuildRequires: pkgconfig(eventsystem)
40 BuildRequires: pkgconfig(gio-2.0)
41 BuildRequires: pkgconfig(icu-uc)
42 BuildRequires: pkgconfig(json-glib-1.0)
43 BuildRequires: pkgconfig(lbs-dbus)
44 BuildRequires: pkgconfig(libcurl)
45 BuildRequires: pkgconfig(libsmack)
46 BuildRequires: pkgconfig(libsystemd-login)
47 BuildRequires: pkgconfig(libtzplatform-config)
48 BuildRequires: pkgconfig(libxml-2.0)
49 BuildRequires: pkgconfig(libwbxml2)
50 BuildRequires: pkgconfig(motion)
51 BuildRequires: pkgconfig(phonenumber-utils)
52 BuildRequires: pkgconfig(sqlite3)
53 BuildRequires: pkgconfig(tapi)
54 BuildRequires: pkgconfig(vconf)
55 # Below BuildRequires-statements are only for msg-manager
56 BuildRequires: gettext-tools
57 BuildRequires: hash-signer
58 BuildRequires: pkgconfig(badge)
59 BuildRequires: pkgconfig(callmgr_client)
60 BuildRequires: pkgconfig(capi-appfw-event)
61 BuildRequires: pkgconfig(capi-appfw-package-manager)
62 BuildRequires: pkgconfig(capi-appfw-service-application)
63 BuildRequires: pkgconfig(capi-media-player)
64 BuildRequires: pkgconfig(capi-media-sound-manager)
65 BuildRequires: pkgconfig(capi-media-recorder)
66 BuildRequires: pkgconfig(feedback)
67 BuildRequires: pkgconfig(notification)
68
69 %description
70 Description: Messaging Framework Library
71
72 %package devel
73 License:        Apache-2.0
74 Summary:        Messaging Framework Library (development)
75 Requires:       %{name} = %{version}-%{release}
76 Group:          Development/Libraries
77
78 %description devel
79 Description: Messaging Framework Library (development)
80
81 %package -n sms-plugin
82 License:        Apache-2.0
83 Summary:        SMS plugin library
84 Requires:       %{name} = %{version}-%{release}
85 Group:          System/Libraries
86 Requires(post): /sbin/ldconfig
87 Requires(postun): /sbin/ldconfig
88
89 %description -n sms-plugin
90 Description: SMS plugin library
91
92 %package -n mms-plugin
93 License:        Apache-2.0
94 Summary:        MMS plugin library
95 Requires:       %{name} = %{version}-%{release}
96 Group:          System/Libraries
97 Requires(post): /sbin/ldconfig
98 Requires(postun): /sbin/ldconfig
99
100 %description -n mms-plugin
101 Description: MMS plugin library
102
103 %package -n msg-manager
104 License:        Apache-2.0
105 Summary:        Message manager application
106 Requires:       %{name} = %{version}-%{release}
107 Group:          Applications/Messaging
108
109 %description -n msg-manager
110 Description: Message manager application
111
112 %define APP_PKGNAME     org.tizen.msg-manager
113 %define APP_PREFIX      %{TZ_SYS_RO_APP}/%{APP_PKGNAME}
114 %define APP_RESDIR      %{APP_PREFIX}/res
115 %define APP_LOCALEDIR   %{APP_RESDIR}/locale
116
117 %ifarch i586
118 %define i586_option     "-D_TIZEN_I586_ENABLED:BOOL=ON"
119 %else
120 %define i586_option     "-D_TIZEN_I586_ENABLED:BOOL=OFF"
121 %endif
122
123 %prep
124 %setup -q
125
126 %build
127 cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} \
128                 -DLIB_INSTALL_DIR=%{_libdir} \
129                 -DAPP_MANIFESTDIR=%{TZ_SYS_RO_PACKAGES}   \
130                 -DAPP_BINDIR=%{APP_PREFIX}/bin   \
131                 -DAPP_LOCALEDIR=%{APP_RESDIR}/locale \
132                 -DTZ_SYS_RO_APP=%TZ_SYS_RO_APP \
133                 -DTZ_SYS_GLOBALUSER_DATA=%TZ_SYS_GLOBALUSER_DATA \
134                 -DTZ_SYS_GLOBALUSER_DB=%TZ_SYS_GLOBALUSER_DB \
135                 -DTZ_SYS_HOME=%TZ_SYS_HOME \
136                 -DTZ_SYS_BIN=%TZ_SYS_BIN \
137                 %{i586_option}
138
139 make %{?jobs:-j%jobs}
140
141 %install
142 rm -rf %{buildroot}
143 mkdir -p %{buildroot}/etc/config
144
145 %make_install
146
147 %define tizen_sign 1
148 %define tizen_sign_base %{APP_PREFIX}
149 %define tizen_sign_level platform
150 %define tizen_author_sign 1
151 %define tizen_dist_sign 1
152
153 mkdir -p %{buildroot}%{_unitdir}/multi-user.target.wants
154 install -m 0644 %SOURCE1 %{buildroot}%{_unitdir}/msg-server.service
155 %install_service multi-user.target.wants msg-server.service
156
157 mkdir -p %{buildroot}%{_unitdir}/sockets.target.wants
158 install -m 0644 %SOURCE2 %{buildroot}%{_unitdir}/msg-server.socket
159 %install_service sockets.target.wants msg-server.socket
160
161 mkdir -p %{buildroot}%{TZ_SYS_GLOBALUSER_DB}
162 sqlite3 %{buildroot}%{TZ_SYS_GLOBALUSER_DB}/.msg_service.db "PRAGMA journal_mode = PERSIST;"
163 sqlite3 %{buildroot}%{TZ_SYS_GLOBALUSER_DB}/.msg_service.db < %{buildroot}/usr/share/msg-service/msg-service-db.sql
164
165 rm %{buildroot}/usr/share/msg-service/msg-service-db.sql
166 rm %{buildroot}%{TZ_SYS_GLOBALUSER_DB}/.msg_service.db-journal
167 touch %{buildroot}%{TZ_SYS_GLOBALUSER_DB}/.msg_service.db-journal
168
169 %post -n sms-plugin -p /sbin/ldconfig
170 %post -n mms-plugin -p /sbin/ldconfig
171
172 %post
173 /sbin/ldconfig
174
175 chmod 640 %{TZ_SYS_GLOBALUSER_DB}/.msg_service.db
176 chmod 640 %{TZ_SYS_GLOBALUSER_DB}/.msg_service.db-journal
177
178 mkdir -p -m 770 %{TZ_SYS_GLOBALUSER_DATA}/msg-service
179 mkdir -p -m 750 %{TZ_SYS_GLOBALUSER_DATA}/msg-service/msgdata
180 mkdir -p -m 750 %{TZ_SYS_GLOBALUSER_DATA}/msg-service/smildata
181 mkdir -p -m 770 %{TZ_SYS_GLOBALUSER_DATA}/msg-service/ipcdata
182 mkdir -p -m 750 %{TZ_SYS_GLOBALUSER_DATA}/msg-service/msgdata/thumbnails
183
184 chown messaging:priv_message_read %{TZ_SYS_GLOBALUSER_DB}/.msg_service.db
185 chown messaging:priv_message_read %{TZ_SYS_GLOBALUSER_DB}/.msg_service.db-journal
186 chown messaging:priv_message_read %{TZ_SYS_GLOBALUSER_DATA}/msg-service
187 chown messaging:priv_message_read %{TZ_SYS_GLOBALUSER_DATA}/msg-service/msgdata
188 chown messaging:priv_message_read %{TZ_SYS_GLOBALUSER_DATA}/msg-service/smildata
189 chown messaging:priv_message_read %{TZ_SYS_GLOBALUSER_DATA}/msg-service/ipcdata
190 chown messaging:priv_message_read %{TZ_SYS_GLOBALUSER_DATA}/msg-service/msgdata/thumbnails
191
192 chmod g+s %{TZ_SYS_GLOBALUSER_DATA}/msg-service/msgdata
193 chmod g+s %{TZ_SYS_GLOBALUSER_DATA}/msg-service/smildata
194 chmod g+s %{TZ_SYS_GLOBALUSER_DATA}/msg-service/ipcdata
195 chmod g+s %{TZ_SYS_GLOBALUSER_DATA}/msg-service/msgdata/thumbnails
196
197 chsmack -a "*" %{TZ_SYS_GLOBALUSER_DB}/.msg_service.db
198 chsmack -a "*" %{TZ_SYS_GLOBALUSER_DB}/.msg_service.db-journal
199 chsmack -a "System::Shared" %{TZ_SYS_GLOBALUSER_DATA}/msg-service/
200 chsmack -a "System::Shared" %{TZ_SYS_GLOBALUSER_DATA}/msg-service/msgdata -t
201 chsmack -a "System::Shared" %{TZ_SYS_GLOBALUSER_DATA}/msg-service/smildata -t
202 chsmack -a "System::Run" %{TZ_SYS_GLOBALUSER_DATA}/msg-service/ipcdata -t
203 chsmack -a "System::Shared" %{TZ_SYS_GLOBALUSER_DATA}/msg-service/msgdata/thumbnails -t
204
205 #Multi group to ipcdata directory
206 chmod o= %{TZ_SYS_GLOBALUSER_DATA}/msg-service/ipcdata
207 setfacl -m group:priv_message_write:rw %{TZ_SYS_GLOBALUSER_DATA}/msg-service/ipcdata
208
209
210 %postun -p /sbin/ldconfig
211
212 %postun -n sms-plugin -p /sbin/ldconfig
213 %postun -n mms-plugin -p /sbin/ldconfig
214
215 %files
216 %manifest msg-service.manifest
217 %license LICENSE.APLv2
218 %config(noreplace) %{TZ_SYS_GLOBALUSER_DB}/.msg_service.db*
219 %{_bindir}/msg-server
220 %{_libdir}/libmsg_plugin_manager.so
221 %{_libdir}/libmsg_mapi.so.*
222 %{_libdir}/libmsg_framework_handler.so
223 %{_libdir}/libmsg_transaction_manager.so
224 %{_libdir}/libmsg_utils.so
225 %{_libdir}/libmsg_externals.so
226 %{_libdir}/libmsg_transaction_proxy.so
227 %{_libdir}/libmsg_vobject.so
228 %{_unitdir}/msg-server.service
229 %{_unitdir}/multi-user.target.wants/msg-server.service
230 %{_unitdir}/msg-server.socket
231 %{_unitdir}/sockets.target.wants/msg-server.socket
232
233 %files devel
234 %license LICENSE.APLv2
235 %{_libdir}/libmsg_mapi.so
236 %{_libdir}/pkgconfig/msg-service.pc
237 %{_includedir}/msg-service/*
238
239 %files -n sms-plugin
240 %manifest sms-plugin.manifest
241 %license LICENSE.APLv2
242 %{_libdir}/libmsg_sms_plugin.so
243
244 %files -n mms-plugin
245 %manifest mms-plugin.manifest
246 %license LICENSE.APLv2
247 %{_libdir}/libmsg_mms_plugin.so
248
249 %files -n msg-manager
250 %manifest msg-manager.manifest
251 %license LICENSE.APLv2
252 %{APP_PREFIX}/bin/msg-manager
253 %{TZ_SYS_RO_PACKAGES}/*.xml
254 %{APP_PREFIX}/author-signature.xml
255 %{APP_PREFIX}/signature1.xml
256 %{APP_RESDIR}/*
257
258 %changelog