Import systemd support patches from RSA
authorWilliam Douglas <william.douglas@intel.com>
Thu, 21 Jun 2012 19:07:02 +0000 (12:07 -0700)
committerŁukasz Stelmach <l.stelmach@samsung.com>
Thu, 15 Nov 2012 15:38:30 +0000 (16:38 +0100)
 - fix post section

Signed-off-by: William Douglas <william.douglas@intel.com>
 - add systemd unit files

Signed-off-by: William Douglas <william.douglas@intel.com>
 - Fix initscript symlinks

   [ Author: Patrick McCarty <patrick.mccarty@linux.intel.com> ]

Merged-and-mangled-by: Karol Lewandowski <k.lewandowsk@samsung.com>
Merged-and-mangled-by: Łukasz Stelmach <l.stelmach@samsung.com>
Conflicts:

packaging/alarm-manager.spec

packaging/alarm-manager.spec
packaging/alarm-server.service [new file with mode: 0644]

index de419b2..bce6ae9 100644 (file)
@@ -5,8 +5,13 @@ Release:    1
 Group:      System/Libraries
 License:    Apache License, Version 2.0
 Source0:    %{name}-%{version}.tar.gz
+Source101:  packaging/alarm-server.service
+
 Requires(post): /sbin/ldconfig
+Requires(post): /usr/bin/systemctl
 Requires(postun): /sbin/ldconfig
+Requires(postun): /usr/bin/systemctl
+Requires(preun): /usr/bin/systemctl
 
 BuildRequires: pkgconfig(dbus-1)
 BuildRequires: pkgconfig(glib-2.0)
@@ -54,9 +59,6 @@ Alarm server library (devel)
 %prep
 %setup -q
 
-# HACK_removed_dbus_glib_alarm_manager_object_info.diff
-#%patch0 -p1
-
 %build
 
 export LDFLAGS+=" -Wl,--rpath=%{_libdir} -Wl,--as-needed"
@@ -79,41 +81,55 @@ rm -rf %{buildroot}
 mkdir -p %{buildroot}/etc/init.d
 install -m 755 alarm-server_run %{buildroot}/etc/init.d
 
+mkdir -p %{buildroot}/%{_sysconfdir}/rc.d/rc3.d
+mkdir -p %{buildroot}/%{_sysconfdir}/rc.d/rc5.d
+ln -s ../init.d/alarm-server_run %{buildroot}/%{_sysconfdir}/rc.d/rc3.d/S80alarm-server
+ln -s ../init.d/alarm-server_run %{buildroot}/%{_sysconfdir}/rc.d/rc5.d/S80alarm-server
 
-%post -p /sbin/ldconfig
+install -d %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants
+install -m0644 %{SOURCE101} %{buildroot}%{_libdir}/systemd/system/
+ln -sf ../alarm-server.service %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants/alarm-server.service
 
-%postun -p /sbin/ldconfig
 
-%post -n alarm-server
+%preun
+if [ $1 == 0 ]; then
+    systemctl stop alarm-server.service
+fi
+
+%post
+/sbin/ldconfig
 
 heynotitool set setting_time_changed -a
 vconftool set -t int db/system/timechange 0 -i
-vconftool set -t int memory/system/timechanged 0 -i -g 5000
-
-chmod 755 /usr/bin/alarm-server
-chmod 755 /etc/init.d/alarm-server_run
+vconftool set -t int memory/system/timechanged 0 -i
 
-mkdir -p /etc/rc.d/rc3.d
-mkdir -p /etc/rc.d/rc5.d
-ln -s /etc/init.d/alarm-server_run /etc/rc.d/rc3.d/S80alarm-server
-ln -s /etc/init.d/alarm-server_run /etc/rc.d/rc5.d/S80alarm-server
-
-%post -n libalarm
-chmod 644 /usr/lib/libalarm.so.0.0.0
+systemctl daemon-reload
+if [ $1 == 1 ]; then
+    systemctl restart alarm-server.service
+fi
 
+%postun
+/sbin/ldconfig
+systemctl daemon-reload
+if [ "$1" == 1 ]; then
+    systemctl restart net-config.service
+fi
 
 %files -n alarm-server
 %manifest alarm-server.manifest
-%{_bindir}/*
-/etc/init.d/alarm-server_run
+%attr(0755,root,root) %{_bindir}/alarm-server
+%attr(0755,root,root) %{_sysconfdir}/init.d/alarm-server_run
+%attr(0755,root,root) %{_sysconfdir}/rc.d/rc3.d/S80alarm-server
+%attr(0755,root,root) %{_sysconfdir}/rc.d/rc5.d/S80alarm-server
+%{_libdir}/systemd/system/multi-user.target.wants/alarm-server.service
+%{_libdir}/systemd/system/alarm-server.service
 
 %files -n libalarm
 %manifest alarm-lib.manifest
-%{_libdir}/*.so.*
-
+%attr(0644,root,root) %{_libdir}/libalarm.so.0.0.0
+%{_libdir}/libalarm.so.0
 
 %files -n libalarm-devel
 %{_includedir}/*.h
 %{_libdir}/pkgconfig/*.pc
-%{_libdir}/*.so
-
+%{_libdir}/libalarm.so
diff --git a/packaging/alarm-server.service b/packaging/alarm-server.service
new file mode 100644 (file)
index 0000000..fd79712
--- /dev/null
@@ -0,0 +1,10 @@
+[Unit]
+Description=Start the Alarm service
+
+[Service]
+ExecStart=/usr/bin/alarm-server
+Nice=5
+OOMScoreAdjust=100
+
+[Install]
+WantedBy=multi-user.target