%description -n sensor-test
Sensor functional testing
+%package -n sensor-unified-system-plugin
+Summary: Package for unified-system-plugin plugin
+
+%description -n sensor-unified-system-plugin
+Package for unified-system-service plugin
+
%isu_package
%prep
%files -n sensor-test
%{_bindir}/sensorctl
+%files -n sensor-unified-system-plugin
+%manifest packaging/sensord.manifest
+%{_libdir}/libunified-system-service-sensord.so
+%license LICENSE.APLv2
+
# Dummy packages for Tizen 3.0.
# When building other packages on Tizen 3.0, after building sensord first,
CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
PROJECT(sensord CXX)
-SET(DEPENDENTS "glib-2.0 gio-2.0 dlog libsystemd cynara-client cynara-creds-socket cynara-session vconf hal-api-sensor hal-api-common")
+SET(DEPENDENTS
+ glib-2.0
+ gio-2.0
+ dlog
+ libsystemd
+ cynara-client
+ cynara-creds-socket
+ cynara-session
+ vconf
+ hal-api-sensor
+ hal-api-common
+)
INCLUDE(FindPkgConfig)
PKG_CHECK_MODULES(SERVER_PKGS REQUIRED ${DEPENDENTS})
SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES LINKER_LANGUAGE CXX)
TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${SERVER_PKGS_LDFLAGS} ${CMAKE_DL_LIBS} "sensord-shared")
INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_BINDIR})
+
+SET(LIBRARY_NAME "unified-system-service-sensord")
+ADD_LIBRARY(${LIBRARY_NAME} SHARED ${SERVER_SRCS})
+TARGET_LINK_LIBRARIES(${LIBRARY_NAME} ${SERVER_PKGS_LDFLAGS} ${CMAKE_DL_LIBS} "sensord-shared")
+INSTALL(TARGETS ${LIBRARY_NAME} DESTINATION ${LIB_INSTALL_DIR} COMPONENT RuntimeLibraries)
#include <glib-unix.h>
+#include <unified-system-service-common.h>
#include <sensor_log.h>
#include "server.h"
raise(SIGTERM);
}
-static gboolean handle_signal(gpointer data)
-{
- long signum = (long) data;
- _W("Received SIGNAL(%ld : %s)", signum, strsignal(signum));
-
- server::stop();
-
- return G_SOURCE_REMOVE;
-}
-
static void on_new_failed(void)
{
static unsigned fail_count = 0;
}
}
+static int sensord_init(void *data)
+{
+ _I("start sensord");
+
+ std::set_new_handler(on_new_failed);
+
+ server::run();
+
+ return 0;
+}
+
+static int sensord_exit(void *data)
+{
+ server::stop();
+
+ _I("sensord stopped");
+
+ return 0;
+}
+
+static gboolean handle_signal(gpointer data)
+{
+ long signum = (long) data;
+ _W("Received SIGNAL(%ld : %s)", signum, strsignal(signum));
+
+ sensord_exit(NULL);
+
+ return G_SOURCE_REMOVE;
+}
+
int main(int argc, char *argv[])
{
_I("Started");
std::signal(SIGCHLD, SIG_IGN);
std::signal(SIGPIPE, SIG_IGN);
- std::set_new_handler(on_new_failed);
-
- server::run();
+ sensord_init(NULL);
_I("Stopped");
return 0;
}
+
+__attribute__((visibility("default")))
+unified_system_service unified_system_service_sensord_data = {
+ .name = "unified-system-service-sensord-data",
+ .early_init = NULL,
+ .init = sensord_init,
+ .exit = sensord_exit,
+ .late_exit = NULL,
+};