# Set required packages
INCLUDE(FindPkgConfig)
-pkg_check_modules(pkgs REQUIRED glib-2.0 gobject-2.0 tcore dlog)
+pkg_check_modules(pkgs REQUIRED glib-2.0 gobject-2.0 tcore dlog libsystemd-daemon)
FOREACH(flag ${pkgs_CFLAGS})
SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
INSTALL(TARGETS telephony-daemon
RUNTIME DESTINATION bin)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/resource/etc/rc.d/init.d/telephony-daemon DESTINATION /etc/rc.d/init.d/
- PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/resource/etc/rc.d/rc3.d/S30telephony-daemon DESTINATION /etc/rc.d/rc3.d/
- PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_WRITE WORLD_EXECUTE)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/resource/etc/rc.d/rc5.d/S30telephony-daemon DESTINATION /etc/rc.d/rc5.d/
- PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_WRITE WORLD_EXECUTE)
INSTALL(FILES ${CMAKE_SOURCE_DIR}/LICENSE DESTINATION /usr/share/license RENAME telephony-daemon)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/systemd/telephony.service DESTINATION /usr/lib/systemd/system)
<manifest>
- <request>
- <domain name="_"/>
- </request>
+ <assign>
+ <filesystem path="/usr/lib/systemd/system/telephony.service" label="_" exec_label="none" />
+ <filesystem path="/usr/lib/systemd/system/multi-user.target.wants/telephony.service" label="_" exec_label="none" />
+ </assign>
+ <request>
+ <domain name="_"/>
+ </request>
</manifest>
Name: telephony-daemon
Summary: Telephony daemon
-Version: 0.1.12
+Version: 0.1.13
Release: 2
Group: System/Telephony
License: Apache
Source0: %{name}-%{version}.tar.gz
-Source1: telephony.service
Source1001: telephony-daemon.manifest
BuildRequires: cmake
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(tcore)
BuildRequires: pkgconfig(dlog)
+BuildRequires: pkgconfig(libsystemd-daemon)
+Requires(post): sys-assert
+%{?systemd_requires}
%description
Description: Telephony daemon
%install
%make_install
mkdir -p %{buildroot}%{_prefix}/lib/systemd/system/multi-user.target.wants
-install -m 0644 %{SOURCE1} %{buildroot}%{_prefix}/lib/systemd/system/telephony.service
ln -s ../telephony.service %{buildroot}%{_prefix}/lib/systemd/system/multi-user.target.wants/telephony.service
mkdir -p %{buildroot}/usr/share/license
%manifest %{name}.manifest
%defattr(-,root,root,-)
%{_bindir}/telephony-daemon
-%{_sysconfdir}/rc.d/init.d/telephony-daemon
-%{_sysconfdir}/rc.d/rc3.d/S30telephony-daemon
-%{_sysconfdir}/rc.d/rc5.d/S30telephony-daemon
%{_prefix}/lib/systemd/system/telephony.service
%{_prefix}/lib/systemd/system/multi-user.target.wants/telephony.service
/usr/share/license/telephony-daemon
* limitations under the License.
*/
+#include <systemd/sd-daemon.h>
#include <stdio.h>
#include <string.h>
#include <pthread.h>
info("server mainloop start");
+ /* Notification to systemd */
+ sd_notify(0, "READY=1");
+
if (tcore_server_run(s) == FALSE) {
err("server_run failed.");
}
--- /dev/null
+[Unit]
+Description=Telephony daemon
+After=modem.service vconf-setup.service
+
+[Service]
+Type=notify
+ExecStart=/usr/bin/telephony-daemon
+
+[Install]
+WantedBy=multi-user.target