[gentoo-commits] gentoo-x86 commit in dev-libs/efl/files: efl-1.12.2-lauch_via_logind_or_root_privilege.patch

2014-12-28 Thread Thomas Sachau (tommy)
tommy   14/12/28 09:43:36

  Added:efl-1.12.2-lauch_via_logind_or_root_privilege.patch
  Log:
  Add missing patch
  
  (Portage version: 2.2.15/cvs/Linux x86_64, signed Manifest commit with key 
0x35899067)

Revision  ChangesPath
1.1  
dev-libs/efl/files/efl-1.12.2-lauch_via_logind_or_root_privilege.patch

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-libs/efl/files/efl-1.12.2-lauch_via_logind_or_root_privilege.patch?rev=1.1view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-libs/efl/files/efl-1.12.2-lauch_via_logind_or_root_privilege.patch?rev=1.1content-type=text/plain

Index: efl-1.12.2-lauch_via_logind_or_root_privilege.patch
===
From b10ab1a86f35ab793ba6efb49224d9ecdd1b7dbd Mon Sep 17 00:00:00 2001
From: Seunghun Lee shiin@samsung.com
Date: Tue, 9 Dec 2014 09:36:42 -0500
Subject: ecore-drm: added drm launcher that is allow to determine whether to
 launch with logind or root privilege.

Summary:
- allow to launch drm backend without systemd-logind with root privilege.
- allow to open drm device node via logind, not directly open it, in case exist 
systemd-logind.
- fixes issue that couldn't switch session, because ecore-drm couldn't drop 
master to drm device with no permission. (allow to switch session appropriate.)

Reviewers: gwanglim, devilhorns

Subscribers: torori, cedric

Differential Revision: https://phab.enlightenment.org/D1704

diff --git a/configure.ac b/configure.ac
index e09213d..5911192 100644
--- a/configure.ac
+++ b/configure.ac
@@ -673,13 +673,18 @@ fi
 AM_CONDITIONAL([HAVE_SYSTEMD_USER_SESSION], [test 
x${have_systemd_user_session} = xyes])
 AC_SUBST([USER_SESSION_DIR])
 
-
 if test x${have_systemd_pkg} = xauto -o x${have_systemd_pkg} = xyes; 
then
PKG_CHECK_MODULES([SYSTEMD], [libsystemd-daemon = 192 libsystemd-journal 
= 192],
[have_systemd_pkg=yes],
[have_systemd_pkg=no])
 fi
 
+PKG_CHECK_MODULES(SYSTEMD_LOGIN, [libsystemd-login = 198],
+  [have_systemd_login=yes], [have_systemd_login=no])
+AS_IF([test x$have_systemd_login = xyes],
+  [AC_DEFINE([HAVE_SYSTEMD_LOGIN], [1], [Have systemd-login])])
+AM_CONDITIONAL(HAVE_SYSTEMD_LOGIN, test x$have_systemd_login = xyes)
+
 # check for systemd library if requested
 if test x${want_systemd} = xyes -a x${have_systemd_pkg} = xno; then
AC_MSG_ERROR([Systemd dependencie requested but not found])
@@ -3072,7 +3077,7 @@ EFL_INTERNAL_DEPEND_PKG([ECORE_DRM], [eeze])
 EFL_INTERNAL_DEPEND_PKG([ECORE_DRM], [eo])
 EFL_INTERNAL_DEPEND_PKG([ECORE_DRM], [eina])
 
-EFL_DEPEND_PKG([ECORE_DRM], [DRM], [libdrm = 2.4 xkbcommon = 0.3.0 
libsystemd-login = 192 gbm])
+EFL_DEPEND_PKG([ECORE_DRM], [DRM], [libdrm = 2.4 xkbcommon = 0.3.0 gbm])
 
 EFL_EVAL_PKGS([ECORE_DRM])
 
diff --git a/src/Makefile_Ecore_Drm.am b/src/Makefile_Ecore_Drm.am
index 8867f37..b558277 100644
--- a/src/Makefile_Ecore_Drm.am
+++ b/src/Makefile_Ecore_Drm.am
@@ -16,10 +16,17 @@ lib/ecore_drm/ecore_drm_inputs.c \
 lib/ecore_drm/ecore_drm_output.c \
 lib/ecore_drm/ecore_drm_tty.c \
 lib/ecore_drm/ecore_drm_device.c \
-lib/ecore_drm/ecore_drm_dbus.c \
+lib/ecore_drm/ecore_drm_launcher.c \
 lib/ecore_drm/ecore_drm.c \
+lib/ecore_drm/ecore_drm_logind.h \
 lib/ecore_drm/ecore_drm_private.h
 
+if HAVE_SYSTEMD_LOGIN
+lib_ecore_drm_libecore_drm_la_SOURCES += \
+lib/ecore_drm/ecore_drm_logind.c \
+lib/ecore_drm/ecore_drm_dbus.c
+endif
+
 lib_ecore_drm_libecore_drm_la_CPPFLAGS = \
   -I$(top_builddir)/src/lib/efl \
   @ECORE_DRM_CFLAGS@ \
diff --git a/src/lib/ecore_drm/Ecore_Drm.h b/src/lib/ecore_drm/Ecore_Drm.h
index 80efaf5..3238a20 100644
--- a/src/lib/ecore_drm/Ecore_Drm.h
+++ b/src/lib/ecore_drm/Ecore_Drm.h
@@ -194,4 +194,6 @@ EAPI Eina_Bool 
ecore_drm_sprites_crtc_supported(Ecore_Drm_Output *output, unsign
 EAPI Ecore_Drm_Fb *ecore_drm_fb_create(Ecore_Drm_Device *dev, int width, int 
height);
 EAPI void ecore_drm_fb_destroy(Ecore_Drm_Fb *fb);
 
+EAPI Eina_Bool ecore_drm_launcher_connect(Ecore_Drm_Device *dev);
+EAPI void ecore_drm_launcher_disconnect(Ecore_Drm_Device *dev);
 #endif
diff --git a/src/lib/ecore_drm/ecore_drm.c b/src/lib/ecore_drm/ecore_drm.c
index c341c19..6413270 100644
--- a/src/lib/ecore_drm/ecore_drm.c
+++ b/src/lib/ecore_drm/ecore_drm.c
@@ -6,7 +6,6 @@
 
 /* local variables */
 static int _ecore_drm_init_count = 0;
-static char *sid;
 
 /* external variables */
 int _ecore_drm_log_dom = -1;
@@ -65,12 +64,6 @@ ecore_drm_init(void)
if (!eina_log_domain_level_check(_ecore_drm_log_dom, EINA_LOG_LEVEL_DBG))
  eina_log_domain_level_set(ecore_drm, EINA_LOG_LEVEL_DBG);
 
-   /* get sd-login properties we need */
-   if (sd_pid_get_session(getpid(), sid)  0) goto sd_err;
-
-   /* try to init dbus */
-   if (!_ecore_drm_dbus_init(sid)) goto dbus_err;
-
/* try to init eeze */
if (!eeze_init()) goto eeze_err;
 
@@ -78,10 +71,6 @@ ecore_drm_init(void)
return _ecore_drm_init_count;
 
 eeze_err:
- 

[gentoo-commits] gentoo-x86 commit in dev-libs/efl/files: efl-1.12.2-lauch_via_logind_or_root_privilege.patch

2014-12-28 Thread Thomas Sachau (tommy)
tommy   14/12/28 14:28:23

  Removed:  efl-1.12.2-lauch_via_logind_or_root_privilege.patch
  Log:
  Move patch to distfiles mirrors
  
  (Portage version: 2.2.15/cvs/Linux x86_64, signed Manifest commit with key 
0x35899067)