This is an automated email from the git hooks/post-receive script.

git pushed a commit to branch dev/dimmus/test
in repository efl.

View the commit online.

commit edf24a345979313d24bd53aa4d8c644bc26ddb7b
Author: dimmus <dmitri.chudi...@gmail.com>
AuthorDate: Mon Oct 21 12:22:03 2024 +0500

    ecore: wl2 - we have exynos default support only in embedded drm lib. So solve situation with external libdrm usage.
---
 src/lib/ecore_wl2/ecore_wl2_buffer.c | 12 ++++++++++--
 src/lib/ecore_wl2/meson.build        | 12 +++++++++++-
 2 files changed, 21 insertions(+), 3 deletions(-)

diff --git a/src/lib/ecore_wl2/ecore_wl2_buffer.c b/src/lib/ecore_wl2/ecore_wl2_buffer.c
index 386eff294f..8744971d48 100644
--- a/src/lib/ecore_wl2/ecore_wl2_buffer.c
+++ b/src/lib/ecore_wl2/ecore_wl2_buffer.c
@@ -12,8 +12,10 @@
 #include <intel_bufmgr.h>
 #include <i915_drm.h>
 #include <vc4_drm.h>
-#include <exynos_drm.h>
-#include <exynos_drmif.h>
+#ifdef EMBEDDED_DRM
+# include <exynos_drm.h>
+# include <exynos_drmif.h>
+#endif
 #include <sys/mman.h>
 #include <sys/ioctl.h>
 
@@ -78,11 +80,13 @@ static void (*sym_drm_intel_bo_unreference)(drm_intel_bo *bo) = NULL;
 static int (*sym_drmPrimeHandleToFD)(int fd, uint32_t handle, uint32_t flags, int *prime_fd) = NULL;
 static void (*sym_drm_intel_bufmgr_destroy)(drm_intel_bufmgr *) = NULL;
 
+#ifdef EMBEDDED_DRM
 static struct exynos_device *(*sym_exynos_device_create)(int fd) = NULL;
 static struct exynos_bo *(*sym_exynos_bo_create)(struct exynos_device *dev, size_t size, uint32_t flags) = NULL;
 static void *(*sym_exynos_bo_map)(struct exynos_bo *bo) = NULL;
 static void (*sym_exynos_bo_destroy)(struct exynos_bo *bo) = NULL;
 static void (*sym_exynos_device_destroy)(struct exynos_device *) = NULL;
+#endif
 
 static void
 buffer_release(void *data, struct wl_buffer *buffer EINA_UNUSED)
@@ -256,6 +260,7 @@ err:
    return EINA_FALSE;
 }
 
+#ifdef EMBEDDED_DRM
 static Buffer_Handle *
 _exynos_alloc(Buffer_Manager *self, const char *name EINA_UNUSED, int w, int h, unsigned long *stride, int32_t *fd)
 {
@@ -362,6 +367,7 @@ err:
    dlclose(drm_exynos_lib);
    return EINA_FALSE;
 }
+#endif
 
 static Buffer_Handle *
 _wl_shm_alloc(Buffer_Manager *self EINA_UNUSED, const char *name EINA_UNUSED, int w, int h, unsigned long *stride, int32_t *fd)
@@ -622,7 +628,9 @@ ecore_wl2_buffer_init(Ecore_Wl2_Display *ewd, Ecore_Wl2_Buffer_Type types)
           }
 
         success = _intel_buffer_manager_setup(fd);
+#ifdef EMBEDDED_DRM        
         if (!success) success = _exynos_buffer_manager_setup(fd);
+#endif
         if (!success) success = _vc4_buffer_manager_setup(fd);
      }
 fallback_shm:
diff --git a/src/lib/ecore_wl2/meson.build b/src/lib/ecore_wl2/meson.build
index 918d090e9b..cfbf21395c 100644
--- a/src/lib/ecore_wl2/meson.build
+++ b/src/lib/ecore_wl2/meson.build
@@ -7,6 +7,10 @@ ecore_wl2_header_src = [
   'Ecore_Wl2.h'
 ]
 
+if WITH_EMBEDDED_DRM
+  config_h.set('EMBEDDED_DRM', '1') # added default samsung's exynos support
+endif
+
 ecore_wl2_src = files(
   'ecore_wl2_internal.h',
   'ecore_wl2_subsurf.c',
@@ -39,7 +43,13 @@ ecore_wl2 = declare_dependency(
 
 ecore_wl2_internal_headers = declare_dependency(
   include_directories: include_directories('.'),
-  dependencies: [wayland_protocol_simple, libdrm, dependency('wayland-client'), dependency('wayland-server'), dependency('xkbcommon'),],
+  dependencies: [
+    wayland_protocol_simple,
+    libdrm,
+    dependency('wayland-client'),
+    dependency('wayland-server'),
+    dependency('xkbcommon'),
+  ],
 )
 
 install_headers(ecore_wl2_header_src,

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.

Reply via email to