Name: alarm-manager Summary: Alarm library Version: 0.10.1 Release: 1 Group: System/Libraries License: Apache-2.0 Source0: %{name}-%{version}.tar.gz Source1: alarm-server.service Source2: alarm-session-agent.service Source3: alarm-session-agent.socket Source4: alarm-manager.conf Source5: 99-rtc.rules Source1001: alarm-server.manifest Source1002: alarm-lib.manifest Requires(post): /sbin/ldconfig Requires(postun): /sbin/ldconfig BuildRequires: cmake BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(dlog) BuildRequires: pkgconfig(aul) BuildRequires: pkgconfig(bundle) BuildRequires: pkgconfig(sqlite3) BuildRequires: pkgconfig(vconf) BuildRequires: pkgconfig(appsvc) BuildRequires: pkgconfig(pkgmgr-info) BuildRequires: pkgconfig(pkgmgr) BuildRequires: pkgconfig(gio-2.0) BuildRequires: pkgconfig(gio-unix-2.0) BuildRequires: pkgconfig(capi-system-device) BuildRequires: pkgconfig(libtzplatform-config) BuildRequires: pkgconfig(libsystemd) BuildRequires: pkgconfig(eventsystem) BuildRequires: pkgconfig(notification) BuildRequires: python-xml BuildRequires: pkgconfig(capi-system-info) BuildRequires: pkgconfig(cert-svc-vcore) BuildRequires: pkgconfig(cynara-client) BuildRequires: pkgconfig(cynara-session) BuildRequires: pkgconfig(cynara-creds-gdbus) %if 0%{?gcov:1} BuildRequires: lcov BuildRequires: zip %endif %define gtests 0 %if 0%{?gtests:1} BuildRequires: pkgconfig(gmock) %endif Requires(post): /sbin/ldconfig Requires(postun): /sbin/ldconfig %define logdir /var/log/appfw/alarmmgr_log %description Alarm Server and devel libraries %package -n alarm-server Summary: Alarm server Group: Development/Libraries %description -n alarm-server Alarm Server, manages alarms %package -n libalarm Summary: Alarm server libraries Group: Development/Libraries Requires: alarm-server = %{version}-%{release} %description -n libalarm Alarm server libraries for client %package -n libalarm-devel Summary: Alarm server libraries (devel) Group: Development/Libraries Requires: libalarm = %{version}-%{release} %description -n libalarm-devel Alarm server libraries development package (devel) %package -n alarm-config-all-service-permitted Summary: Configuration for permitting all service applications Group: Development/Libraries Requires: libalarm = %{version}-%{release} %description -n alarm-config-all-service-permitted A configuration file package for permitting all service applications %package -n alarm-config-platform-service-permitted Summary: Configuration for permitting platform service applications Group: Development/Libraries Requires: libalarm = %{version}-%{release} %description -n alarm-config-platform-service-permitted A configuration file package for permitting all service applications that have been platform certified %package -n alarm-config-service-restricted Summary: Configuration for restricting service applications Group: Development/Libraries Requires: libalarm = %{version}-%{release} %description -n alarm-config-service-restricted A configuration file package for restricting service applications ################################################# # unittests ################################################# %package unittests Summary: GTest for alarm manager library Group: Development/Libraries Requires: %{name} %description unittests GTest for alarm-manager library ################################################# # gcov ################################################# %if 0%{?gcov:1} %package gcov Summary: Alarm library (gcov) Group: Application Framework/Testing %description gcov Alarm library gcov objects %endif %prep %setup -q cp %{SOURCE1001} ./ cp %{SOURCE1002} ./ %build %if 0%{?gcov:1} export CFLAGS+=" -fprofile-arcs -ftest-coverage" export CXXFLAGS+=" -fprofile-arcs -ftest-coverage" export FFLAGS+=" -fprofile-arcs -ftest-coverage" export LDFLAGS+=" -lgcov" %endif MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'` %define appfw_feature_alarm_manager_module_log 1 %if 0%{?appfw_feature_alarm_manager_module_log} _APPFW_FEATURE_ALARM_MANAGER_MODULE_LOG=ON %endif %cmake . -DOBS=1 \ -DFULLVER=%{version} -DMAJORVER=${MAJORVER} \ -DBIN_INSTALL_DIR:PATH=%{_bindir} \ -DTZ_SYS_ETC=%{TZ_SYS_ETC} \ -D_APPFW_FEATURE_ALARM_MANAGER_MODULE_LOG:BOOL=${_APPFW_FEATURE_ALARM_MANAGER_MODULE_LOG} \ -DALARM_CONF_DIR=%{_datadir}/alarm-manager \ -DBUILD_GTESTS=%{?gtests:1}%{!?gtests:0} \ make %{?jobs:-j%jobs} %if 0%{?gcov:1} mkdir -p gcov-obj find . -name '*.gcno' -exec cp '{}' gcov-obj ';' %endif %install rm -rf %{buildroot} %make_install mkdir -p %{buildroot}%{_unitdir}/multi-user.target.wants mkdir -p %{buildroot}%{_unitdir_user}/sockets.target.wants install -m 0644 %SOURCE1 %{buildroot}%{_unitdir}/alarm-server.service install -m 0644 %SOURCE2 %{buildroot}%{_unitdir_user}/alarm-session-agent.service install -m 0644 %SOURCE3 %{buildroot}%{_unitdir_user}/alarm-session-agent.socket ln -s ../alarm-server.service %{buildroot}%{_unitdir}/multi-user.target.wants/alarm-server.service ln -sf ../alarm-session-agent.socket %{buildroot}%{_unitdir_user}/sockets.target.wants/alarm-session-agent.socket mkdir -p %{buildroot}%{_tmpfilesdir} install -m 0644 %SOURCE4 %{buildroot}%{_tmpfilesdir}/alarm-manager.conf mkdir -p %{buildroot}%{_libdir}/udev/rules.d install -m 0644 %SOURCE5 %{buildroot}%{_libdir}/udev/rules.d mkdir -p %{buildroot}%{logdir} %if 0%{?gcov:1} mkdir -p %{buildroot}%{_datadir}/gcov/obj install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj %endif %check (cd unittest && LD_LIBRARY_PATH=../lib ctest -V) %if 0%{?gcov:1} lcov -c --ignore-errors graph --no-external -q -d . -o alarm-manager.info genhtml alarm-manager.info -o alarm-manager.out zip -r alarm-manager.zip alarm-manager.out install -m 0644 alarm-manager.zip %{buildroot}%{_datadir}/gcov/ %endif %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %post -n alarm-server %post -n libalarm /sbin/ldconfig %postun -n libalarm /sbin/ldconfig %posttrans -n alarm-server if [ -e /etc/config/model-config.xml ]; then grep "feature\/profile.*tv" /etc/config/model-config.xml > /dev/null if [ $? -eq 0 ]; then rm %{_libdir}/udev/rules.d/99-rtc.rules fi fi %files -n alarm-server %manifest alarm-server.manifest %{_bindir}/alarm* %attr(0644,root,root) %{_unitdir}/alarm-server.service %{_unitdir}/multi-user.target.wants/alarm-server.service %{_unitdir_user}/alarm-session-agent.service %{_unitdir_user}/alarm-session-agent.socket %{_unitdir_user}/sockets.target.wants/alarm-session-agent.socket %attr(0644,root,root) %{_datadir}/dbus-1/system-services/org.tizen.alarm.manager.service %license LICENSE %config %{_sysconfdir}/dbus-1/system.d/alarm-service.conf %{_tmpfilesdir}/alarm-manager.conf %{_libdir}/udev/rules.d/99-rtc.rules %if 0%{?appfw_feature_alarm_manager_module_log} %attr(0755,root,root) %{TZ_SYS_ETC}/dump.d/module.d/alarmmgr_log_dump.sh %attr(0755,app_fw,app_fw) %{logdir} %endif %files -n libalarm %manifest alarm-lib.manifest %{_libdir}/libalarm.so.* %license LICENSE %files -n libalarm-devel %{_includedir}/*.h %{_libdir}/pkgconfig/*.pc %{_libdir}/*.so %files -n alarm-config-all-service-permitted %{_datadir}/alarm-manager/alarm-config-all-service-permitted %files -n alarm-config-platform-service-permitted %{_datadir}/alarm-manager/alarm-config-platform-service-permitted %files -n alarm-config-service-restricted %{_datadir}/alarm-manager/alarm-config-service-restricted #%if 0%{?gtests:1} #%files unittests #%{_bindir}/gtest* #%endif ################################################# # gcov ################################################# %if 0%{?gcov:1} %files gcov %{_datadir}/gcov/* %endif