All of lore.kernel.org
 help / color / mirror / Atom feed
From: pierre <devpfl@gmail.com>
To: buildroot@busybox.net
Subject: [Buildroot] [v3, 2/2] package/efl: add Evas GL DRM Engine support
Date: Mon, 21 Nov 2016 00:29:21 +0100	[thread overview]
Message-ID: <61cdc8ed-e5a0-e295-c625-eb2619a0244e@gmail.com> (raw)
In-Reply-To: <86f19677-dc1b-a546-c79d-ad5f08faf559@gmail.com>

Hi Romain,


On 11/20/2016 10:49 PM, Romain Naour wrote:
> Hi Pierre,
>
> Le 20/11/2016 ? 20:30, Romain Naour a ?crit :
>> Hi Pierre,
>>
>> Le 20/11/2016 ? 19:59, pierre floury a ?crit :
>>> From: Romain Naour <romain.naour@gmail.com>
>>>
>>> This support is required for Enlightenment wayland support [1].
>>>
>>> As stated in configure, Evas GL DRM Engine needs OpenGL ES with EGL and
>>> wayland (wayland-client >= 1.8.0)
>    ^^^^^^^
> :)
>
>>>
>>> [1] https://www.enlightenment.org/about-wayland
>>>
>>> Signed-off-by: Romain Naour <romain.naour@gmail.com>
>>> Signed-off-by: Pierre Floury <devpfl@gmail.com>
>>>
>>> ---
>>> v2: rename the option to BR2_PAKCAGE_EFL_GLES_DRM (ThomasP)
>>>     fix the help text (ThomasP)
>>> ---
>>> v3: rebase v2 on top of master
>>>     Signed-off-by: Pierre Floury <devpfl@gmail.com>
>>
>> As suggested by Thomas [1], enable gl-drm only if all dependencies are available
>> without using another Kconfig symbol (BR2_PAKCAGE_EFL_GLES_DRM)
>>
>> This series is ok for me :)
>
> Humm, I missed something in my initial patch... the Evas GL DRM doesn't build
> without Wayland package.
>
> From config.log:
> configure:42726: checking whether to enable OpenGL Drm rendering backend
> configure:42728: result: yes
> configure:42747: $PKG_CONFIG --exists --print-errors "egl ${gl_library} libdrm
> gbm wayland-client >= 1.11.0"
> Package wayland-client was not found in the pkg-config search path.
> Perhaps you should add the directory containing `wayland-client.pc'
> to the PKG_CONFIG_PATH environment variable
> Package 'wayland-client', required by 'world', not found
> configure:42750: $? = 1
> configure:42875: error: OpenGL Drm dependencies not found
>
> In a previous local version I added a dependency to wayland to elput support but
> I finally dropped it in the final patch submission. I forgot to add it for the
> GL DRM support.

you are right, I miss the wayland-client dependency..
But, I do not get why this is requested.. efl are running well without 
wayland, just with drm..

I've got an other error :

arm-linux-gnueabihf/bin/ld: cannot find -lGL
this is due to
configure.ac:2624:evas_engine_gl_common_libs="-lGL"

on my side, I replace "-lGL" with "" in configure.ac :

--- a/configure.ac
+++ b/configure.ac
@@ -2621,7 +2621,7 @@ evas_engine_gl_common_cflags=""
  if test "x${have_egl}" = "xyes"; then
     evas_engine_gl_common_libs="-lEGL"
  else
-   evas_engine_gl_common_libs="-lGL"
+   evas_engine_gl_common_libs=""
  fi

and regenerate configure.

What would be the best solution to fix that ? just add a patch on the 
configure file ? or patch theses 3 files :

configure               | 26 +++++++++++++-------------configure.ac 
       |  2 +-
m4/evas_check_engine.m4 | 12 ++++++------

>
> I guess we should re-add BR2_PAKCAGE_EFL_GLES_DRM to define the wayland,
> efl-drm, opengl-es dependencies otherwise gl-drm would be enabled by:
>
> ifeq ($(BR2_PACKAGE_WAYLAND)$(BR2_PACKAGE_EFL_OPENGLES)$(BR2_PACKAGE_EFL_DRM),yyy)
> EFL_CONF_OPTS += --enable-gl-drm
> else
> EFL_CONF_OPTS += --disable-gl-drm
> endif
>
> which is not really nice.
>
> I prefer:
>
> efl.mk:
> ifeq ($(BR2_PAKCAGE_EFL_GLES_DRM),y)
> EFL_CONF_OPTS += --enable-gl-drm
> else
> EFL_CONF_OPTS += --disable-gl-drm
> endif
>
> Config.in:
> config BR2_PAKCAGE_EFL_GLES_DRM
> 	bool "Evas GLES DRM Engine"
> 	depends on BR2_PACKAGE_EFL_DRM
> 	depends on BR2_PACKAGE_EFL_OPENGLES # OpenGL ES with EGL support only
> 	depends on BR2_PACKAGE_WAYLAND
> 	help
> 	  This option enable building support for the Evas DRM OpenGL ES
> 	  based engine.
>
> comment "Evas GL DRM Engine needs Evas DRM Engine, OpenGL ES w/ EGL, Wayland"
> 	depends on BR2_PACKAGE_EFL_DRM && !BR2_PACKAGE_EFL_OPENGLES && !BR2_PACKAGE_WAYLAND
>
>
> Thoughts ?

yes, for me it makes sens to explicitly separate 'gl_drm' and 'drm' 
engines, as efl do it on the report of configure :
Ecore_Evas......: yes (+extn +ews -fb +drm +gl-drm -psl1ght 
-opengl-cocoa -software-sdl -opengl-sdl -wayland-shm -wayland-egl 
-software-gdi -software-ddraw -software-x11 -opengl-x11)


>
> Best regards,
> Romain
>
>>
>> Best regards,
>> Romain
>>
>> [1] http://lists.busybox.net/pipermail/buildroot/2016-September/172422.html
>>> ---
>>>  package/efl/efl.mk | 6 ++++++
>>>  1 file changed, 6 insertions(+)
>>>
>>> diff --git a/package/efl/efl.mk b/package/efl/efl.mk
>>> index d6b2bf5..fdeea47 100644
>>> --- a/package/efl/efl.mk
>>> +++ b/package/efl/efl.mk
>>> @@ -199,6 +199,12 @@ else
>>>  EFL_CONF_OPTS += --disable-drm
>>>  endif
>>>
>>> +ifeq ($(BR2_PACKAGE_EFL_OPENGLES)$(BR2_PACKAGE_EFL_DRM),yy)
>>> +EFL_CONF_OPTS += --enable-gl-drm
>>> +else
>>> +EFL_CONF_OPTS += --disable-gl-drm
>>> +endif
>>> +
>>>  EFL_DEPENDENCIES += $(if $(BR2_PACKAGE_LIBXKBCOMMON),libxkbcommon)
>>>
>>>  # Loaders that need external dependencies needs to be --enable-XXX=yes
>>>
>>
>


Cheers,

Pierre

  reply	other threads:[~2016-11-20 23:29 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-20 18:59 [Buildroot] [v3,0/2] package/efl: enable libdrm support pierre floury
2016-11-20 18:59 ` [Buildroot] [v3,1/2] " pierre floury
2016-11-20 19:26   ` Romain Naour
2016-11-20 18:59 ` [Buildroot] [v3,2/2] package/efl: add Evas GL DRM Engine support pierre floury
2016-11-20 19:30   ` [Buildroot] [v3, 2/2] " Romain Naour
2016-11-20 21:49     ` Romain Naour
2016-11-20 23:29       ` pierre [this message]
2016-11-22 23:12         ` Romain Naour

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=61cdc8ed-e5a0-e295-c625-eb2619a0244e@gmail.com \
    --to=devpfl@gmail.com \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.