Prevent fix and version up
[framework/messaging/email-service.git] / packaging / email-service.spec
1 Name:       email-service
2 Summary:    E-mail Framework Middleware package
3 Version:    0.10.97
4 Release:    1
5 Group:      System/Libraries
6 License:    TBD
7 Source0:    %{name}-%{version}.tar.gz
8 Source1:    email.service
9 Requires: connman
10 Requires: webkit2-efl
11 Requires(post):    /sbin/ldconfig
12 Requires(post):    systemd
13 Requires(post):    /usr/bin/sqlite3
14 Requires(post):    /usr/bin/vconftool
15 Requires(preun):   systemd
16 Requires(postun):  /sbin/ldconfig
17 Requires(postun):  systemd
18 BuildRequires:  cmake
19 BuildRequires:  pkgconfig(glib-2.0)
20 BuildRequires:  pkgconfig(gthread-2.0)
21 BuildRequires:  pkgconfig(aul)
22 BuildRequires:  pkgconfig(vconf-internal-keys)
23 BuildRequires:  pkgconfig(vconf)
24 BuildRequires:  pkgconfig(dlog)
25 BuildRequires:  pkgconfig(db-util)
26 BuildRequires:  pkgconfig(dbus-1)
27 BuildRequires:  pkgconfig(dbus-glib-1)
28 BuildRequires:  pkgconfig(contacts-service2)
29 BuildRequires:  pkgconfig(uw-imap-toolkit)
30 BuildRequires:  pkgconfig(drm-client)
31 BuildRequires:  pkgconfig(openssl)
32 BuildRequires:  pkgconfig(alarm-service)
33 BuildRequires:  pkgconfig(mm-player)
34 BuildRequires:  pkgconfig(mm-session)
35 BuildRequires:  pkgconfig(secure-storage)
36 BuildRequires:  pkgconfig(notification)
37 BuildRequires:  pkgconfig(accounts-svc)
38 BuildRequires:  pkgconfig(libsystemd-daemon)
39 BuildRequires:  pkgconfig(capi-base-common)
40 BuildRequires:  pkgconfig(libcurl)
41 BuildRequires:  pkgconfig(libxml-2.0)
42 BuildRequires:  pkgconfig(gconf-2.0)
43 BuildRequires:  pkgconfig(cert-svc)
44 BuildRequires:  pkgconfig(badge)
45 BuildRequires:  pkgconfig(feedback)
46 BuildRequires:  pkgconfig(capi-appfw-application)
47 BuildRequires:  pkgconfig(libwbxml2)
48 BuildRequires:  pkgconfig(msg-service)
49
50 %description
51 E-mail Framework Middleware Library/Binary package
52
53
54 %package devel
55 Summary:    E-mail Framework Middleware Development package
56 Group:      Development/Libraries
57 Requires:   %{name} = %{version}-%{release}
58
59 %description devel
60 E-mail Framework Middleware Development package
61
62
63 %prep
64 %setup -q
65
66 %build
67
68 export CFLAGS="${CFLAGS} -fPIC -Wall -g -fvisibility=hidden"
69 export CXXFLAGS="${CXXFLAGS} -fPIC -Wall -g -fvisibility=hidden"
70 export LDFLAGS="${LDFLAGS} -Wl,--hash-style=both -Wl,--rpath=%{_libdir} -Wl,--as-needed"
71
72 %cmake .
73
74 make %{?_smp_mflags}
75
76 %install
77 mkdir -p %{buildroot}/usr/share/license
78 %make_install
79
80 mkdir -p %{buildroot}/usr/lib/systemd/user/tizen-middleware.target.wants
81 install -m 0644 %SOURCE1 %{buildroot}/usr/lib/systemd/user/
82 ln -sf ../email.service %{buildroot}/usr/lib/systemd/user/tizen-middleware.target.wants/
83
84
85 %post
86 /sbin/ldconfig
87
88 #################################################################
89 # Add preset account information
90 #################################################################
91 echo "[EMAIL-SERVICE] Start adding preset account information..." 
92
93 ################################################################################################
94
95 # for default mail slot szie
96 vconftool set -t int    db/private/email-service/slot_size "100"        -g 6514
97
98 # for latest mail id
99 vconftool set -t int    db/private/email-service/latest_mail_id "0"     -g 6514
100
101 # for default account id
102 vconftool set -t int    db/private/email-service/default_account_id "0" -g 6514
103
104 # for default account id
105 vconftool set -t int    memory/sync/email "0" -i -g 6514
106
107 # for priority send 
108 vconftool set -t string db/private/email-service/noti_ringtone_path "Whistle.mp3" -g 6514
109 vconftool set -t int    db/private/email-service/noti_rep_type "0" -g 6514
110 vconftool set -t bool   db/private/email-service/noti_notification_ticker "0" -g 6514
111 vconftool set -t bool   db/private/email-service/noti_display_content_ticker "0" -g 6514
112 vconftool set -t bool   db/private/email-service/noti_badge_ticker "0" -i -g 6514
113 vconftool set -t int    db/private/email-service/noti_private_id/1 "0" -i -g 6514
114 vconftool set -t int    db/private/email-service/noti_private_id/2 "0" -i -g 6514
115 vconftool set -t int    db/private/email-service/noti_private_id/3 "0" -i -g 6514
116 vconftool set -t int    db/private/email-service/noti_private_id/4 "0" -i -g 6514
117 vconftool set -t int    db/private/email-service/noti_private_id/5 "0" -i -g 6514
118 vconftool set -t int    db/private/email-service/noti_private_id/6 "0" -i -g 6514
119 vconftool set -t int    db/private/email-service/noti_private_id/7 "0" -i -g 6514
120 vconftool set -t int    db/private/email-service/noti_private_id/8 "0" -i -g 6514
121 vconftool set -t int    db/private/email-service/noti_private_id/9 "0" -i -g 6514
122 vconftool set -t int    db/private/email-service/noti_private_id/10 "0" -i -g 6514
123
124 #################################################################
125 # Set executin script
126 #################################################################
127 echo "[EMAIL-SERVICE] Set executing script ..."
128 EMAIL_SERVICE_EXEC_SCRIPT=/etc/rc.d/init.d/email-service
129 EMAIL_SERVICE_BOOT_SCRIPT=/etc/rc.d/rc3.d/S70email-service
130 EMAIL_SERVICE_FASTBOOT_SCRIPT=/etc/rc.d/rc5.d/S70email-service
131 echo '#!/bin/sh' > ${EMAIL_SERVICE_EXEC_SCRIPT}
132 echo 'account_count=$(sqlite3 /opt/usr/dbspace/.email-service.db "select COUNT(*) from mail_account_tbl")' >> ${EMAIL_SERVICE_EXEC_SCRIPT}
133 echo 'if [ "$(echo "$account_count" | cut -c0-1)" == "0" ]' >> ${EMAIL_SERVICE_EXEC_SCRIPT}
134 echo 'then' >> ${EMAIL_SERVICE_EXEC_SCRIPT}
135 echo '  echo 'There is no account'' >> ${EMAIL_SERVICE_EXEC_SCRIPT}
136 echo 'elif [ "$(echo "$account_count" | cut -c0-1)" == "" ]' >> ${EMAIL_SERVICE_EXEC_SCRIPT}
137 echo 'then' >> ${EMAIL_SERVICE_EXEC_SCRIPT}
138 echo '  echo 'DB failure'' >> ${EMAIL_SERVICE_EXEC_SCRIPT}
139 echo 'else' >> ${EMAIL_SERVICE_EXEC_SCRIPT}
140 echo '  /usr/bin/email-service & ' >> ${EMAIL_SERVICE_EXEC_SCRIPT}
141 echo 'fi' >> ${EMAIL_SERVICE_EXEC_SCRIPT}
142 chmod 755 ${EMAIL_SERVICE_EXEC_SCRIPT}
143 rm -rf ${EMAIL_SERVICE_BOOT_SCRIPT}
144 rm -rf ${EMAIL_SERVICE_FASTBOOT_SCRIPT}
145 ln -s ${EMAIL_SERVICE_EXEC_SCRIPT} ${EMAIL_SERVICE_BOOT_SCRIPT} 
146 ln -s ${EMAIL_SERVICE_EXEC_SCRIPT} ${EMAIL_SERVICE_FASTBOOT_SCRIPT}
147 echo "[EMAIL-SERVICE] Finish executing script ..."
148
149 #################################################################
150 # Create DB file and tables.
151 #################################################################
152 echo "[EMAIL-SERVICE] Creating Email Tables ..."
153 mkdir -p /opt/usr
154 mkdir -p /opt/usr/dbspace
155
156 sqlite3 /opt/usr/dbspace/.email-service.db 'PRAGMA journal_mode = PERSIST;'
157 sqlite3 /opt/usr/dbspace/.email-service.db < /opt/usr/data/email/res/email-service.sql
158
159 echo "[EMAIL-SERVICE] Finish Creating Email Tables."
160
161 chgrp 6006 /opt/usr/dbspace/.email-service.db*
162 chmod 664 /opt/usr/dbspace/.email-service.db
163 chmod 664 /opt/usr/dbspace/.email-service.db-journal
164
165 mkdir -m775 -p /opt/usr/data/email/.email_data
166 chgrp 6006 /opt/usr/data/email/.email_data
167 chsmack -a 'email-service' /opt/usr/data/email/.email_data
168
169 mkdir -m775 -p /opt/usr/data/email/.email_data/tmp
170 chgrp 6006 /opt/usr/data/email/.email_data/tmp
171 chsmack -a 'email-service' /opt/usr/data/email/.email_data/tmp
172
173 mkdir -p /opt/share/cert-svc/certs/trusteduser/email
174 chgrp 6006 /opt/share/cert-svc/certs/trusteduser/email
175
176 if [ -f /opt/usr/dbspace/.email-service.db ]
177 then
178         chsmack -a 'email-service::db' /opt/usr/dbspace/.email-service.db*
179 fi
180
181 systemctl daemon-reload
182 if [ $1 == 1 ]; then
183     systemctl restart email.service
184 fi
185
186 %preun
187 if [ $1 == 0]; then
188     systemctl stop email.service
189 fi
190
191 %postun
192 /sbin/ldconfig
193 systemctl daemon-reload
194
195
196 %files
197 %manifest email-service.manifest
198 %exclude /usr/bin/email-test-app
199 %{_bindir}/email-service
200 /opt/usr/data/email/res/*
201 %{_libdir}/lib*.so.*
202 /usr/lib/systemd/user/email.service
203 /usr/lib/systemd/user/tizen-middleware.target.wants/email.service
204 /usr/share/dbus-1/services/email-service.service
205 /usr/share/license/email-service/LICENSE
206
207 /etc/smack/accesses2.d/email-service.rule
208
209 %files devel
210 %{_includedir}/email-service/*.h
211 %{_libdir}/lib*.so
212 %{_libdir}/pkgconfig/*.pc