Buildroot Archive on 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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox