PKG_CHECK_MODULES(BUXTON2_DEPS REQUIRED buxton2)
PKG_CHECK_MODULES(DBUS_DEPS REQUIRED dbus-1)
PKG_CHECK_MODULES(DLOG_DEPS REQUIRED dlog)
-PKG_CHECK_MODULES(ECORE_DEPS REQUIRED ecore)
+PKG_CHECK_MODULES(DLOG_REDIRECT_STDOUT_DEPS REQUIRED dlog-redirect-stdout)
PKG_CHECK_MODULES(ECORE_CORE_DEPS REQUIRED ecore-core)
+PKG_CHECK_MODULES(ECORE_DEPS REQUIRED ecore)
PKG_CHECK_MODULES(ELEMENTARY_DEPS REQUIRED elementary)
PKG_CHECK_MODULES(GIO_DEPS REQUIRED gio-2.0)
PKG_CHECK_MODULES(INIPARSER_DEPS REQUIRED iniparser)
BuildRequires: pkgconfig(gio-2.0)
BuildRequires: pkgconfig(ecore)
BuildRequires: pkgconfig(dlog)
+BuildRequires: pkgconfig(dlog-redirect-stdout)
BuildRequires: pkgconfig(libsystemd)
BuildRequires: pkgconfig(elementary)
BuildRequires: pkgconfig(vconf)
#include <sys/prctl.h>
#include <dbus/dbus.h>
#include <vconf.h>
+#include <dlog-redirect-stdout.h>
#include "launchpad_common.h"
#include "launchpad_types.h"
static int __redirect_stdout(const char *ident)
{
+ char buf[512];
int ret;
int fd;
+ setbuf(stdout, NULL);
+ snprintf(buf, sizeof(buf), "STDOUT_%s", ident);
+ ret = connect_dlog(LOG_ID_MAIN, STDOUT_FILENO, buf, DLOG_INFO);
+ if (ret != 0)
+ _W("connect_dlog() is failed. error(%d)", ret);
+ else
+ return 0;
+
fd = sd_journal_stream_fd(ident, LOG_INFO, 0);
if (fd < 0) {
if (fd != -ENOENT)
static int __redirect_stderr(const char *ident)
{
+ char buf[512];
int ret;
int fd;
+ setbuf(stderr, NULL);
+ snprintf(buf, sizeof(buf), "STDERR_%s", ident);
+ ret = connect_dlog(LOG_ID_MAIN, STDERR_FILENO, buf, DLOG_WARN);
+ if (ret != 0)
+ _W("connect_dlog() is failed. error(%d)", ret);
+ else
+ return 0;
+
fd = sd_journal_stream_fd(ident, LOG_WARNING, 0);
if (fd < 0) {
if (fd != -ENOENT)
close(fd);
return ret;
-
}
int _setup_stdio(const char *ident)