5 Group: System/Libraries
7 Source0: %{name}-%{version}.tar.gz
8 Source1: alarm-server.service
9 Source2: alarm-session-agent.service
10 Source3: alarm-session-agent.socket
11 Source4: alarm-manager.conf
13 Source1001: alarm-server.manifest
14 Source1002: alarm-lib.manifest
15 Requires(post): /sbin/ldconfig
16 Requires(postun): /sbin/ldconfig
19 BuildRequires: pkgconfig(glib-2.0)
20 BuildRequires: pkgconfig(dlog)
21 BuildRequires: pkgconfig(aul)
22 BuildRequires: pkgconfig(bundle)
23 BuildRequires: pkgconfig(sqlite3)
24 BuildRequires: pkgconfig(vconf)
25 BuildRequires: pkgconfig(appsvc)
26 BuildRequires: pkgconfig(pkgmgr-info)
27 BuildRequires: pkgconfig(pkgmgr)
28 BuildRequires: pkgconfig(gio-2.0)
29 BuildRequires: pkgconfig(gio-unix-2.0)
30 BuildRequires: pkgconfig(capi-system-device)
31 BuildRequires: pkgconfig(libtzplatform-config)
32 BuildRequires: pkgconfig(libsystemd)
33 BuildRequires: pkgconfig(eventsystem)
34 BuildRequires: pkgconfig(notification)
35 BuildRequires: python-xml
36 BuildRequires: pkgconfig(capi-system-info)
37 BuildRequires: pkgconfig(cert-svc-vcore)
38 BuildRequires: pkgconfig(cynara-client)
39 BuildRequires: pkgconfig(cynara-session)
40 BuildRequires: pkgconfig(cynara-creds-gdbus)
48 BuildRequires: pkgconfig(gmock)
50 Requires(post): /sbin/ldconfig
51 Requires(postun): /sbin/ldconfig
53 %define logdir /var/log/appfw/alarmmgr_log
56 Alarm Server and devel libraries
59 %package -n alarm-server
61 Group: Development/Libraries
63 %description -n alarm-server
64 Alarm Server, manages alarms
68 Summary: Alarm server libraries
69 Group: Development/Libraries
70 Requires: alarm-server = %{version}-%{release}
72 %description -n libalarm
73 Alarm server libraries for client
76 %package -n libalarm-devel
77 Summary: Alarm server libraries (devel)
78 Group: Development/Libraries
79 Requires: libalarm = %{version}-%{release}
81 %description -n libalarm-devel
82 Alarm server libraries development package (devel)
85 %package -n alarm-config-all-service-permitted
86 Summary: Configuration for permitting all service applications
87 Group: Development/Libraries
88 Requires: libalarm = %{version}-%{release}
90 %description -n alarm-config-all-service-permitted
91 A configuration file package for permitting all service applications
94 %package -n alarm-config-platform-service-permitted
95 Summary: Configuration for permitting platform service applications
96 Group: Development/Libraries
97 Requires: libalarm = %{version}-%{release}
99 %description -n alarm-config-platform-service-permitted
100 A configuration file package for permitting all service applications that have been platform certified
103 %package -n alarm-config-service-restricted
104 Summary: Configuration for restricting service applications
105 Group: Development/Libraries
106 Requires: libalarm = %{version}-%{release}
108 %description -n alarm-config-service-restricted
109 A configuration file package for restricting service applications
111 #################################################
113 #################################################
115 Summary: GTest for alarm manager library
116 Group: Development/Libraries
119 %description unittests
120 GTest for alarm-manager library
123 #################################################
125 #################################################
128 Summary: Alarm library (gcov)
129 Group: Application Framework/Testing
132 Alarm library gcov objects
143 export CFLAGS+=" -fprofile-arcs -ftest-coverage"
144 export CXXFLAGS+=" -fprofile-arcs -ftest-coverage"
145 export FFLAGS+=" -fprofile-arcs -ftest-coverage"
146 export LDFLAGS+=" -lgcov"
149 MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
151 %define appfw_feature_alarm_manager_module_log 1
152 %if 0%{?appfw_feature_alarm_manager_module_log}
153 _APPFW_FEATURE_ALARM_MANAGER_MODULE_LOG=ON
157 -DFULLVER=%{version} -DMAJORVER=${MAJORVER} \
158 -DBIN_INSTALL_DIR:PATH=%{_bindir} \
159 -DTZ_SYS_ETC=%{TZ_SYS_ETC} \
160 -D_APPFW_FEATURE_ALARM_MANAGER_MODULE_LOG:BOOL=${_APPFW_FEATURE_ALARM_MANAGER_MODULE_LOG} \
161 -DALARM_CONF_DIR=%{_datadir}/alarm-manager \
162 -DBUILD_GTESTS=%{?gtests:1}%{!?gtests:0} \
163 -DBUILD_GCOV=%{?gcov:1}%{!?gcov:0} \
165 make %{?jobs:-j%jobs}
169 find . -name '*.gcno' -exec cp '{}' gcov-obj ';'
176 mkdir -p %{buildroot}%{_unitdir}/multi-user.target.wants
177 mkdir -p %{buildroot}%{_unitdir_user}/sockets.target.wants
178 install -m 0644 %SOURCE1 %{buildroot}%{_unitdir}/alarm-server.service
179 install -m 0644 %SOURCE2 %{buildroot}%{_unitdir_user}/alarm-session-agent.service
180 install -m 0644 %SOURCE3 %{buildroot}%{_unitdir_user}/alarm-session-agent.socket
181 ln -s ../alarm-server.service %{buildroot}%{_unitdir}/multi-user.target.wants/alarm-server.service
182 ln -sf ../alarm-session-agent.socket %{buildroot}%{_unitdir_user}/sockets.target.wants/alarm-session-agent.socket
183 mkdir -p %{buildroot}%{_tmpfilesdir}
184 install -m 0644 %SOURCE4 %{buildroot}%{_tmpfilesdir}/alarm-manager.conf
185 mkdir -p %{buildroot}%{_libdir}/udev/rules.d
186 install -m 0644 %SOURCE5 %{buildroot}%{_libdir}/udev/rules.d
187 mkdir -p %{buildroot}%{logdir}
190 mkdir -p %{buildroot}%{_datadir}/gcov/obj
191 install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj
195 (cd unittest && LD_LIBRARY_PATH=../lib ctest -V)
197 lcov -c --ignore-errors graph --no-external -q -d . -o alarm-manager.info
198 genhtml alarm-manager.info -o alarm-manager.out
199 zip -r alarm-manager.zip alarm-manager.out
200 install -m 0644 alarm-manager.zip %{buildroot}%{_datadir}/gcov/
203 %post -p /sbin/ldconfig
205 %postun -p /sbin/ldconfig
207 %post -n alarm-server
215 %posttrans -n alarm-server
216 if [ -e /etc/config/model-config.xml ]; then
217 grep "feature\/profile.*tv" /etc/config/model-config.xml > /dev/null
218 if [ $? -eq 0 ]; then
219 rm %{_libdir}/udev/rules.d/99-rtc.rules
223 %files -n alarm-server
224 %manifest alarm-server.manifest
226 %attr(0644,root,root) %{_unitdir}/alarm-server.service
227 %{_unitdir}/multi-user.target.wants/alarm-server.service
228 %{_unitdir_user}/alarm-session-agent.service
229 %{_unitdir_user}/alarm-session-agent.socket
230 %{_unitdir_user}/sockets.target.wants/alarm-session-agent.socket
231 %attr(0644,root,root) %{_datadir}/dbus-1/system-services/org.tizen.alarm.manager.service
233 %config %{_sysconfdir}/dbus-1/system.d/alarm-service.conf
234 %{_tmpfilesdir}/alarm-manager.conf
235 %{_libdir}/udev/rules.d/99-rtc.rules
236 %if 0%{?appfw_feature_alarm_manager_module_log}
237 %attr(0755,root,root) %{TZ_SYS_ETC}/dump.d/module.d/alarmmgr_log_dump.sh
238 %attr(0755,app_fw,app_fw) %{logdir}
242 %manifest alarm-lib.manifest
243 %{_libdir}/libalarm.so.*
246 %files -n libalarm-devel
248 %{_libdir}/pkgconfig/*.pc
251 %files -n alarm-config-all-service-permitted
252 %{_datadir}/alarm-manager/alarm-config-all-service-permitted
254 %files -n alarm-config-platform-service-permitted
255 %{_datadir}/alarm-manager/alarm-config-platform-service-permitted
257 %files -n alarm-config-service-restricted
258 %{_datadir}/alarm-manager/alarm-config-service-restricted
265 #################################################
267 #################################################