pepper: option for enabling wl_display_add_socket_fd() 12/53612/1
authorTaekyun Kim <tkq.kim@samsung.com>
Tue, 8 Dec 2015 06:34:46 +0000 (15:34 +0900)
committerTaekyun Kim <tkq.kim@samsung.com>
Tue, 8 Dec 2015 06:34:46 +0000 (15:34 +0900)
wl_display_add_socket_fd() is tizen specific. It is not supported by
other linux systems. So, disable it by default and enable for GBS
build only.

Change-Id: I295b7adcc4619dc630da1716aadfba1c53565ab2

configure.ac
packaging/pepper.spec
src/lib/pepper/compositor.c
src/lib/pepper/pepper-internal.h
src/lib/render/pixman-renderer.c

index 2fe64a5..8720fcb 100644 (file)
@@ -42,6 +42,16 @@ PEPPER_LIB="\$(top_srcdir)/src/lib/pepper/libpepper.la"
 
 AC_SUBST(PEPPER_REQUIRES)
 
+AC_ARG_ENABLE(socket_fd,
+              AC_HELP_STRING([--enable-socket-fd],
+                             [enable wl_display_add_socket_fd()]),
+              enable_socket_fd=$enableval,
+              enable_socket_fd=no)
+
+if test x$enable_socket_fd = xyes; then
+    AC_DEFINE([ENABLE_SOCKET_FD], [1], [Use wl_display_add_socket_fd])
+fi
+
 # pepper-libinput
 PEPPER_LIBINPUT_REQUIRES="libinput"
 PKG_CHECK_MODULES(PEPPER_LIBINPUT, [$PEPPER_LIBINPUT_REQUIRES])
index 4efabcb..67efaf1 100644 (file)
@@ -138,7 +138,7 @@ This package includes doctor server files.
 %setup -q
 
 %build
-%autogen --disable-x11
+%autogen --disable-x11 --enable-socket-fd=yes
 make %{?_smp_mflags}
 
 %install
index 4753577..e0ff296 100644 (file)
@@ -118,7 +118,11 @@ pepper_compositor_create_fd(const char *socket_name, int fd)
 
     if (socket_name)
     {
+#if ENABLE_SOCKET_FD
         ret = wl_display_add_socket_fd(compositor->display, socket_name, fd);
+#else
+        ret = wl_display_add_socket(compositor->display, socket_name);
+#endif
         PEPPER_CHECK(ret == 0, goto error, "wl_display_add_socket(name = %s) failed.\n", socket_name);
     }
     else
index 04e064c..ba8c6f6 100644 (file)
@@ -29,6 +29,7 @@
 #ifndef PEPPER_INTERNAL_H
 #define PEPPER_INTERNAL_H
 
+#include <config.h>
 #include "pepper.h"
 #include <wayland-util.h>
 #include <pixman.h>
index 5ae46c0..212cf82 100644 (file)
@@ -130,7 +130,9 @@ static void
 surface_state_begin_access(pixman_surface_state_t *state)
 {
     struct wl_shm_buffer *shm_buffer;
+#ifdef HAVE_TBM
     tbm_surface_h tbm_surface;
+#endif
 
     shm_buffer = wl_shm_buffer_get(pepper_buffer_get_resource(state->buffer));
     if (shm_buffer)
@@ -153,7 +155,9 @@ static void
 surface_state_end_access(pixman_surface_state_t *state)
 {
     struct wl_shm_buffer *shm_buffer;
+#ifdef HAVE_TBM
     tbm_surface_h tbm_surface;
+#endif
 
     shm_buffer = wl_shm_buffer_get(pepper_buffer_get_resource(state->buffer));
     if (shm_buffer)